Marcos Cunha

Using mfw_vpuencoder with Y42B pixel format

Discussion created by Marcos Cunha on Aug 10, 2012



I'm using the Gstreamer to do the decoder and encoder operations. I want the iMX53 VPU decode (mfw_vpudecoder) MJPG format and, after that, the VPU (mfw_vpudecoder) will encode to H264 format. I have an USB webcam that gives me MJPG format (based on ov519) and the pixel format after the mfw_vpu_decoder decompression is Y42B format  (4:2:2 pixel format) - (I could not change this format using the mfw_vpudecoder). So the problem is: the mfw_vpuencoder just accepts I420, YV12 and NV12 (all those are 4:2:0 format) to encode in H264 format.


Do you know either how the mfw_vpudecoder could change the pixel format or how the mfw_vpuencoder accept the Y42B pixel format?


The commands and the gstreamer output are below, and the full debug output is attached. 


Command Line:

gst-launch v4l2src device=/dev/video0 --gst-debug=4 ! 'image/jpeg,width=1280,height=720,framerate=15/1' ! queue ! mfw_vpudecoder codec_type=std_mjpg fmt=1 loopback=true ! mfw_vpuencoder loopback=true codec-type=std_avc ! avimux ! filesink location=teste.avi


Gstreamer Output:


Setting pipeline to PAUSED ...
[INFO] Product Info: i.MX53
VPU Version: firmware 13.4.32; libvpu: 5.1.4
MFW_GST_VPU_ENCODER_PLUGIN 2.0.3 build on Aug 10 2012 10:53:03.
[INFO] Product Info: i.MX53
VPU Version: firmware 13.4.32; libvpu: 5.1.4
MFW_GST_VPU_DECODER_PLUGIN 2.0.3 build on Aug 10 2012 10:53:09.
Pipeline is live and does not need PREROLL ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/MfwGstVPU_Enc:mfwgstvpu_enc0: fatal error
Additional debug info:
Invalid VPU open parameters.
Execution ended after 324915499 ns.
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...


Thanks in advance


Marcos Cunha, MSc, PMP

Electrical Engineer