mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 12:11:13 +00:00
4dced785fe
Original commit message from CVS: * configure.ac: * examples/capsfilter/capsfilter1.c: (main): * examples/seeking/spider_seek.c: (make_spider_pipeline): * ext/dvdread/Makefile.am: * ext/dvdread/demo-play: * ext/dvdread/demo-play.c: * gconf/gstreamer.schemas.in: * gst-libs/gst/gconf/gconf.c: * sys/v4l/TODO: * testsuite/Makefile.am: * testsuite/embed/Makefile.am: * testsuite/embed/embed.c: (cb_expose), (main): Remove all references to xvideosink, fix examples (#140845). * gst/playback/gstplaybasebin.c: (group_destroy): Apparently, disposal does not unlink - so do explicitely. * ext/alsa/gstalsasink.c: (gst_alsa_sink_check_event): Add debug.
44 lines
1.5 KiB
Text
44 lines
1.5 KiB
Text
TODO list (short term):
|
|
=======================
|
|
* v4lsrc/v4lmjpegsrc/v4l2src: fix interlacing (not handled at all...)
|
|
|
|
TODO list (long term):
|
|
======================
|
|
* v4lmpegsrc (*hint* MPEG card needed *hint*)
|
|
* v4l2sink
|
|
* BSD-videosrc (bktr)
|
|
|
|
Useful Documentation:
|
|
=====================
|
|
MJPEG/V4L API : ./videodev_mjpeg.h
|
|
|
|
V4L API : /usr/include/linux/videodev.h or
|
|
/usr/src/linux/Documentation/video4linux/API.html or
|
|
http://linux.bytesex.org/v4l2/API.html
|
|
|
|
V4L2 API : /usr/include/linux/videodev2.h or
|
|
http://v4l2spec.bytesex.org/
|
|
|
|
BSD/Meteor API: /usr/include/machine/ioctl_meteor.h
|
|
|
|
mjpegtools : http://www.sourceforge.net/projects/mjpeg
|
|
|
|
Capturing:
|
|
==========
|
|
* sound is the master clock
|
|
* it's probably a good idea to create an audiosource element:
|
|
- autodetect alsa/oss
|
|
- first try alsa, then oss... they work the same internally
|
|
* same for videosource:
|
|
- autodetect v4l/v4l2 + mjpeg capabilities
|
|
- for this, just open device using v4l2element. On success:
|
|
+ use v4l2
|
|
- on failure:
|
|
+ use v4lelement and query for MJPEG capabilities
|
|
+ if that's available, combine caps of v4lmjpegsrc and v4lsrc
|
|
* both sources run in their own GstThread with a high priority
|
|
* an encoder element takes care of encoding + muxing. A toplevel element
|
|
(reverse of spider) is probably a good idea here. How? Don't know...
|
|
* format negotiation via filtered caps
|
|
* statistics via listening to the frame_{lost,inserted,deleted,captures}
|
|
signals and GST_PAD_QUERY_POSITION (gst_pad_query())
|