UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Explorer
Explorer
189 Views
Registered: ‎07-06-2016

VCU decode -> encode pipeline error - Driver bug detected

Hello,

I need to post-process a previously encoded video file (using VCU, working with the 2018.3 tools version), for that I'm doing the next:

video file in -> decode -> process raw video -> encode back -> video file out

The gstreamer comand line:

gst-launch-1.0 filesrc location="input.ts" --gst-debug-level=2 ! tsdemux ! h264parse ! omxh264dec ! queue max-size-bytes=0 ! v4l2video1convert capture-io-mode=4 output-io-mode=4 disable_passthrough=1 !  omxh264enc ! queue max-size-bytes=-1 ! h264parse ! mpegtsmux ! filesink location="output.ts"

The errors are:

0:00:00.103577456  2763      0xdc1fa30 ERROR                   v4l2 gstv4l2object.c:1910:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git

0:00:00.103693768  2763      0xdc1fa30 ERROR                   v4l2 gstv4l2object.c:1910:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git

0:00:00.103906720  2763      0xdc1fa30 ERROR                   v4l2 gstv4l2object.c:1910:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git

0:00:00.103943460  2763      0xdc1fa30 ERROR                   v4l2 gstv4l2object.c:1910:gst_v4l2_object_get_interlace_mode: Driver bug detected - check driver with v4l2-compliance from http://git.linuxtv.org/v4l-utils.git

Any ideas why I'm getting this errors?

Thanks.

Tags (2)
0 Kudos
4 Replies
Scholar watari
Scholar
156 Views
Registered: ‎06-16-2013

Re: VCU decode -> encode pipeline error - Driver bug detected

Hi @joseer 

 

Where do I get plugin's source code of "v4l2video1convert" ?

If it is inhouse gstreamer's plugin, make sure the capability of it on source and sink side.

If other, make sure an identity of input.ts.

 

Best regards,

 

0 Kudos
Explorer
Explorer
125 Views
Registered: ‎07-06-2016

Re: VCU decode -> encode pipeline error - Driver bug detected

Hi @watari , thanks for your answer.

The v4l2video1convert plugin is generated by the mem2mem driver   framework as a response to the hardware  definition in the device tree. I did check the capabilities and everything looks ok.

I made some tests and in order to debug this better I simplified the pipeline and tried only to decode the file but the pipeline gets stuck:

Pipeline: 

gst-launch-1.0 filesrc location="input.ts" --gst-debug-level=2 ! tsdemux ! h264parse ! queue ! omxh264dec ! queue ! video/x-raw, width=1280, height=1024, format=NV16 ! filesink location="output.yuv"

 And it gets stuck here:

Setting pipeline to PAUSED ...
0:00:00.064188882  2436   0x7f98002360 WARN                 basesrc gstbasesrc.c:3480:gst_base_src_start_complete:<filesrc0> pad not activated yet
Pipeline is PREROLLING ...
Redistribute latency...
0:00:00.255551476  2436   0x7f98004c50 WARN                GST_PADS gstpad.c:4109:gst_pad_peer_query:<omxh264dec-omxh264dec0:src> could not send sticky events
0:00:00.255689397  2436   0x7f98004c50 WARN            videodecoder gstvideodecoder.c:3797:gst_video_decoder_negotiate_pool:<omxh264dec-omxh264dec0> Subclass failed to decide allocation
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock

The generated file is big (> 1GB), could it be related to space allocation issue?

Any ideas?

0 Kudos
Scholar watari
Scholar
105 Views
Registered: ‎06-16-2013

Re: VCU decode -> encode pipeline error - Driver bug detected

Hi @joseer 

 

Make sure information of input.ts by the following commands.

 

$ ffprobe input.ts

$ ffmpeg -i input.ts

 

If you find color format as not NV16 (ex. NV12), change the capability from format=NV16 to format=<correct format>.

Also, I suggest you to add the following option on queue.

 

max-size-bytes=0

 

And, if you store the file by filesink on slow speed storage (like SD card, USB flash memory and USB 2.0 storage), I recommend to change it to USB 3.0 storage, too.

 

Best regards,

 

0 Kudos
Explorer
Explorer
76 Views
Registered: ‎07-06-2016

Re: VCU decode -> encode pipeline error - Driver bug detected

Hi @watari , 

Yes, the color formats are correct in NV16, I ran the next command to change them:

v4l2-ctl --device /dev/video0 --set-fmt-video=width=1280,height=1024,pixelformat=NV16

But I think you are right the issue might be bandwidth related, as I'm saving the file in a sd card, I'll check what are you suggesting and I'll get back.

Thanks.

0 Kudos