[gstreamer-bugs] [Bug 485828] [v4l2src] Fixates to lowest resolution on new kernels
GStreamer (bugzilla.gnome.org)
bugzilla-daemon at bugzilla.gnome.org
Sat Oct 13 05:04:32 PDT 2007
If you have any questions why you received this email, please see the text at
the end of this email. Replies to this email are NOT read, please see the text
at the end of this email. You can add comments to this bug at:
http://bugzilla.gnome.org/show_bug.cgi?id=485828
GStreamer | gst-plugins-good | Ver: HEAD CVS
Tim-Philipp Müller changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Component|don't know |gst-plugins-good
Resolution| |FIXED
Summary|Bad image quality from |[v4l2src] Fixates to lowest
|webcam. |resolution on new kernels
Target Milestone|HEAD |0.10.7
------- Comment #8 from Tim-Philipp Müller 2007-10-13 12:04 UTC -------
This is a problem with the way the caps are probed and fixated. v4l2src in CVS
(and gutsy) seems to use a new API to query the supported sizes on new kernels
and falls back to another API on older kernels. This results in the caps
looking differently and fixation being done in a different way: with the old
API we end up with a range for width/height, so fixation will just fixate to
the biggest size, while with the new API we get a different structure in the
caps for every supported size, and fixation will just pick the first structure
in the caps. Because the probing is done from smallest size to highest size
this will result in the smallest resolution supported by the camera - not
ideal.
This should fix it:
2007-10-13 Tim-Philipp Müller <tim at centricular dot net>
* sys/v4l2/gstv4l2src.c:
* sys/v4l2/v4l2src_calls.c:
When probing the formats and sizes a camera supports, make
sure the best ones (highest resolution, prefered format)
end up at the beginning of the probed caps and the less
desirable ones at the end. This is important because the
order within the caps matters for things like fixation and
negotiation, ie. what format is chosen in the end.
With recent kernels, the current probing code will end up
querying the supported sizes from lowest resolution to
highest resolution, adding them to the probed caps in that
order, resulting to v4l2src fixating to the lowest possible
resolution if downstream does not express a size preference.
Also make up a somewhat random ranking of prefered output
formats for the same reason. Fixes #485828.
--
See http://bugzilla.gnome.org/page.cgi?id=email.html for more info about why you received
this email, why you can't respond via email, how to stop receiving
emails (or reduce the number you receive), and how to contact someone
if you are having problems with the system.
You can add comments to this bug at http://bugzilla.gnome.org/show_bug.cgi?id=485828.
More information about the Gstreamer-bugs
mailing list