gstreamer/sys/v4l2
Havoc Pennington f06b105058 v4l2src: do not try to change device format if it's already correct
This allows set_caps to succeed if caps change in a way that
would not modify the format we're getting from the hardware.
Otherwise if not in NULL state, setting caps would fail
with EBUSY.

With this change, in some cases it's OK to go PLAYING->READY->PLAYING
rather than PLAYING->NULL->PLAYING to avoid a time-consuming close
and reopen of the device.

Fixes #621723
2010-06-16 17:48:47 +02:00
..
.gitignore add cvsignores 2003-09-11 19:17:02 +00:00
gstv4l2.c v4l2sink: change rank to NONE so it is never autoplugged 2010-02-13 20:59:42 +00:00
gstv4l2bufferpool.c v4l2: log more details in buffer pool finalize 2010-02-16 10:15:22 +02:00
gstv4l2bufferpool.h v4l2: move G_END_DECLS to the end 2010-01-18 14:57:42 +02:00
gstv4l2colorbalance.c sys/v4l2/Makefile.am: Fix makefile, list libs in stack order. 2006-09-26 13:18:06 +00:00
gstv4l2colorbalance.h Add -Wmissing-declarations -Wmissing-prototypes warning flags 2010-03-17 18:23:28 +01:00
gstv4l2object.c v4l2src: do not try to change device format if it's already correct 2010-06-16 17:48:47 +02:00
gstv4l2object.h Add -Wwrite-strings to the configure flags 2010-03-21 14:17:47 +01:00
gstv4l2sink.c gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 14:32:00 +01:00
gstv4l2sink.h docs: fix gtk-doc warnings 2009-09-10 10:26:23 +03:00
gstv4l2src.c v4l2src: in negotiate, check for error return from set_caps 2010-06-16 17:48:47 +02:00
gstv4l2src.h v4l2src: add a function pointer for get_frame function and optimize a bit 2009-09-11 22:24:47 +03:00
gstv4l2tuner.c Fix comparison of the tuner norms 2009-01-30 14:42:44 +01:00
gstv4l2tuner.h Add -Wmissing-declarations -Wmissing-prototypes warning flags 2010-03-17 18:23:28 +01:00
gstv4l2vidorient.c sys/v4l2/: Fix compilation with newer GIT kernels that deprecated 2008-06-09 08:42:49 +00:00
gstv4l2vidorient.h Add -Wmissing-declarations -Wmissing-prototypes warning flags 2010-03-17 18:23:28 +01:00
gstv4l2xoverlay.c sys/v4l2/gstv4l2xoverlay.*: Fix build as per the patch in #338818 comment 36. 2006-10-09 07:01:19 +00:00
gstv4l2xoverlay.h sys/v4l2/gstv4l2xoverlay.*: Fix build as per the patch in #338818 comment 36. 2006-10-09 07:01:19 +00:00
Makefile.am v4l2: fix make distcheck by disting some more headers 2009-08-11 03:08:01 +01:00
README Fix level for multi-channel case. 2007-02-22 14:35:28 +00:00
v4l2_calls.c v4l2: printf format string fix 2010-02-15 12:13:43 +00:00
v4l2_calls.h v4l2: Directly use GST_PTR_FORMAT for printing caps with the LOG_CAPS macro 2009-08-04 14:45:31 +02:00
v4l2src_calls.c Add -Wredundant-decls warning flag 2010-03-17 19:35:10 +01:00
v4l2src_calls.h v4l2: Add v4l2sink element 2009-08-04 09:16:56 +02:00

v4l2 plugins
============

The idea is a bit the same as the idea for the v4l1 plugins. We want
one generic v4l2element, and a few child objects (probably only two:
v4l2src and v4l2sink):

                /-------- v4l2src
v4l2element ---=
                \-------- v4l2sink

Both v4l2src and v4l2sink have a uncompressed and a compressed
recording-/playback-mode. Since this is all part of v4l2, the 'client'
of these elements, i.e. an application using v4l2src/v4l2sink, will
hardly notice this. All capsnego stuff is done inside, and the plugin
knows which formats are compressed and which are not.

Please note that the v4l1 and the v4l2 plugins are *not* compatible
concerning properties. Naming has been kept the same where possible,
but in some cases, properties had to be removed or added to make
full use of v4l2.

V4L2 API: http://linux.bytesex.org/v4l2/.
          http://v4l2spec.bytesex.org/
          /usr/include/linux/videodev2.h or

Kernel patches available from
          http://dl.bytesex.org/patches/.

Articles:
          http://lwn.net/Articles/203924/