2013-01-20 10 views
6

erstellen Ich möchte ein Beispiel YUV422 Frame auf Ubuntu von jedem Bild erstellen, so dass ich eine YUV422 zu RGB888-Funktion aus Gründen des Lernens codieren kann. Ich würde wirklich gerne in der Lage sein, ein vertrauenswürdiges Werkzeug zu verwenden, um ein Beispiel zu erstellen und zurück zu einem JPEG zu konvertieren.Wie kann ich einen YUV422-Frame aus einem JPEG oder einem anderen Bild auf Ubuntu

Ich habe versucht, ImageMagick, aber mache klar etwas falsch:

convert -size 640x480 -depth 24 test.jpg -colorspace YUV -size 640x480 -depth 16 -sampling-factor 4:2:2 tmp422.yuv 

enter image description here

convert -colorspace YUV -size 640x480 -depth 16 -sampling-factor 4:2:2 tmp422.yuv -size 640x480 -depth 24 -colorspace RGB test2.jpg 

enter image description here

Ich habe auch die mpegtools Paket auf Ubuntu, installieren, um zu Verwenden Sie jpeg2yuv:

>> jpeg2yuv -f 1 test.jpg 
    INFO: [jpeg2yuv] Reading jpeg filenames from stdin. 
    INFO: [jpeg2yuv] Parsing & checking input files. 

**ERROR: [jpeg2yuv] System error while opening: "": No such file or directory 

Offensichtlich stimmt etwas anderes nicht. Könnte jemand bitte etwas Licht darauf werfen, wie ich das erreichen könnte? Danke -

Antwort

10

Tun Sie es mit ffmpeg:

ffmpeg -i a.jpg -s 640x480 -pix_fmt yuv422p a.yuv 
ffmpeg -pix_fmt yuv422p -s 640x480 -i a.yuv b.jpg