GNOME Bugzilla – Bug 775702
v4l2object: Don't set empty interlace-mode list
Last modified: 2017-02-22 09:21:00 UTC
Attached patch explains the failure case and the fix.
Created attachment 341474 [details] [review] v4l2object: Don't set empty interlace-mode list If for some reason we fail to probe formats (all try_fmt calls fail, for example), this is not a critical error, but we end up with an empty list of interlace modes. This causes all subsequent negotiation to fail. This patch fixes interlace-mode setting to be skipped if we failed to detect any.
Review of attachment 341474 [details] [review]: Looks good. Do you have a reference of which hardware/driver this happened on ?
This is on an odroid xu4. I still don't have it working atm, because the final S_FMT fails with an EINVAL, but at least I'm past the negotiation failure. Will wait to resolve that before pushing this out (maybe the failures are related).
The problem turned out to be with libv4l2 (possibly a bad build in Fedora packages). The fix isn't required on my build any more, but it's still correct IMO, so will push it out.
Attachment 341474 [details] pushed as 1ea9735 - v4l2object: Don't set empty interlace-mode list
Indeed, the fix it totally correct, thanks.
In 1.10 as 1f38e00be92589d03a3558b2fd2c6eecbf7ae535
Wrong ref, 1.10 as d4afc3bc5be9b6b6d374af0b3dcbd6f8ff8a687d