GNOME Bugzilla – Bug 745190
v4l2: properly drop corrupted buffers
Last modified: 2015-02-26 02:17:30 UTC
I'm testing 4K video capture with a new capture device (4K to USB 3.0):
I'm getting some initial corrupted buffers which are not properly discarded by GStreamer and thus EOS happens.
The error I get is:
Driver returned a buffer with no payload, this most likely indicate a bug in the driver.
This is one of the buffers:
gstv4l2allocator.c:1284:gst_v4l2_allocator_dqbuf:<v4l2src0:pool:src:allocator> dequeued buffer 0 (flags 0x12045)
Where V4L2_BUF_FLAG_ERROR is set.
Created attachment 297939 [details] [review]
properly drop corrupted buffers
I think this does the trick.
Created attachment 297940 [details] [review]
properly drop corrupted buffers fix up
This one better, need to check the flag before the buffer is released.
Thanks for taking the time to report this.
This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.
*** This bug has been marked as a duplicate of bug 740040 ***
For your interest, reopen the original bug, and attach your extra bug fix. Obviously checking flags on *buf is not correct, we need to check on tmp. But for a sane tracking, we need not to duplicate bugs. You could have found the original reference using git blame.
Sure, I'll do next time.