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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 $ ./copiecran.pl 1024 768 < ecran.raw > ecran.png pnmtopng: 1 colors foundMais 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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
Une idée ? Merci,
Partager