FFmpeg Wishlist
Jump to navigation
Jump to search
A temporary FFmpeg wish/todo list:
Decoders
- g723.1/rtp decoder
- g729/rtp decoder
- Bethsoft VID decoder
- a Monkey's Audio decoder, look at the c++ sdk sources
- a JPEG2000 decoder
- a gsm decoder
- QCELP decoder spec is c.s0020 and source is c.r0020
- AMV decoder, http://scrub50187.com/ has the creator. wikipedia has articles about the format also.
- integer only vorbis decoder (to replace tremor)
- LGPL'ed LE-AAC and HE-AAC decoder
- mp3PRO decoder (Note: mp3PRO is MP3 + SBR. Standard MP3 decoders can decode mp3PRO encoded files/streams but without SBR you do not get the full quality. By adding a SBR decoder to FFmpeg and coupling it with the existing MP3 decoder you could playback mp3PRO at full quality? A SBR decoder could be shared with a aacPlus decoder as aacPlus also uses SBR)
- Add j-type picture support to wmv8 decoder
- MLP decoder
- add b-frame support to ffsvq3
- Indeo 4 and 5 decoder
- vnc decoder, files created by vncrec. reuse code from VMware Video decoder. http://www.sodan.org/~penny/vncrec/
Demuxers
- iff demuxer (with anim and sound decoding), xine has a decoder for it
- g723.1/rtp demuxer
- g729/rtp demuxer
- Bethsoft VID demuxer
- vivo demuxer, look at the mplayer vivo demuxer for reference
- a xmv demuxer, look at http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/25207/focus=25224 and http://www.maxconsole.net/?mode=news&newsid=411 for hints; also look at http://sourceforge.net/tracker/index.php?func=detail&aid=1097094&group_id=53761&atid=471491 (should be a working demuxer/decoder)
- AMV demuxer, http://scrub50187.com/ has the creator. wikipedia has articles about the format also.
Features
- a new audio api
- radix-4 fft routines
- grabbing from video devices under windows, apply this vfw capture patch http://lists.mplayerhq.hu/pipermail/ffmpeg-user/2006-December/005607.html
- -[h|v]flip options for ffplay
- improved documentation (web,manpage)
Subtitles
- Create a common 'subtitles display library or API' with all subtile decoders/demuxers gathered. Call it "libsubs" (or "libsub", "libsubtitles" or whatever). Move FFmpeg's existing VobSub and DVBsub code there, no matter if they are bitmap or text-based subs, and add any future subtile code there. This will help reduce future code replication and make it easier to add support for additional subtitles.
- Maybe use MPlayer's recently added "libass" (SSA/ASS subtile reader) as a base for such a common library?
- Closed captioning (CC) subtile support - (Closed captions for the deaf and hard of hearing, also known as "Line 21 captioning", uses VobSub bitmaps)
- DivX Subtitles (XSUB) display/reader/decoder (Note: bitmap based subtitle, similar to VobSub)
- SubRip (.srt) subtile support (Note: simple text-based based subtitle with timestamp)
- Subviewer (.sub) subtile support (Note: simple text-based based subtitle with timestamp)
- MicroDVD (.sub) subtile support (Note: simple text-based based subtitle with timestamp
- Sami (.smi) subtile support (Note: simple text-based based subtitle with timestamp)
- SubStation Alpha (.ssa+.ass) subtile support (Note: advanced text-based based subtitle with timestamps and XY location on screen)
- RealText (.rt) subtile support
- PowerDivx (.psb) subtile support
- Universal Subtitle Format (.usf) subtile support
- Structured Subtitle Format (.ssf) subtile support
Misc
- NSV muxer
- add PAFF to H.264 decoder
- clean up alac decoder
- integrate speex, glue code or native
- add xing or vbri header parsing support to the mp3 decoder/parser
- add GAIN (MP3Gain) header parsing support to the MP3 decoder/parser
- also add GAIN (AACGain) header parsing support to the AAC decoder/parser
- a aac parser so -acodec copy to mp4/mov works
- clean up the h263 rtp patch found on this page: http://www.salyens.com/downloads/index.html#ffmpeg-0.4.7
- add nice error messages to the flv demuxer(Nelly Moser)
- amr decoder
- dv encoder/decoder
- game formats:
Snow
- multiple reference frames improvements
- decide which frames to keep (e.g. long-term refs)
- some changes to the mv prediction code
- non translational motion compensation
- estimate non translational parameters per block by using surrounding motion vectors
- add a ac coded bit per block to switch between translational and non-translational MC
- borrow the non translational MC code from libmpcodecs/vf_perspective.c
- some changes to the encoder to decide between translational and non t.
- Trellis quantization (select quantized coefficient so as to minimize the rate distrortion
- 4x4 sized block support (we have 16x16 and 8x8 currently)
- 1/8 pel motion compensation / estimation support (pretty much just encoder changes needed which in case of the iterative me should be trivial)
- improve the intra color decision
A/V Filters
- adopt mplayer filter system or create new one.
- http://article.gmane.org/gmane.comp.video.ffmpeg.devel/39130
- for michaelni's idea of what to do
- http://article.gmane.org/gmane.comp.video.ffmpeg.devel/39130
- decide on name.
- libavfilter (conflicts with LAVF)? libavmunge?