[Bug 726521] New: v4l2src fails to enumerate Raspberry Pi camera which specifies stepwise frame sizes

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Mon Mar 17 05:14:01 PDT 2014


https://bugzilla.gnome.org/show_bug.cgi?id=726521
  GStreamer | gst-plugins-good | 1.2.3

           Summary: v4l2src fails to enumerate Raspberry Pi camera which
                    specifies stepwise frame sizes
    Classification: Platform
           Product: GStreamer
           Version: 1.2.3
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gst-plugins-good
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: towolf at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


The Raspberry Pi Foundation markets a small camera board for which a V4l2
driver now became available that is usable by, e.g., v4l2src.

After an update that introduced so-called stepwise frame sizes [1], v4l2src
cannot negotiate a camera mode anymore, which worked before. 

    gst-launch-1.0 v4l2src ! video/x-h264,width=640,height=480 ! fakesink

This sits and crunches for a long time before it fails with


    error: Internal data flow error.
    error: streaming task paused, reason not-negotiated (-4)


Interestingly, using "video/x-h264,width=640,height=640" (width==height) it
crunches for a long time (~20s) and then starts emitting frames.

It has been surmised at [2] that this is due to a faulty probing loop in
gstv4l2object.c (cf. [3]).

Since looking into the issue is hard without access to the hardware I found
that the synthetic vivi.ko driver exhibits problems with stepwise as well. I
found it impossible to pick a resolution other than width=1920,height=500 using
vivi.

There’s seems to be an issue with the probing logic. Is it really necessary to
iterate through 14 million modes to pick a framesize+fps combination?


[1]
https://github.com/raspberrypi/linux/commit/983dcb1d#diff-221e79295f1bf120ffa5fdfae25d2e38R1130

[2] http://www.raspberrypi.org/phpBB3/viewtopic.php?p=521235#p521235

[3]
http://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/sys/v4l2/gstv4l2object.c#n1866

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list