gstreamer/sys/v4l
Ronald S. Bultje 31b52089cc configure.ac: Improve mpeg2enc detection. This is for distributions that do ship mjpegtools, but without mpeg2enc. Al...
Original commit message from CVS:
2003-12-21  Ronald Bultje  <rbultje@ronald.bitfreak.net>

* configure.ac:
Improve mpeg2enc detection. This is for distributions that do
ship mjpegtools, but without mpeg2enc. Also does object check
for might there ever be ABI incompatibility.
* ext/mpeg2enc/gstmpeg2enc.cc:
Add Andrew as second maintainer (he's helping me), and also add
an error if no caps was set. This happens if I pull before capsnego
and that's something I should solve sometime else.
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup):
Fix time parsing.
* gst/matroska/matroska-mux.c: (gst_matroska_mux_audio_pad_link),
(gst_matroska_mux_track_header):
Add caps to templates.
* gst/mpegaudioparse/gstmpegaudioparse.c: (mp3_sink_factory):
Add mpegversion=1 to prevent confusion with MPEG/AAC.
* gst/mpegstream/gstmpegdemux.c:
Remove layer since it causes warnings about unfixed caps.
* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get):
Fix obvious typo (we error out if caps were set, we should of
course error out if *no* caps were set).
* sys/oss/gstosselement.c: (gst_osselement_convert):
Fix format conversion, we confused bits/bytes.
* sys/oss/gstosselement.h:
Improve documentation for 'bps'.
* sys/v4l/TODO:
Remove stuff about plugins that need removing - this was done
ages ago.
* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init),
(gst_v4lmjpegsrc_src_convert), (gst_v4lmjpegsrc_src_query):
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_init), (gst_v4lsrc_src_convert),
(gst_v4lsrc_src_query):
* sys/v4l2/gstv4l2src.c: (gst_v4l2src_init),
(gst_v4l2src_src_convert), (gst_v4l2src_src_query):
Add get_query_types(), get_formats() and query() functions.
2003-12-21 18:44:34 +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 Removing the have_size signal 2003-11-19 22:38:04 +00:00
gstv4lmjpegsink.h Removing the have_size signal 2003-11-19 22:38:04 +00:00
gstv4lmjpegsrc.c 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
gstv4lmjpegsrc.h fix most of sys dir. v4l2 and dxr3 pending, as I don't have them 2003-11-02 14:47:52 +00:00
gstv4lsrc.c 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
gstv4lsrc.h fix most of sys dir. v4l2 and dxr3 pending, as I don't have them 2003-11-02 14:47:52 +00:00
gstv4ltuner.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
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