[Bug 685209] New: gst_v4l2_object_get_nearest_size VIDIOC_G_FMT bug
GStreamer (bugzilla.gnome.org)
bugzilla at gnome.org
Mon Oct 1 05:44:44 PDT 2012
https://bugzilla.gnome.org/show_bug.cgi?id=685209
GStreamer | gst-plugins-good | git
Summary: gst_v4l2_object_get_nearest_size VIDIOC_G_FMT bug
Classification: Platform
Product: GStreamer
Version: git
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: Normal
Component: gst-plugins-good
AssignedTo: gstreamer-bugs at lists.freedesktop.org
ReportedBy: diogoluvizon at gmail.com
QAContact: gstreamer-bugs at lists.freedesktop.org
GNOME version: ---
Created an attachment (id=225484)
View: https://bugzilla.gnome.org/attachment.cgi?id=225484
Review: https://bugzilla.gnome.org/review?bug=685209&attachment=225484
This patch corrects the bug setting the v4l2object->type to prevfmt.type before
the G_FMT ioctl.
The function gst_v4l2_object_get_nearest_size tries to find the nearest frame
size and it does it using the TRY_FMT ioctl. If the TRY_FMT is not implemented
in the device it uses S_FMT. But, S_FMT has the side effect of changing the
device's operation mode. So the first thing that
gst_v4l2_object_get_nearest_size does is to do a G_FMT to save the previous
format so it can restore it latter (after the S_FMT call).
It saves the format in a variable called prevfmt. But it forgets to set the
type of the format, so G_FMT Always fails.
If TRY_FMT is not implemented, gst_v4l2_object_get_nearest_size will
use S_FMT and will change the device's operation mode, since it failed to
save the previous format it will be unable to restore it.
--
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