FFmpeg Wishlist: Difference between revisions

From MultimediaWiki
Jump to navigation Jump to search
Line 15: Line 15:
**[http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)] decoder
**[http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)] decoder
* [http://www.codingtechnologies.com/products/mp3pro.htm mp3PRO] decoder (Note: mp3PRO is MP3 + [http://www.codingtechnologies.com/products/sbr.htm SBR]. Standard MP3 decoders can decode mp3PRO encoded files/streams but without [http://www.codingtechnologies.com/products/sbr.htm SBR] you do not get the full quality. By adding a [http://www.codingtechnologies.com/products/sbr.htm SBR] decoder to FFmpeg and coupling it with the existing MP3 decoder you could playback mp3PRO at full quality? A [http://www.codingtechnologies.com/products/sbr.htm SBR] decoder could be shared with a aacPlus decoder as aacPlus also uses [http://www.codingtechnologies.com/products/sbr.htm SBR]).
* [http://www.codingtechnologies.com/products/mp3pro.htm mp3PRO] decoder (Note: mp3PRO is MP3 + [http://www.codingtechnologies.com/products/sbr.htm SBR]. Standard MP3 decoders can decode mp3PRO encoded files/streams but without [http://www.codingtechnologies.com/products/sbr.htm SBR] you do not get the full quality. By adding a [http://www.codingtechnologies.com/products/sbr.htm SBR] decoder to FFmpeg and coupling it with the existing MP3 decoder you could playback mp3PRO at full quality? A [http://www.codingtechnologies.com/products/sbr.htm SBR] decoder could be shared with a aacPlus decoder as aacPlus also uses [http://www.codingtechnologies.com/products/sbr.htm SBR]).
**[http://www.codingtechnologies.com/products/sbr.htm SBR (Spectral Band Replication)] decoder
**[http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)] decoder
* [http://www.mpegsurround.com MPEG Surround] decoder/parser (for all audio but especially MP3/mp3PRO and AAC/aacPlus as those are in use today). [http://www.codingtechnologies.com/products/mpgsrnd.htm MPEG Surround technology] share similar characteristics with [http://www.codingtechnologies.com/products/sbr.htm SBR (Spectral Band Replication)] and [http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)], which [http://www.codingtechnologies.com/products/mp3pro.htm mp3PRO] and [http://www.codingtechnologies.com/products/aacPlus.htm aacPlus] also use, so if SBR and PS decoders was added to FFmpeg then those could probebly share common code with a [http://www.mpegsurround.com MPEG Surround] decoder/parser.
**[http://www.codingtechnologies.com/products/sbr.htm SBR (Spectral Band Replication)] decoder
**[http://www.codingtechnologies.com/products/sbr.htm SBR (Spectral Band Replication)] decoder
**[http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)] decoder
**[http://www.codingtechnologies.com/products/paraSter.htm PS (Parametric Stereo)] decoder

Revision as of 20:53, 18 March 2007

A temporary FFmpeg wish/todo list:

Decoders

Demuxers

Features

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

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