gstreamer/sys/v4l
David Schleef 6a5df541a6 Fixes to make ext/libcaca compile.
Original commit message from CVS:
* configure.ac:
* ext/Makefile.am: Fixes to make ext/libcaca compile.
* ext/divx/gstdivxdec.c:
* ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_sink_link),
(gst_gdk_pixbuf_init), (gst_gdk_pixbuf_chain): Make gdkpixbufdec
handle images that span multiple buffers.  Now work with both
filesrc ! gdkpixbufdec and qtdemux ! gdkpixbufdec.
* ext/gdk_pixbuf/gstgdkpixbuf.h:
* ext/libcaca/gstcacasink.h: Fixes needed due to recent
video/video.h changes
* ext/xvid/gstxvid.c: (gst_xvid_csp_to_caps): same
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_get),
(gst_v4lmjpegsrc_buffer_free): Use buffer free function instead
of GstData free function.
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_get), (gst_v4lsrc_buffer_free):
same.
2004-01-12 03:21:40 +00:00
..
.gitignore add cvsignores 2003-09-11 19:17:01 +00:00
gstv4l.c remove copyright field from plugins 2003-12-04 10:37:39 +00:00
gstv4lcolorbalance.c Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
gstv4lcolorbalance.h Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
gstv4lelement.c Move over from GstInterface to GstImplementsInterface. Also adds some signals to several interfaces 2003-12-07 12:11:30 +00:00
gstv4lelement.h Add device autodetection 2003-11-07 12:45:20 +00:00
gstv4lmjpegsink.c sys/v4l/: Fix pad template stuff. 2004-01-02 21:57:10 +00:00
gstv4lmjpegsink.h Merge CAPS branch 2003-12-22 01:47:09 +00:00
gstv4lmjpegsrc.c Fixes to make ext/libcaca compile. 2004-01-12 03:21:40 +00:00
gstv4lmjpegsrc.h Merge CAPS branch 2003-12-22 01:47:09 +00:00
gstv4lsrc.c Fixes to make ext/libcaca compile. 2004-01-12 03:21:40 +00:00
gstv4lsrc.h Merge CAPS branch 2003-12-22 01:47:09 +00:00
gstv4ltuner.c gst-libs/gst/tuner/tuner.*: GObjects aren't const. 2004-01-12 02:11:03 +00:00
gstv4ltuner.h Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
gstv4lxoverlay.c Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
gstv4lxoverlay.h Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
Makefile.am All the interfaces are collected in libgstinterfaces now. 2003-11-06 15:24:41 +00:00
README Minor updates 2001-12-24 21:43:31 +00:00
TODO configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Al... 2003-12-21 18:44:34 +00:00
v4l-overlay_calls.c Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
v4l_calls.c This is unused when debugging is disabled 2003-11-12 02:47:50 +00:00
v4l_calls.h Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
v4lmjpegsink_calls.c reverting error patch before making a branch. 2003-09-16 10:00:02 +00:00
v4lmjpegsink_calls.h Various fixes 2002-01-31 22:22:42 +00:00
v4lmjpegsrc_calls.c Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
v4lmjpegsrc_calls.h Some interface implementations for video4linux/video4linux2 plugins: a Tuner interface, with which one can select inp... 2003-10-10 12:47:41 +00:00
v4lsrc_calls.c reverting error patch before making a branch. 2003-09-16 10:00:02 +00:00
v4lsrc_calls.h Un-globalize variable 2003-05-14 19:54:37 +00:00
videodev_mjpeg.h typos 2003-09-13 10:44:47 +00:00

General Idea:
=============

                            _____/ gstv4lsrc.[ch]
                      _____/     \ v4lsrc_calls.[ch]
                     /
gstv4lelement.[ch] _/____________/ gstv4lmjpegsrc.[ch]
v4l_calls.[ch]      \            \ v4lmjpegsrc_calls.[ch]
                     \_____
                           \_____/ gstv4lmjpegsink.[ch]
                                 \ v4lmjpegsink_calls.[ch]

I.e., all the files on the right are child classes of
the v4lelement 'parent' on the left.

* v4lelement handles generic v4l stuff (picture settings,
    audio, norm/input setting, open()/close())
* v4lsrc, v4lmjpegsrc handle the capture specific
    functions. Maybe we'd need a v4lmpegsrc too
* v4lmjpegsink handles mjpeg hardware playback of video

Useful Documentation:
=====================
MJPEG/V4L API : ./videodev_mjpeg.h             
V4L API       : /usr/include/linux/videodev.h or
                http://roadrunner.swansea.uk.linux.org/v4l.shtml
V4L2 API      : http://www.thedirks.org/v4l2/
BSD/Meteor API: /usr/include/machine/ioctl_meteor.h
mjpegtools    : http://www.sourceforge.net/projects/mjpeg