Snippet d'un vieux Linux Mag (HS n° 28) ne fonctionne pas (s'appuie sur cat source > fichier)
Bonsoir,
j'ai trouvé ces quelques lignes en page 47 du mag cité en titre, les ai scrupuleusement recopiées, ai vérifié la présence de pnmtopng, ai fait une copie des data brutes (cat /dev/fb0 > ecran.raw) mais il doit rester un problème puisque ça s'exécute plutôt mal :
Code:
1 2
| $ ./copiecran.pl 1024 768 < ecran.raw > ecran.png
pnmtopng: 1 colors found |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| $ cat copiecran.pl
#!/usr/bin/perl -w
$w = shift || 320;
$h = shift || 240;
$pixels = $w * $h;
open OUT, "|pnmtopng" or die "Can't pipe pnmtopng: $!\n";
printf OUT "P6%d %d\n255\n", $w, $h;
while ((read STDIN, $raw, 2) and $pixels--) {
$short = unpack('S', $raw);
print OUT pack("C3",
($short & 0xf800) >> 8,
($short & 0x7e0) >> 3,
($short & 0x1f) << 3);
}
close OUT; |
Mais le souci, c'est qu'en regardant le contenu de ecran.raw avec un éditeur hexa, tout est à 0. C'est donc ce cat /dev/fb0 > ecran.raw qui ne va pas. Je l'ai testé depuis un terminal sous X mais également dans une console pure, même résultat.
Une idée ? Merci,