Difference between revisions of "FFmpeg Release Plan"

From MultimediaWiki
Jump to navigation Jump to search
m (Rationale for releases: drop extraneous "no")
(0.6 changelog/press release, starting draft)
 
(29 intermediate revisions by 11 users not shown)
Line 2: Line 2:
  
 
==Things that need doing==
 
==Things that need doing==
* Fix DV regression tests on PPC
+
* Fix SVQ3 regression test?
 
* Approximately 95% test coverage in FATE.
 
* Approximately 95% test coverage in FATE.
 +
* AAC Conformance sweep
 +
* Make sure API/ABI changelog is up-to-date
 +
 +
=== Release 0.6 "Works with HTML5" ===
 +
 +
Pending features that would be nice to have in 0.6
 +
 +
* LATM demuxing support
 +
* Theora speedup work
  
 
==Release Criteria==
 
==Release Criteria==
 
* make test passes.
 
* make test passes.
* FATE test converage passes for all platforms of interest.
+
* FATE test coverage passes for all platforms of interest.
 
* All 'important' bugs reported in roundup fixed/closed.
 
* All 'important' bugs reported in roundup fixed/closed.
 +
:Except 46, 127 and possibly 192 and 452 --[[User:Ce|Ce]] 05:36, 3 February 2010 (EST)
 
* No half-implemented functionality that may break existing user apps.
 
* No half-implemented functionality that may break existing user apps.
 
* Endurance/memleak testing on film-length files.
 
* Endurance/memleak testing on film-length files.
Line 14: Line 24:
 
==Rationale for releases==
 
==Rationale for releases==
 
* Provide endorsed snapshots for external software developers to develop against
 
* Provide endorsed snapshots for external software developers to develop against
* Avoid sitation where external software developers using SVN head when head has transient limitations.
+
* Avoid situation where external software developers using SVN head when head has transient limitations.
 
* Discourage external software developers using ancient snapshots that we don't support.
 
* Discourage external software developers using ancient snapshots that we don't support.
 +
 +
==Release Process==
 +
* Create a branch in Subversion.
 +
* Add VERSION file that hardcodes 0.6.
 +
* Create release tarballs (repeat the process for gzip compression)
 +
** svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.6/ ffmpeg-0.6
 +
** tar -cjf ffmpeg-0.6.tar.bz2 ffmpeg-0.6
 +
** md5sum ffmpeg-0.6.tar.bz2 > ffmpeg-0.6.tar.bz2.md5
 +
** sha1sum ffmpeg-0.6.tar.bz2 > ffmpeg-0.6.tar.bz2.sha
 +
** signatures from the release managers (concatenate all signatures into one file)
 +
*** gpg --armor --detach-sign ffmpeg-0.6.tar.bz2
 +
* Upload to ffmpeg.org
 +
* Update website
 +
* Who needs to be notified?
 +
** Major dependent projects, major distribution package maintainers --[[User:Rathann|Rathann]] 09:43, 29 January 2009 (EST)
 +
 +
 +
==Release Notes/Press release English version==
 +
 +
* To start with just the changelog. To be transformed into something nice.
 +
* Group things in old and new technology and related areas.
 +
* Remove uninteresting changelog items, ie deprecation stuff.
 +
* Amount of added/changed/removed code lines since last release.
 +
* Amount of people involved
 +
* Time since last release
 +
* Arm optimizations
 +
 +
  7 - PB-frame decoding for H.263
 +
  8 - deprecated vhook subsystem removed
 +
  9 - deprecated old scaler removed
 +
  10 - VQF demuxer
 +
  11 - Alpha channel scaler
 +
  12 - PCX encoder
 +
  13 - RTP packetization of H.263
 +
  14 - RTP packetization of AMR
 +
  15 - RTP depacketization of Vorbis
 +
  16 - CorePNG decoding support
 +
  17 - Cook multichannel decoding support
 +
  18 - introduced avlanguage helpers in libavformat
 +
  19 - 8088flex TMV demuxer and decoder
 +
  20 - per-stream language-tags extraction in asfdec
 +
  21 - V210 decoder and encoder
 +
  22 - remaining GPL parts in AC-3 decoder converted to LGPL
 +
  23 - QCP demuxer
 +
  24 - SoX native format muxer and demuxer
 +
  25 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
 +
  26 - DPX image decoder
 +
  27 - Electronic Arts Madcow decoder
 +
  28 - DivX (XSUB) subtitle encoder
 +
  29 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
 +
  30 - experimental AAC encoder
 +
  31 - RTP depacketization of ASF and RTSP from WMS servers
 +
  32 - RTMP support in libavformat
 +
  33 - noX handling for OPT_BOOL X options
 +
  34 - Wave64 demuxer
 +
  35 - IEC-61937 compatible Muxer
 +
  36 - TwinVQ decoder
 +
  37 - Bluray (PGS) subtitle decoder
 +
  38 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
 +
  39 - WMA Pro decoder
 +
  40 - Core Audio Format demuxer
 +
  41 - Atrac1 decoder
 +
  42 - MD STUDIO audio demuxer
 +
  43 - RF64 support in WAV demuxer
 +
  44 - MPEG-4 Audio Lossless Coding (ALS) decoder
 +
  45 - -formats option split into -formats, -codecs, -bsfs, and -protocols
 +
  46 - IV8 demuxer
 +
  47 - CDG demuxer and decoder
 +
  48 - R210 decoder
 +
  49 - Auravision Aura 1 and 2 decoders
 +
  50 - Deluxe Paint Animation playback system
 +
  51 - SIPR decoder
 +
  52 - Adobe Filmstrip muxer and demuxer
 +
  53 - RTP depacketization of H.263
 +
  54 - Bink demuxer and audio/video decoders
 +
  55 - enable symbol versioning by default for linkers that support it
 +
  56 - IFF PBM/ILBM bitmap decoder
 +
  57 - concat protocol
 +
  58 - Indeo 5 decoder
 +
  59 - RTP depacketization of AMR
 +
  60 - WMA Voice decoder
 +
  61 - ffprobe tool
 +
  62 - AMR-NB decoder
 +
  63 - RTSP muxer
 +
  64 - HE-AAC v1 decoder
 +
  65 - Kega Game Video (KGV1) decoder
 +
  66 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
 +
  67 - RTP depacketization of Theora
 +
  68 - HTTP Digest authentication
 +
  69 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
 +
  70 - Psygnosis YOP demuxer and video decoder
 +
  71 - spectral extension support in the E-AC-3 decoder
 +
  72 - unsharp video filter
 +
  
 
[[Category:FFmpeg]]
 
[[Category:FFmpeg]]

Latest revision as of 04:33, 12 May 2010

Ideas and suggestions concerning FFmpeg software releases.

Things that need doing

  • Fix SVQ3 regression test?
  • Approximately 95% test coverage in FATE.
  • AAC Conformance sweep
  • Make sure API/ABI changelog is up-to-date

Release 0.6 "Works with HTML5"

Pending features that would be nice to have in 0.6

  • LATM demuxing support
  • Theora speedup work

Release Criteria

  • make test passes.
  • FATE test coverage passes for all platforms of interest.
  • All 'important' bugs reported in roundup fixed/closed.
Except 46, 127 and possibly 192 and 452 --Ce 05:36, 3 February 2010 (EST)
  • No half-implemented functionality that may break existing user apps.
  • Endurance/memleak testing on film-length files.

Rationale for releases

  • Provide endorsed snapshots for external software developers to develop against
  • Avoid situation where external software developers using SVN head when head has transient limitations.
  • Discourage external software developers using ancient snapshots that we don't support.

Release Process

  • Create a branch in Subversion.
  • Add VERSION file that hardcodes 0.6.
  • Create release tarballs (repeat the process for gzip compression)
    • svn export svn://svn.ffmpeg.org/ffmpeg/tags/0.6/ ffmpeg-0.6
    • tar -cjf ffmpeg-0.6.tar.bz2 ffmpeg-0.6
    • md5sum ffmpeg-0.6.tar.bz2 > ffmpeg-0.6.tar.bz2.md5
    • sha1sum ffmpeg-0.6.tar.bz2 > ffmpeg-0.6.tar.bz2.sha
    • signatures from the release managers (concatenate all signatures into one file)
      • gpg --armor --detach-sign ffmpeg-0.6.tar.bz2
  • Upload to ffmpeg.org
  • Update website
  • Who needs to be notified?
    • Major dependent projects, major distribution package maintainers --Rathann 09:43, 29 January 2009 (EST)


Release Notes/Press release English version

  • To start with just the changelog. To be transformed into something nice.
  • Group things in old and new technology and related areas.
  • Remove uninteresting changelog items, ie deprecation stuff.
  • Amount of added/changed/removed code lines since last release.
  • Amount of people involved
  • Time since last release
  • Arm optimizations
  7 - PB-frame decoding for H.263
  8 - deprecated vhook subsystem removed
  9 - deprecated old scaler removed
 10 - VQF demuxer
 11 - Alpha channel scaler
 12 - PCX encoder
 13 - RTP packetization of H.263
 14 - RTP packetization of AMR
 15 - RTP depacketization of Vorbis
 16 - CorePNG decoding support
 17 - Cook multichannel decoding support
 18 - introduced avlanguage helpers in libavformat
 19 - 8088flex TMV demuxer and decoder
 20 - per-stream language-tags extraction in asfdec
 21 - V210 decoder and encoder
 22 - remaining GPL parts in AC-3 decoder converted to LGPL
 23 - QCP demuxer
 24 - SoX native format muxer and demuxer
 25 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
 26 - DPX image decoder
 27 - Electronic Arts Madcow decoder
 28 - DivX (XSUB) subtitle encoder
 29 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
 30 - experimental AAC encoder
 31 - RTP depacketization of ASF and RTSP from WMS servers
 32 - RTMP support in libavformat
 33 - noX handling for OPT_BOOL X options
 34 - Wave64 demuxer
 35 - IEC-61937 compatible Muxer
 36 - TwinVQ decoder
 37 - Bluray (PGS) subtitle decoder
 38 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
 39 - WMA Pro decoder
 40 - Core Audio Format demuxer
 41 - Atrac1 decoder
 42 - MD STUDIO audio demuxer
 43 - RF64 support in WAV demuxer
 44 - MPEG-4 Audio Lossless Coding (ALS) decoder
 45 - -formats option split into -formats, -codecs, -bsfs, and -protocols
 46 - IV8 demuxer
 47 - CDG demuxer and decoder
 48 - R210 decoder
 49 - Auravision Aura 1 and 2 decoders
 50 - Deluxe Paint Animation playback system
 51 - SIPR decoder
 52 - Adobe Filmstrip muxer and demuxer
 53 - RTP depacketization of H.263
 54 - Bink demuxer and audio/video decoders
 55 - enable symbol versioning by default for linkers that support it
 56 - IFF PBM/ILBM bitmap decoder
 57 - concat protocol
 58 - Indeo 5 decoder
 59 - RTP depacketization of AMR
 60 - WMA Voice decoder
 61 - ffprobe tool
 62 - AMR-NB decoder
 63 - RTSP muxer
 64 - HE-AAC v1 decoder
 65 - Kega Game Video (KGV1) decoder
 66 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
 67 - RTP depacketization of Theora
 68 - HTTP Digest authentication
 69 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
 70 - Psygnosis YOP demuxer and video decoder
 71 - spectral extension support in the E-AC-3 decoder
 72 - unsharp video filter