FFmpeg Wishlist: Difference between revisions
Jump to navigation
Jump to search
(remove completed things, try to remove entire list or port it to small tasks page...) |
|||
(94 intermediate revisions by 13 users not shown) | |||
Line 1: | Line 1: | ||
The various desired features for FFmpeg can be found in the following pages: | |||
* [https://roundup.mplayerhq.hu/roundup/ffmpeg/issue?%40&%40columns=title&%40columns=topic&id=&%40columns=id&%40columns=activity&%40sort=activity&%40columns=priority&%40group=priority&type=2&status=2&%40columns=substatus&%40pagesize=50&%40startwith=0&%40action=search Open feature requests in the issue tracker] | |||
* [http://svn.mplayerhq.hu/ffmpeg/trunk/doc/TODO?view=co TODO file in the SVN tree] | |||
* [[FFmpeg Summer Of Code]] pages | |||
* Finish and commit any code not yet commited at the [http://svn.mplayerhq.hu/soc/ SoC FFmpeg tree] | |||
Also, other features requests can be found in: | |||
* [https://roundup.mplayerhq.hu/roundup/ffmpeg/issue?%40&%40columns=title&%40columns=topic&id=&%40columns=id&%40columns=activity&%40sort=activity&%40columns=priority&%40group=priority&type=2&status=1&%40columns=substatus&%40pagesize=50&%40startwith=0&%40action=search Feature requests marked as "new"] | |||
* Below in this page (mostly deprecated items) | |||
See also the discussion about [[Ffmpeg audio api|Audio API]] TODOs. | |||
= Old list = | |||
The following is deprecated, please '''do not''' add new items to this list, use instead the issue tracker. Also, send a message to the mailing list before implementing one of those items. They could be work-in-progress or not wanted anymore. | |||
Moving any of these items to a '''proper''' feature request in the issue tracker is welcome. | |||
== Decoders == | == Decoders == | ||
* [[ | * [[xeb|XEB]] - the [[RatDVD]] video codec (stored in [[xvo|XVO]] container format) | ||
* VNC decoder, files created by vncrec. Re-use code from [[VMware Video]] decoder http://www.sodan.org/~penny/vncrec/ | * VNC decoder, files created by vncrec. Re-use code from [[VMware Video]] decoder http://www.sodan.org/~penny/vncrec/ | ||
* Additional game formats support: | * Additional game formats support: | ||
** [[VQA]] v3 support, see http://www.gamers.org/pub/idgames2/planetquake/planetcnc/cncdz/ | |||
** [[Gremlin Digital Video]] | ** [[Gremlin Digital Video]] | ||
** [[M95]] | ** [[M95]] | ||
== Demuxers == | == Demuxers == | ||
* | * [[FluxDVD]] / [[RatDVD]] demuxer for [[xvo|XVO]] files (Note! [[RatDVD]] is the predecesor of [[FluxDVD]]) | ||
== Muxers == | == Muxers == | ||
Line 80: | Line 47: | ||
* NSA muxer | * NSA muxer | ||
=== | == Features == | ||
* Improved existing documentation and add additional means to document | |||
* Improved | |||
**Web | **Web | ||
**WIKI | **WIKI | ||
**manpage | **manpage | ||
== Streaming Media Network Protocols == | == Streaming Media Network Protocols == | ||
Streaming Media Network Protocols (client and server-side) improvements/enhancements and related ideas for new features/functions. | Streaming Media Network Protocols (client and server-side) improvements/enhancements and related ideas for new features/functions. | ||
* Create a common 'stream demuxer/parser library' for the client-side (and/or API for adding support for additional streaming formats?) - a LGPL'ed sub-library in FFmpeg with all stream demuxers/parsers gathered (similar to the libpostproc and libavutil). Call it "libstream" (or "stream" or whatever). Move FFmpeg's existing stream code there like HTTP and RTSP/RTP. This will help reduce future code replication by sharing common code, thus making it easier to add support for additional streaming formats. All togther making it super easy for audio/video players using FFmpeg to add all-in-one streaming support to their player. | * Create a common 'stream demuxer/parser library' for the client-side to receive input streams (and/or API for adding support for additional streaming formats?) - a LGPL'ed sub-library in FFmpeg with all stream demuxers/parsers gathered (similar to the libpostproc and libavutil). Call it "libstream" (or "stream" or whatever). Move FFmpeg's existing stream code there like HTTP and RTSP/RTP. This will help reduce future code replication by sharing common code, thus making it easier to add support for additional streaming formats. All togther making it super easy for audio/video players using FFmpeg to add all-in-one streaming support to their player. | ||
**Maybe use either [http://www.mplayerhq.hu MPlayer]'s "''stream''" library structure, [http://www.live555.com LIVE555], or probebly the better [http://streaming.polito.it/client/library libnms] (from [http://streaming.polito.it/client NeMeSi]) as a base for such a common library? | **Maybe use either [http://www.mplayerhq.hu MPlayer]'s "''stream''" library structure, [http://www.live555.com LIVE555], [http://curl.haxx.se cURL], or probebly the better [http://streaming.polito.it/client/library libnms] (from [http://streaming.polito.it/client NeMeSi]) as a base for such a common library? | ||
*Add support for additional streaming protocols (on the client side) and improve/enhance support for existing protocols: | *Add support for additional streaming protocols (on the client side) and improve/enhance support for existing protocols: | ||
** HTTP (Hypertext Transfer Protocol) client | ** HTTP (Hypertext Transfer Protocol) client | ||
*** plus a SSL (Secure Sockets Layer) client support for HTTPS | |||
** UDP (User Datagram Protocol) client | ** UDP (User Datagram Protocol) client | ||
** RTSP - Real-Time Streaming Protocol (RFC2326) client | ** RTSP - Real-Time Streaming Protocol (RFC2326) client | ||
Line 167: | Line 70: | ||
** SDP (Service Discovery Protocol) / SSDP (Simple Service Discovery Protocol) client | ** SDP (Service Discovery Protocol) / SSDP (Simple Service Discovery Protocol) client | ||
** MMS (Microsoft Media Services) client | ** MMS (Microsoft Media Services) client | ||
*FFServer updating | *** including the subprotocol mmsh (MMS over HTTP) and mmst (MMS over TCP) | ||
**FFServer code hasn't been update for quite a while | *FFServer (streaming server) updating and improving: | ||
**Streaming to clients like WMP 9, 10 and 11 is broken | **FFServer code hasn't been update for quite a while | ||
**Support for RTSP interleaved RTP media | |||
**RTSP over HTTP tunneling | |||
**SLL (Secure Sockets Layer) support | |||
**TLS (Transport Layer Security) support | |||
**SCTP (Stream Control Transmission Protocol) support | |||
***including tunnel SCTP over UDP | |||
**Per-asset accounting options | |||
**Profiling and performance improvements of the RTSP, HTTP and RTP server code | |||
**Streaming to clients like WMP 9, 10 and 11 is broken | |||
**MMS server streaming support in FFServer, (especially for Linux). | **MMS server streaming support in FFServer, (especially for Linux). | ||
***Note that al3x has gotten something working with ffserver, you might want to ask him what needs to be done as well :) --[[User:Compn|Compn]] 14:22, 19 March 2007 (EDT) | *** including the subprotocol mmsh (MMS over HTTP) and mmst (MMS over TCP) | ||
***You should also take a look at the [http://streaming.polito.it/server FENG (RTSP Streaming Server)] code, | *** Note that al3x has gotten something working with ffserver, you might want to ask him what needs to be done as well :) --[[User:Compn|Compn]] 14:22, 19 March 2007 (EDT) | ||
***You should also take a look at the [http://streaming.polito.it/server FENG (RTSP Streaming Server)] code, [http://streaming.polito.it/embedded NetEmbryo (Embedded Open Media Streaming Library)], and also [http://curl.haxx.se cURL] --[[User:Gamester17|Gamester17]] 11:20, 29 March 2007 (GMT+1) | |||
==See Also== | ==See Also== | ||
*[[FFmpeg Summer Of Code]] for more suggestions/requests (ideas for developers). | |||
*[[FFmpeg Summer Of Code | |||
*[http://bugzilla.mplayerhq.hu/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=FFmpeg&content= FFmpeg bugs] for bugs in FFmpegs (codecs) that you can help fix or add addition information/samples to. | *[http://bugzilla.mplayerhq.hu/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=FFmpeg&content= FFmpeg bugs] for bugs in FFmpegs (codecs) that you can help fix or add addition information/samples to. | ||
*[[:Category: | *[[:Category:Formats missing in FFmpeg]] for formats not implemented in ffmpeg yet | ||
[[Category:FFmpeg]] |
Latest revision as of 05:37, 4 October 2011
The various desired features for FFmpeg can be found in the following pages:
- Open feature requests in the issue tracker
- TODO file in the SVN tree
- FFmpeg Summer Of Code pages
- Finish and commit any code not yet commited at the SoC FFmpeg tree
Also, other features requests can be found in:
- Feature requests marked as "new"
- Below in this page (mostly deprecated items)
See also the discussion about Audio API TODOs.
Old list
The following is deprecated, please do not add new items to this list, use instead the issue tracker. Also, send a message to the mailing list before implementing one of those items. They could be work-in-progress or not wanted anymore.
Moving any of these items to a proper feature request in the issue tracker is welcome.
Decoders
- XEB - the RatDVD video codec (stored in XVO container format)
- VNC decoder, files created by vncrec. Re-use code from VMware Video decoder http://www.sodan.org/~penny/vncrec/
- Additional game formats support:
Demuxers
Muxers
- DVB (MPEG-TS) muxer inside DVB containers
- MPEG-1/2 video-streams inside DVB containers
- MPEG-4 ASP video-streams inside DVB containers
- MPEG-4 AVC (H.264) video-streams inside DVB containers
- AC3 audio-streams inside DVB containers
- Mutiple AC3 audio-streams inside DVB containers
- MP3 audio-streams inside DVB containers
- Mutiple MP3 audio-streams inside DVB containers
- NSV muxer
- NSA muxer
Features
- Improved existing documentation and add additional means to document
- Web
- WIKI
- manpage
Streaming Media Network Protocols
Streaming Media Network Protocols (client and server-side) improvements/enhancements and related ideas for new features/functions.
- Create a common 'stream demuxer/parser library' for the client-side to receive input streams (and/or API for adding support for additional streaming formats?) - a LGPL'ed sub-library in FFmpeg with all stream demuxers/parsers gathered (similar to the libpostproc and libavutil). Call it "libstream" (or "stream" or whatever). Move FFmpeg's existing stream code there like HTTP and RTSP/RTP. This will help reduce future code replication by sharing common code, thus making it easier to add support for additional streaming formats. All togther making it super easy for audio/video players using FFmpeg to add all-in-one streaming support to their player.
- Add support for additional streaming protocols (on the client side) and improve/enhance support for existing protocols:
- HTTP (Hypertext Transfer Protocol) client
- plus a SSL (Secure Sockets Layer) client support for HTTPS
- UDP (User Datagram Protocol) client
- RTSP - Real-Time Streaming Protocol (RFC2326) client
- RTP/RTCP - Real-Time Transport Protocol/RTP Control Protocol (RFC3550) client
- RTP Profile for Audio and Video Conferences with Minimal Control (RFC3551) client
- RealMedia RTSP/RDT (Real Time Streaming Protocol / Real Data Transport) client
- SDP (Service Discovery Protocol) / SSDP (Simple Service Discovery Protocol) client
- MMS (Microsoft Media Services) client
- including the subprotocol mmsh (MMS over HTTP) and mmst (MMS over TCP)
- HTTP (Hypertext Transfer Protocol) client
- FFServer (streaming server) updating and improving:
- FFServer code hasn't been update for quite a while
- Support for RTSP interleaved RTP media
- RTSP over HTTP tunneling
- SLL (Secure Sockets Layer) support
- TLS (Transport Layer Security) support
- SCTP (Stream Control Transmission Protocol) support
- including tunnel SCTP over UDP
- Per-asset accounting options
- Profiling and performance improvements of the RTSP, HTTP and RTP server code
- Streaming to clients like WMP 9, 10 and 11 is broken
- MMS server streaming support in FFServer, (especially for Linux).
- including the subprotocol mmsh (MMS over HTTP) and mmst (MMS over TCP)
- Note that al3x has gotten something working with ffserver, you might want to ask him what needs to be done as well :) --Compn 14:22, 19 March 2007 (EDT)
- You should also take a look at the FENG (RTSP Streaming Server) code, NetEmbryo (Embedded Open Media Streaming Library), and also cURL --Gamester17 11:20, 29 March 2007 (GMT+1)
See Also
- FFmpeg Summer Of Code for more suggestions/requests (ideas for developers).
- FFmpeg bugs for bugs in FFmpegs (codecs) that you can help fix or add addition information/samples to.
- Category:Formats missing in FFmpeg for formats not implemented in ffmpeg yet