update Changelog
[libav.git] / Changelog
1Entries are sorted chronologically from oldest to youngest within each release,
2releases are sorted from youngest to oldest.
4version 9.4:
5- atrac3: avoid oversized shifting in decode_bytes()
6- eamad: allocate a dummy reference frame when the real one is missing
7- ffv1: fix calculating slice dimensions for version 2
8- flacdec: simplify bounds checking in flac_probe()
9- h264: check for luma and chroma bit dept being equal (CVE-2013-2277)
10- hqdn3d: Fix out of array read in LOWPASS
11- iff: validate CMAP palette size (CVE-2013-2495)
12- ivi_common: do not call MC for intra frames when dc_transform is unset
13- libmp3lame: use the correct remaining buffer size when flushing
14- lzo: fix overflow checking in copy_backptr()
15- mp3dec: Fix VBR bit rate parsing
16- png: use av_mallocz_array() for the zlib zalloc function
17- roqvideodec: fix a potential infinite loop in roqvideo_decode_frame()
18- shorten: fix various programming mistakes
19- vf_gradfun: fix uninitialized variable use
20- vf_hqdn3d: fix uninitialized variable use
21- vmdaudio: fix invalid reads when packet size is not a multiple of chunk size
22- wmadec: require block_align to be set
23- wmaprodec: require block_align to be set
24- wmaprodec: return an error, not 0, when the input is too small
25- xxan: fix invalid memory access in xan_decode_frame_type0()
27version 9.3:
28- h264: fix deadlocks with broken/fuzzed files
29- flvdec: make decoder more robust
30- vorbisdec: fix buffer overflow (CVE-2013-0894)
31- ac3dec: validate channel output mode against channel count
32- doc: minor improvements
88ae77ce 34version 9.2:
35- loco: check that there is data left after decoding a plane.
36- mov: use the format context for logging.
37- lagarith: avoid infinite loop in lag_rac_refill() with corrupted files
38- flicvideo: avoid an infinite loop in byte run compression
39- av_memcpy_backptr: avoid an infinite loop for back = 0
40- mlpdec: do not try to allocate a zero-sized output buffer.
41- qtrle: add more checks against pixel_ptr being negative.
42- 4xm: check the return value of read_huffman_tables().
43- cavs: initialize various context tables, avoids crashes with corrupted files
44- x86/H.264: Don't use redzone in AVX h264_deblock on Win64
45- VQA video: check chunk sizes before reading chunks
46- RoQ video decoder: check dimensions validity
47- QDM2: check array index before use, fix out of array accesses
48- mpegvideo: Do REBASE_PICTURE with byte pointers
49- SVQ3: unbreak decoding
50- libopencore-amrwb: Make AMR-WB ifdeffery more precise
51- libopencore-amr: Conditionally compile decoder and encoder bits
52- arm: Fall back to runtime cpu feature detection via /proc/cpuinfo
53- xxan: properly handle odd heights
9d5f16f6 54- msrledec: check bounds before constructing a possibly invalid pointer (CVE-2496)
55- qtrle: fix the topmost line for 1bit
56- aasc: fix output for msrle compression
57- yop: check for input overreads
58- yop: check that extradata is large enough
59- fraps: fix off-by one bug for version 1
60- vf_delogo: fix copying the input frame
61- vf_delogo: fix an uninitialized read
62- dnxhdenc: fix invalid reads in dnxhd_mb_var_thread()
63- ATRAC3: use correct loop variable in add_tonal_components()
64- MLP: store the channel layout for each substream
65- MLP decoder: TrueHD: use Libav channel order
66- x86: ac3: Fix HAVE_MMXEXT condition to only refer to external assembly
67- arm: vp8: Fix the plain-armv6 version of vp8_luma_dc_wht
68- lavr: call mix_function_init() in ff_audio_mix_set_matrix()
69- rtpenc_chain: Use the original AVFormatContext for getting payload type
70- rtp: Make sure the output format pointer is set
71- rtp: Make sure priv_data is set before reading it
72- videodsp_armv5te: remove #if HAVE_ARMV5TE_EXTERNAL
73- get_bits: change the failure condition in init_get_bits
74- mpegvideo: fix loop condition in draw_line()
75- fate: update ref after rv30_loop_filter fix
76- RV30: fix masking in rv30_loop_filter()
77- libcdio: support recent cdio-paranoia
78- Theora: Skip zero-sized headers
79- H.264: add 3 pixels below for subpixel filter wait position
80- H.264: fix ff_generate_sliding_window_mmcos() prototype
81- H.264: don't clobber mmco opcode tables for non-first slice headers
82- libx264: use the library specific default rc_initial_buffer_occupancy
83- lavc: set the default rc_initial_buffer_occupancy
84- lavc: introduce the convenience function init_get_bits8
85- lavc: check for overflow in init_get_bits
86- configure: enable pic for shared libs on AArch64
87- zmbv: Reset the decoder on keyframe errors
88- VC1 decoder: prevent a crash due missing pred_flag parameter
89- matroska: Fix use after free
90- VP3: Fix double free in vp3_decode_end()
93version 9.1:
94- Fix a crash on windows platforms related to automatic stack alignment
95 in libavresample
88ae77ce 96- Fix memleaks in the Ogg demuxer. Related to CVE-2012-2882
3f89b49b 99version 9:
d8fd06c3 100- av_basename and av_dirname
c1ea44c5 101- adobe and limelight publisher authentication in RTMP
d8fd06c3 102
3f89b49b 103
d8fd06c3 104version 9_beta3:
105- ashowinfo audio filter
106- 24-bit FLAC encoding
b384e031 107- audio volume filter
b64ba37c 108- deprecated the avconv -vol option. the volume filter is to be used instead.
5e1bbb8c 109- multi-channel ALAC encoding up to 7.1
57231e4d 110- TAK demuxer, parser, and decoder
acb571c8 111- adaptive frame-level multithreading for H.264
114version 9_beta2:
58b619c8 115- metadata (INFO tag) support in WAV muxer
22310eef 116- support for building DLLs using MSVC
ada51a33 117- remove avserver daemon mode
118- support building on the Plan 9 operating system
119- ffv1: support version 1.3
d1ad6bdb 120
122version 9_beta1:
d1ad6bdb 124- XWD encoder and decoder
83988d58 125- Support for fragmentation in the mov/mp4 muxer
4ddd54da 126- ISMV (Smooth Streaming) muxer
dc4e5748 127- CDXL demuxer and decoder
1a265f61 128- Apple ProRes encoder
d7840529 129- Sun Rasterfile Encoder
b315042c 130- remove libpostproc
32253747 131- ID3v2 attached pictures reading and writing
9d25f1f6 132- WMA Lossless decoder
0afd8f12 133- XBM encoder
18ba94c6 134- RealAudio Lossless decoder
0e714f88 135- ZeroCodec decoder
e06d2dfc 136- drop support for avconv without libavfilter
c8af852b 137- add libavresample audio conversion library
d89eca50 138- audio filters support in libavfilter and avconv
54c5dd89 139- add fps filter
afeb3590 140- audio split filter
c7448c18 141- audio mix filter
142- avprobe output is now standard INI or JSON. The old format can still
143 be used with -of old.
c6061443 144- Indeo Audio decoder
d6251368 145- channelsplit audio filter
8e50c57d 146- RTMPT protocol support
3641b048 147- iLBC encoding/decoding via libilbc
005c80b6 148- Microsoft Screen 1 decoder
dc07fb6f 149- join audio filter
41e637e4 150- audio channel mapping filter
edf35d83 151- Microsoft ATC Screen decoder
a8ad6ffa 152- RTSP listen mode
781888da 153- TechSmith Screen Codec 2 decoder
37eeb5e2 154- AAC encoding via libfdk-aac
5b7e3a19 155- Microsoft Expression Encoder Screen decoder
6aedabc9 156- RTMPS protocol support
86991ce2 157- RTMPTS protocol support
453c02f9 158- JPEG 2000 encoding support through OpenJPEG
55c3a4f6 159- G.723.1 demuxer and decoder
acd554c1 160- RTMPE protocol support
08cd95e8 161- RTMPTE protocol support
45eaac02 162- Canopus Lossless Codec decoder
038c0b1e 163- avconv -shortest option is now per-output file,
bbcedade 164 -pass and -passlogfile are now per-output stream
1ab5a780 165- Ut Video encoder
ee769c6a 166- Microsoft Screen 2 decoder
3c198154 167- RTP depacketization of JPEG
62c9ae11 168- Smooth Streaming live segmenter muxer
cee1950b 169- RTP packetization of JPEG
6cb8c854 170- Opus decoder and encoder using libopus
fb722a90 171- remove -same_quant, it hasn't worked for years
22310eef 172- support for building with MSVC
c6061443 173
888505df 174
4b63cc18 175version 0.8:
177- GSM audio parser
ffa0923e 178- SMJPEG muxer
cf53a212 181version 0.8_beta2:
c11b92b3 182
e4e30256 183- Automatic thread count based on detection number of (available) CPU cores
184- Deprecate libpostproc. If desired, the switch --enable-postproc will
185 enable it but it may be removed in a later Libav release.
186- rv34: frame-level multi-threading
187- optimized iMDCT transform on x86 using SSE for for mpegaudiodec
190version 0.8_beta1:
a4ad9438 192- BWF muxer
c2d23309 193- Flash Screen Video 2 decoder
4d58e4cb 194- ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
195- ffmpeg deprecated, added avconv, which is almost the same for now, except
196for a few incompatible changes in the options, which will hopefully make them
197easier to use. The changes are:
198 * The options placement is now strictly enforced! While in theory the
199 options for ffmpeg should be given in [input options] -i INPUT [output
200 options] OUTPUT order, in practice it was possible to give output options
201 before the -i and it mostly worked. Except when it didn't - the behavior was
202 a bit inconsistent. In avconv, it is not possible to mix input and output
203 options. All non-global options are reset after an input or output filename.
204 * All per-file options are now truly per-file - they apply only to the next
205 input or output file and specifying different values for different files
206 will now work properly (notably -ss and -t options).
207 * All per-stream options are now truly per-stream - it is possible to
208 specify which stream(s) should a given option apply to. See the Stream
209 specifiers section in the avconv manual for details.
210 * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
211 sense that they're specified after the output filename instead of before,
212 like all other options. In avconv this irregularity is removed, all options
213 apply to the next input or output file.
214 * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
215 irregular and highly confusing, they were also redundant. In avconv the -map
216 option will create new streams in the output file and map input streams to
217 them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
218 each stream in the first input file.
219 * The -map option now has slightly different and more powerful syntax:
220 + Colons (':') are used to separate file index/stream type/stream index
221 instead of dots. Comma (',') is used to separate the sync stream instead
222 of colon.. This is done for consistency with other options.
223 + It's possible to specify stream type. E.g. -map 0:a:2 creates an
224 output stream from the third input audio stream.
225 + Omitting the stream index now maps all the streams of the given type,
226 not just the first. E.g. -map 0:s creates output streams for all the
227 subtitle streams in the first input file.
228 + Since -map can now match multiple streams, negative mappings were
320d7693 229 introduced. Negative mappings disable some streams from an already
230 defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
231 all the stream in the first input file, except for the second audio
232 stream'.
233 * There is a new option -c (or -codec) for choosing the decoder/encoder to
234 use, which allows to precisely specify target stream(s) consistently with
235 other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
236 libvorbis sets the codec for the first audio stream and -c copy copies all
237 the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
238 aliases to -c:v/a/s
320d7693 239 * It is now possible to precisely specify which stream should an AVOption
240 apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
241 -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
242 syntax is deprecated and will stop working soon.
243 * -map_chapters now takes only an input file index and applies to the next
244 output file. This is consistent with how all the other options work.
245 * -map_metadata now takes only an input metadata specifier and applies to
246 the next output file. Output metadata specifier is now part of the option
247 name, similarly to the AVOptions/map/codec feature above.
248 * -metadata can now be used to set metadata on streams and chapters, e.g.
249 -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
250 This made -vlang/-alang/-slang options redundant, so they were removed.
251 * -qscale option now uses stream specifiers and applies to all streams, not
252 just video. I.e. plain -qscale number would now apply to all streams. To get
253 the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
254 and -aq is now an alias for -q:a.
255 * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
256 uses stream specifiers. Use -bsf:v/a/s instead of the old options.
257 * -itsscale option now uses stream specifiers, so its argument is only the
258 scale parameter.
259 * -intra option was removed, use -g 0 for the same effect.
260 * -psnr option was removed, use -flags +psnr for the same effect.
261 * -vf option is now an alias to the new -filter option, which uses stream specifiers.
262 * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
263 * -vtag/-atag/-stag options are now aliases to the new -tag option.
c6c6c1aa 264- XMV demuxer
45ecda85 265- Windows Media Image decoder
dcb9f6a2 266- LATM muxer/demuxer
ee42716b 267- showinfo filter
615baa13 268- split filter
e417d80d 269- libcdio-paranoia input device for audio CD grabbing
d763fb7d 270- select filter
be64629a 271- Apple ProRes decoder
4ca59d19 272- CELT in Ogg demuxing
51757ac7 273- VC-1 interlaced decoding
8fe0c527 274- lut, lutrgb, and lutyuv filters
ce6b6ef6 275- boxblur filter
0d8506b8 276- Ut Video decoder
b606a017 277- Speex encoding via libspeex
76741b0e 278- 4:2:2 H.264 decoding support
a7476298 279- 4:2:2 and 4:4:4 H.264 encoding with libx264
0de9c41f 280- Pulseaudio input device
594b54b5 281- replacement Indeo 3 decoder
183baead 282- TLS/SSL and HTTPS protocol support
283- AVOptions API rewritten and documented
284- most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
285 AVCodecContext deprecated. Codec private options should be used instead.
286- Properly working defaults in libx264 wrapper, support for native presets.
287- Encrypted OMA files support
f545e006 288- Discworld II BMV decoding support
c433a3f9 289- VBLE Decoder
ac3dbb4d 290- OS X Video Decoder Acceleration (VDA) support
779ef255 291- CRI ADX audio format muxer and demuxer
f28070a1 292- Playstation Portable PMP format demuxer
c8b27a0e 293- PCM format support in OMA demuxer
e93947b7 294- CLJR encoder
19341c58 295- Dxtory capture format decoder
80f6c0bb 296- v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
f40e7eb5 297- OpenMG Audio muxer
02e8f032 298- Simple segmenting muxer
299- Indeo 4 decoder
300- SMJPEG demuxer
bed31c7e 303version 0.7:
2db272e9 304
aa47c35d 305- E-AC-3 audio encoder
b95d19b0 306- ac3enc: add channel coupling support
307- floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
308- H.264/MPEG frame-level multithreading
309- av_metadata_* functions renamed to av_dict_* and moved to libavutil
310- 4:4:4 H.264 decoding support
311- 10-bit H.264 optimizations for x86
b047941d 312- bump libswscale for recently reported ABI break
aa47c35d 313
315version 0.7_beta2:
b047941d 317- VP8 frame-level multithreading
bed31c7e 318- NEON optimizations for VP8
319- removed a lot of deprecated API cruft
320- FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
e27ce0ee 321- DPX image encoder
9aa91043 322- SMPTE 302M AES3 audio decoder
b047941d 323- ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
bed31c7e 324- 9bit and 10bit per sample support in the H.264 decoder
e27ce0ee 325
327version 0.7_beta1:
316d6c15 329- WebM support in Matroska de/muxer
21d52447 330- low overhead Ogg muxing
a2403986 331- MMS-TCP support
ee0e9146 332- VP8 de/encoding via libvpx
173bb37f 333- Demuxer for On2's IVF format
a526d619 334- Pictor/PC Paint decoder
a2063901 335- HE-AAC v2 decoder
41f91b5f 336- libfaad2 wrapper removed
e83aed04 337- DTS-ES extension (XCh) decoding support
db7d307f 338- native VP8 decoder
680b2321 339- RTSP tunneling over HTTP
4449df6b 340- RTP depacketization of SVQ3
2d525ef4 341- -strict inofficial replaced by -strict unofficial
066ce8c9 342- ffplay -exitonkeydown and -exitonmousedown options added
b576934d 343- native GSM / GSM MS decoder
a59096e4 344- RTP depacketization of QDM2
5a717094 345- ANSI/ASCII art playback system
e8723e24 346- Lego Mindstorms RSO de/muxer
ba2c508d 347- SubRip subtitle file muxer and demuxer
de295976 348- Chinese AVS encoding via libxavs
530bbe96 349- ffprobe -show_packets option added
91af5601 350- RTP packetization of Theora and Vorbis
1ddc176e 351- RTP depacketization of MP4A-LATM
51291e60 352- RTP packetization and depacketization of VP8
a1e171df 353- hflip filter
cd223e0b 354- Apple HTTP Live Streaming demuxer
7f50caa7 355- a64 codec
b8521394 356- MMS-HTTP support
21e681ba 357- G.722 ADPCM audio encoder/decoder
43836928 358- R10k video decoder
6ebf0bfc 359- ocv_smooth filter
47941088 360- frei0r wrapper filter
2bc05d35 361- change crop filter syntax to width:height:x:y
75b67a8a 362- make the crop filter accept parametric expressions
6afd569e 363- make ffprobe accept AVFormatContext options
5900deeb 364- yadif filter
13fabd7a 365- blackframe filter
8878e3b2 366- Demuxer for Leitch/Harris' VR native stream format (LXF)
3ece3e4c 367- RTP depacketization of the X-QT QuickTime format
01c8d258 368- SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
68b79bfc 369- cropdetect filter
5879ea6d 370- ffmpeg -crop* options removed
43945b27 371- transpose filter added
4ad08021 372- ffmpeg -force_key_frames option added
44594cc7 373- demuxer for receiving raw rtp:// URLs without an SDP description
136e19e1 374- single stream LATM/LOAS decoder
a532bb39 375- setpts filter added
b047941d 376- Win64 support for optimized x86 assembly functions
ba83c4bf 377- MJPEG/AVI1 to JPEG/JFIF bitstream filter
c99f9b0a 378- ASS subtitle encoder and decoder
b047941d 379- IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
58935b25 380- overlay filter added
2fb21bf4 381- rename aspect filter to setdar, and pixelaspect to setsar
3b39e273 382- IEC 61937 demuxer
9d09ebf1 383- Mobotix .mxg demuxer
f8608dca 384- frei0r source added
a4dc7aa5 385- hqdn3d filter added
35014efc 386- RTP depacketization of QCELP
475ae04a 387- FLAC parser added
d5f187fd 388- gradfun filter added
2b2a597e 389- AMR-WB decoder
3579b405 390- replace the ocv_smooth filter with a more generic ocv filter
82ca054a 391- Windows Televison (WTV) demuxer
fd5b124d 392- FFmpeg metadata format muxer and demuxer
2c77c906 393- SubRip (srt) subtitle decoder
6fd96d1a 394- floating-point AC-3 encoder added
d267b339 395- Lagarith decoder
fbd56159 396- ffmpeg -copytb option added
54bc6403 397- IVF muxer added
44ddfd47 398- Wing Commander IV movies decoder added
9409c381 399- movie source added
ccfcddb3 400- Bink version 'b' audio and video decoder
402f9ad5 401- Bitmap Brothers JV playback system
dc6fdad5 402- Apple HTTP Live Streaming protocol handler
15d59d2c 403- sndio support for playback and record
c6f95144 404- Linux framebuffer input device added
42315dab 405- Chronomaster DFA decoder
ce02f9be 406- Mobotix MxPEG decoder
d89e738a 407- AAC encoding via libvo-aacenc
f502ff3f 408- AMR-WB encoding via libvo-amrwbenc
ad4c5034 409- xWMA demuxer
2f84bb42 410- fieldorder video filter added
413version 0.6:
2db272e9 415- PB-frame decoding for H.263
b11163c8 416- deprecated vhook subsystem removed
3444c914 417- deprecated old scaler removed
616e899c 418- VQF demuxer
b3b5946c 419- Alpha channel scaler
effcedf7 420- PCX encoder
9edfaf3c 421- RTP packetization of H.263
08e696c0 422- RTP packetization of AMR
e6327fba 423- RTP depacketization of Vorbis
e9356be5 424- CorePNG decoding support
9189d7eb 425- Cook multichannel decoding support
276f8e2b 426- introduced avlanguage helpers in libavformat
f0b19bd3 427- 8088flex TMV demuxer and decoder
5f1ac36d 428- per-stream language-tags extraction in asfdec
ca0bb1c4 429- V210 decoder and encoder
de08ebe3 430- remaining GPL parts in AC-3 decoder converted to LGPL
cdce0fb8 431- QCP demuxer
cbfe5bee 432- SoX native format muxer and demuxer
0b175caa 433- AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
94d3d6a4 434- DPX image decoder
c63ea92b 435- Electronic Arts Madcow decoder
a4276ba2 436- DivX (XSUB) subtitle encoder
0a4a0aa7 437- nonfree libamr support for AMR-NB/WB decoding/encoding removed
57a80d79 438- experimental AAC encoder
c2f3eec4 439- RTP depacketization of ASF and RTSP from WMS servers
9fd6b843 440- RTMP support in libavformat
3106f489 441- noX handling for OPT_BOOL X options
740e89cf 442- Wave64 demuxer
ab1eff9c 443- IEC-61937 compatible Muxer
7bd47335 444- TwinVQ decoder
c58b82a2 445- Bluray (PGS) subtitle decoder
5dd3707b 446- LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
57a80d79 447- WMA Pro decoder
5f14b565 448- Core Audio Format demuxer
449- Atrac1 decoder
450- MD STUDIO audio demuxer
811e0fc2 451- RF64 support in WAV demuxer
99971952 452- MPEG-4 Audio Lossless Coding (ALS) decoder
0584b718 453- -formats option split into -formats, -codecs, -bsfs, and -protocols
7c3c53c8 454- IV8 demuxer
a3d995c1 455- CDG demuxer and decoder
4aaab0a3 456- R210 decoder
ce293510 457- Auravision Aura 1 and 2 decoders
e6565055 458- Deluxe Paint Animation playback system
d140b025 459- SIPR decoder
83ab7f18 460- Adobe Filmstrip muxer and demuxer
45aa9080 461- RTP depacketization of H.263
342c7dfd 462- Bink demuxer and audio/video decoders
4ebaec79 463- enable symbol versioning by default for linkers that support it
b9e06ddd 464- IFF PBM/ILBM bitmap decoder
084eb95f 465- concat protocol
5bebe94d 466- Indeo 5 decoder
556aa7a1 467- RTP depacketization of AMR
468- WMA Voice decoder
469- ffprobe tool
4fe3edaa 470- AMR-NB decoder
6f5a3d0a 471- RTSP muxer
ed492b61 472- HE-AAC v1 decoder
bf354122 473- Kega Game Video (KGV1) decoder
59b4b540 474- VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
887af2aa 475- RTP depacketization of Theora
b26708d5 476- HTTP Digest authentication
0f943ce6 477- RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
38b9d8b8 478- Psygnosis YOP demuxer and video decoder
ca6e7708 479- spectral extension support in the E-AC-3 decoder
ac1c9564 480- unsharp video filter
910cde56 481- RTP hinting in the mov/3gp/mp4 muxer
482- Dirac in Ogg demuxing
483- seek to keyframes in Ogg
484- 4:2:2 and 4:4:4 Theora decoding
485- 35% faster VP3/Theora decoding
486- faster AAC decoding
487- faster H.264 decoding
d31ba231 488- RealAudio 1.0 (14.4K) encoder
de08ebe3 489
2db272e9 490
491version 0.5:
06ab9cff 493- DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
9d53d58e 494- TechSmith Camtasia (TSCC) video decoder
d0a0bbd2 495- IBM Ultimotion (ULTI) video decoder
496- Sierra Online audio file demuxer and decoder
497- Apple QuickDraw (qdrw) video decoder
22052247 498- Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
ad81a9fe 499- Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
ab711b3c 500- Miro VideoXL (VIXL) video decoder
b06b45c4 501- H.261 video encoder
acfd8f0f 502- QPEG video decoder
353147ed 503- Nullsoft Video (NSV) file demuxer
13dfd2b9 504- Shorten audio decoder
9c7fb608 505- LOCO video decoder
115329f1 506- Apple Lossless Audio Codec (ALAC) decoder
a8a15e9d 507- Winnov WNV1 video decoder
589f8220 508- Autodesk Animator Studio Codec (AASC) decoder
bfaad39f 509- Indeo 2 video decoder
b81f8949 510- Fraps FPS1 video decoder
e0db8cfb 511- Snow video encoder/decoder
af4ca324 512- Sonic audio encoder/decoder
108ab268 513- Vorbis audio decoder
af4ca324 514- Macromedia ADPCM decoder
515- Duck TrueMotion 2 video decoder
516- support for decoding FLX and DTA extensions in FLIC files
b2909f1a 517- H.264 custom quantization matrices support
a8289180 518- ffserver fixed, it should now be usable again
8d1018bf 519- QDM2 audio decoder
8a2d410e 520- Real Cooker audio decoder
bf3027c8 521- TrueSpeech audio decoder
522- WMA2 audio decoder fixed, now all files should play correctly
523- RealAudio 14.4 and 28.8 decoders fixed
108ab268 524- JPEG-LS decoder
525- build system improvements
526- tabs and trailing whitespace removed from the codebase
108ab268 527- CamStudio video decoder
f11288da 528- AIFF/AIFF-C audio format, encoding and decoding
4accd1fd 529- ADTS AAC file reading and writing
ea395e8c 530- Creative VOC file reading and writing
4e114829 531- American Laser Games multimedia (*.mm) playback system
6a7d2c3d 532- Zip Motion Blocks Video decoder
58cf42fa 533- improved Theora/VP3 decoder
8a2d410e 534- True Audio (TTA) decoder
26376701 535- AVS demuxer and video decoder
108ab268 536- JPEG-LS encoder
348efc18 537- Smacker demuxer and decoder
dfca23e3 538- NuppelVideo/MythTV demuxer and RTjpeg decoder
fd7b1991 539- KMVC decoder
58cf42fa 540- MPEG-2 intra VLC support
2d974017 541- MPEG-2 4:2:2 encoder
0919e788 542- Flash Screen Video decoder
cc0bc648 543- GXF demuxer
6a09487e 544- Chinese AVS decoder
43dcf590 545- GXF muxer
07bf2af8 546- MXF demuxer
b394e39a 547- VC-1/WMV3/WMV9 video decoder
0ccd1bb5 548- MacIntel support
8ac17293 549- AVISynth support
eb57c889 550- VMware video decoder
551- VP5 video decoder
552- VP6 video decoder
730581f3 553- WavPack lossless audio decoder
3689cf16 554- Targa (.TGA) picture decoder
108ab268 555- Vorbis audio encoder
dc56e0de 556- Delphine Software .cin demuxer/audio and video decoder
29f86228 557- Tiertex .seq demuxer/video decoder
f7bc5837 558- MTV demuxer
716222db 559- TIFF picture encoder and decoder
06d392a7 560- GIF picture decoder
58cf42fa 561- Intel Music Coder decoder
6a7d2c3d 562- Zip Motion Blocks Video encoder
185c7b6b 563- Musepack decoder
8adc51f2 564- Flash Screen Video encoder
150d2772 565- Theora encoding via libtheora
52548eee 566- BMP encoder
039cd4a7 567- WMA encoder
346a655d 568- GSM-MS encoder and decoder
01ca9ac3 569- DCA decoder
33a0dd37 570- DXA demuxer and decoder
52b6bad2 571- DNxHD decoder
efb0c399 572- Gamecube movie (.THP) playback system
a5fbe001 573- Blackfin optimizations
9a0ddd09 574- Interplay C93 demuxer and video decoder
1e6c6759 575- Bethsoft VID demuxer and video decoder
8e952e4d 576- CRYO APC demuxer
10e26bc7 577- Atrac3 decoder
b46d68c6 578- V.Flash PTX decoder
58cf42fa 579- RoQ muxer, RoQ audio encoder
ad39f1a7 580- Renderware TXD demuxer and decoder
4d5588cf 581- extern C declarations for C++ removed from headers
82e60541 582- sws_flags command line option
ddcf4b5d 583- codebook generator
03e3e765 584- RoQ video encoder
d3b7406c 585- QTRLE encoder
d22e8442 586- OS/2 support removed and restored again
6ea67bbb 587- AC-3 decoder
58cf42fa 588- NUT muxer
108ab268 589- additional SPARC (VIS) optimizations
e09f7d61 590- Matroska muxer
58cf42fa 591- slice-based parallel H.264 decoding
bf4a1f17 592- Monkey's Audio demuxer and decoder
8787d837 593- AMV audio and video decoder
fc4cbc16 594- DNxHD encoder
d6c52130 595- H.264 PAFF decoding
636b13c5 596- Nellymoser ASAO decoder
66f7679c 597- Beam Software SIFF demuxer and decoder
f9def9cc 598- libvorbis Vorbis decoding removed in favor of native decoder
541432c3 599- IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
56dc1fdf 600- Ogg (Theora, Vorbis and FLAC) muxer
108ab268 601- The "device" muxers and demuxers are now in a new libavdevice library
602- PC Paintbrush PCX decoder
603- Sun Rasterfile decoder
920d3609 604- TechnoTrend PVA demuxer
77c1d04d 605- Linux Media Labs MPEG-4 (LMLM4) demuxer
b264a084 606- AVM2 (Flash 9) SWF muxer
9dc92a38 607- QT variant of IMA ADPCM encoder
39fc859e 608- VFW grabber
58cf42fa 609- iPod/iPhone compatible mp4 muxer
a7129de5 610- Mimic decoder
0f3444e1 611- MSN TCP Webcam stream demuxer
86b3cf7c 612- RL2 demuxer / decoder
613- IFF demuxer
614- 8SVX audio decoder
b00b15be 615- non-recursive Makefiles
b64c096b 616- BFI demuxer
74118c07 617- MAXIS EA XA (.xa) demuxer / decoder
2003d3da 618- BFI video decoder
ea662534 619- OMA demuxer
b517af05 620- MLP/TrueHD decoder
e1c74782 621- Electronic Arts CMV decoder
622- Motion Pixels Video decoder
623- Motion Pixels MVI demuxer
e44bbf62 624- removed animated GIF decoder/demuxer
51c3861e 625- D-Cinema audio muxer
cfc78718 626- Electronic Arts TGV decoder
833e90dd 627- Apple Lossless Audio Codec (ALAC) encoder
7d8f3de4 628- AAC decoder
eb6fc557 629- floating point PCM encoder/decoder
cedebde1 630- MXF muxer
108ab268 631- DV100 AKA DVCPRO HD decoder and demuxer
1f6a594d 632- E-AC-3 support added to AC-3 decoder
755ba886 633- Nellymoser ASAO encoder
0c86f89a 634- ASS and SSA demuxer and muxer
d8d12c15 635- liba52 wrapper removed
0ac1dc6f 636- SVQ3 watermark decoding support
f6958006 637- Speex decoding via libspeex
42b30357 638- Electronic Arts TGQ decoder
108ab268 639- RV40 decoder
73b458e3 640- QCELP / PureVoice decoder
108ab268 641- RV30 decoder
7906f3ca 642- hybrid WavPack support
7eb68edb 643- R3D REDCODE demuxer
115d095e 644- ALSA support for playback and record
d8964f3a 645- Electronic Arts TQI decoder
9a77d59a 646- OpenJPEG based JPEG 2000 decoder
58cf42fa 647- NC (NC4600) camera file demuxer
865780ae 648- Gopher client support
bd3f81f3 649- MXF D-10 muxer
650- generic metadata API
9d53d58e 652
653version 0.4.9-pre1:
4fa1c4fa 655- DV encoder, DV muxer
656- Microsoft RLE video decoder
657- Microsoft Video-1 decoder
070ed1bc 658- Apple Animation (RLE) decoder
42cad81a 659- Apple Graphics (SMC) decoder
660- Apple Video (RPZA) decoder
661- Cinepak decoder
662- Sega FILM (CPK) file demuxer
42cad81a 663- Westwood multimedia support (VQA & AUD files)
4120a53a 664- Id Quake II CIN playback support
665- 8BPS video decoder
666- FLIC playback support
667- RealVideo 2.0 (RV20) decoder
668- Duck TrueMotion v1 (DUCK) video decoder
da00f30e 669- Sierra VMD demuxer and video decoder
1defd2a8 670- MSZH and ZLIB decoder support
3b64893d 671- SVQ1 video encoder
1defd2a8 672- AMR-WB support
e0db8cfb 673- PPC optimizations
1defd2a8 674- rate distortion optimal cbp support
e0db8cfb 675- rate distorted optimal ac prediction for MPEG-4
676- rate distorted optimal lambda->qp support
677- AAC encoding with libfaac
678- Sunplus JPEG codec (SP5X) support
679- use Lagrange multipler instead of QP for ratecontrol
680- Theora/VP3 decoding support
1defd2a8 681- XA and ADX ADPCM codecs
e0db8cfb 682- export MPEG-2 active display area / pan scan
683- Add support for configuring with IBM XLC
684- floating point AAN DCT
685- initial support for zygo video (not complete)
686- RGB ffv1 support
687- new audio/video parser API
688- av_log() system
689- av_read_frame() and av_seek_frame() support
690- missing last frame fixes
691- seek by mouse in ffplay
692- noise reduction of DCT coefficients
693- H.263 OBMC & 4MV support
694- H.263 alternative inter vlc support
695- H.263 loop filter
696- H.263 slice structured mode
697- interlaced DCT support for MPEG-2 encoding
1defd2a8 698- stuffing to stay above min_bitrate
e0db8cfb 699- MB type & QP visualization
700- frame stepping for ffplay
701- interlaced motion estimation
702- alternate scantable support
703- SVCD scan offset support
704- closed GOP support
705- SSE2 FDCT
706- quantizer noise shaping
707- G.726 ADPCM audio codec
708- MS ADPCM encoding
709- multithreaded/SMP motion estimation
710- multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
711- multithreaded/SMP decoding for MPEG-2
712- FLAC decoder
713- Metrowerks CodeWarrior suppport
e0db8cfb 714- H.263+ custom pcf support
1defd2a8 715- nicer output for 'ffmpeg -formats'
e0db8cfb 716- Matroska demuxer
1defd2a8 717- SGI image format, encoding and decoding
718- H.264 loop filter support
719- H.264 CABAC support
f073a393 720- nicer looking arrows for the motion vector visualization
721- improved VCD support
722- audio timestamp drift compensation
e0db8cfb 723- MPEG-2 YUV 422/444 support
724- polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
725- better image scaling
e0db8cfb 726- H.261 support
727- correctly interleave packets during encoding
728- VIS optimized motion compensation
729- intra_dc_precision>0 encoding support
730- support reuse of motion vectors/MB types/field select values of the source video
731- more accurate deblock filter
732- padding support
733- many optimizations and bugfixes
055dc116 734- FunCom ISS audio file demuxer and according ADPCM decoding
2fdf638b 735
0ca3e336 736
737version 0.4.8:
e0db8cfb 739- MPEG-2 video encoding (Michael)
d9d8910b 740- Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
741- Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
742 and Mario Brito)
743- Xan DPCM audio decoder (Mario Brito)
186447f8 744- Interplay MVE playback subsystem (Mike Melanson)
745- Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
0ca3e336 747
b17e9c99 748version 0.4.7:
e07702ba 749
e0db8cfb 750- RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
124ba583 751 (originally from public domain player for Amiga at http://www.honeypot.net/audio)
e0db8cfb 752- current version now also compiles with older GCC (Fabrice)
753- 4X multimedia playback system including 4xm file demuxer (Mike
754 Melanson), and 4X video and audio codecs (Michael)
755- Creative YUV (CYUV) decoder (Mike Melanson)
756- FFV1 codec (our very simple lossless intra only codec, compresses much better
757 than HuffYUV) (Michael)
758- ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
759- tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
760 alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
761- ffplay has been replaced with a newer version which uses SDL (optionally)
e0db8cfb 762 for multiplatform support (Fabrice)
763- Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
764 by anonymous
765- AMR format has been added (Johannes Carlsson)
e0db8cfb 766- 3GP support has been added (Johannes Carlsson)
767- VP3 codec has been added (Mike Melanson)
768- more MPEG-1/2 fixes
769- better multiplatform support, MS Visual Studio fixes (various)
770- AltiVec optimizations (Magnus Damn and others)
e07702ba 771- SH4 processor support has been added (BERO)
772- new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
773- VOB streaming support (Brian Foley)
774- better MP3 autodetection (Andriy Rysin)
775- qpel encoding (Michael)
776- 4mv+b frames encoding finally fixed (Michael)
777- chroma ME (Michael)
778- 5 comparison functions for ME (Michael)
779- B-frame encoding speedup (Michael)
780- WMV2 codec (unfinished - Michael)
d3d10087 781- user specified diamond size for EPZS (Michael)
782- Playstation STR playback subsystem, still experimental (Mike and Michael)
783- ASV2 codec (Michael)
784- CLJR decoder (Alex)
d3d10087 785
e0db8cfb 786.. And lots more new enhancements and fixes.
e07702ba 787
0ca3e336 788
d3d10087 789version 0.4.6:
739d6efa 790
791- completely new integer only MPEG audio layer 1/2/3 decoder rewritten
792 from scratch
793- Recoded DCT and motion vector search with gcc (no longer depends on nasm)
794- fix quantization bug in AC3 encoder
795- added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
796- added prototype ffplay program
797- added GOB header parsing on H.263/H.263+ decoder (Juanjo)
798- bug fix on MCBPC tables of H.263 (Juanjo)
799- bug fix on DC coefficients of H.263 (Juanjo)
800- added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
801- now we can decode H.263 streams found in QuickTime files (Juanjo)
802- now we can decode H.263 streams found in VIVO v1 files(Juanjo)
644d98a4 803- preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
804- added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
805- now H.263 picture size is returned on the first decoded frame (Juanjo)
7f913a35 806- added first regression tests
e0db8cfb 807- added MPEG-2 TS demuxer
a31e01c5 808- new demux API for libav
6d291820 809- more accurate and faster IDCT (Michael)
e0db8cfb 810- faster and entropy-controlled motion search (Michael)
811- two pass video encoding (Michael)
812- new video rate control (Michael)
813- added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
814- great performance improvement of video encoders and decoders (Michael)
815- new and faster bit readers and vlc parsers (Michael)
e0db8cfb 816- high quality encoding mode: tries all macroblock/VLC types (Michael)
817- added DV video decoder
818- preliminary RTP/RTSP support in ffserver and libavformat
819- H.263+ AIC decoding/encoding support (Juanjo)
820- VCD MPEG-PS mode (Juanjo)
821- PSNR stuff (Juanjo)
822- simple stats output (Juanjo)
823- 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
739d6efa 824
0ca3e336 825
826version 0.4.5:
828- some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
829- many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
830- added configure system (actually a small shell script)
831- added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
de6d9b64 832 Michael Hipp (temporary solution - waiting for integer only
833 decoder)
834- fixed VIDIOCSYNC interrupt
835- added Intel H.263 decoding support ('I263' AVI fourCC)
836- added Real Video 1.0 decoding (needs further testing)
837- simplified image formats again. Added PGM format (=grey
838 pgm). Renamed old PGM to PGMYUV.
839- fixed msmpeg4 slice issues (tell me if you still find problems)
840- fixed OpenDivX bugs with newer versions (added VOL header decoding)
841- added support for MPlayer interface
842- added macroblock skip optimization
843- added MJPEG decoder
844- added mmx/mmxext IDCT from libmpeg2
0c1e384c 845- added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
dd5cf2ad 846 <celer at shell.scrypt.net>)
847- added pixel format conversion layer (e.g. for MJPEG or PPM)
848- added deinterlacing option
849- MPEG-1/2 fixes
850- MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
851- ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
852- Windows porting of file converter
853- added MJPEG raw format (input/ouput)
854- added JPEG image format support (input/output)
de6d9b64 855
0ca3e336 856
857version 0.4.4:
859- fixed some std header definitions (Bjorn Lindgren
dd5cf2ad 860 <bjorn.e.lindgren at telia.com>).
861- added MPEG demuxer (MPEG-1 and 2 compatible).
862- added ASF demuxer
863- added prototype RM demuxer
864- added AC3 decoding (done with libac3 by Aaron Holtzman)
865- added decoding codec parameter guessing (.e.g. for MPEG, because the
866 header does not include them)
867- fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
868 play them (only tested video)
869- fixed H.263 white bug
870- fixed phase rounding in img resample filter
871- add MMX code for polyphase img resample filter
872- added CPU autodetection
873- added generic title/author/copyright/comment string handling (ASF and RM
874 use them)
de6d9b64 875- added SWF demux to extract MP3 track (not usable yet because no MP3
876 decoder)
877- added fractional frame rate support
de6d9b64 878- codecs are no longer searched by read_header() (should fix ffserver
e0db8cfb 879 segfault)
de6d9b64 880
0ca3e336 881
882version 0.4.3:
dd5cf2ad 884- BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
885- fixed raw yuv output
886- added motion rounding support in MPEG-4
887- fixed motion bug rounding in MSMPEG4
888- added B-frame handling in video core
889- added full MPEG-1 decoding support
890- added partial (frame only) MPEG-2 support
de6d9b64 891- changed the FOURCC code for H.263 to "U263" to be able to see the
892 +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
893 this +codec ;) (JuanJo).
894- Halfpel motion estimation after MB type selection (JuanJo)
895- added pgm and .Y.U.V output format
896- suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
897 output.
898- added pgmpipe I/O format (original patch from Martin Aumueller
dd5cf2ad 899 <lists at reserv.at>, but changed completely since we use a format
e0db8cfb 900 instead of a protocol)
de6d9b64 901
0ca3e336 902
903version 0.4.2:
905- added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
906 (for OpenDivX) is almost complete: 8x8 MVs and rounding are
de6d9b64 907 missing. MSMPEG4 support is complete.
908- added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
909 can decode ffmpeg MPEGs :-)).
910- added libavcodec API documentation (see apiexample.c).
911- fixed image polyphase bug (the bottom of some images could be
e0db8cfb 912 greenish)
de6d9b64 913- added support for non clipped motion vectors (decoding only)
914 and image sizes non-multiple of 16
915- added support for AC prediction (decoding only)
916- added file overwrite confirmation (can be disabled with -y)
917- added custom size picture to H.263 using H.263+ (Juanjo)
de6d9b64 918
0ca3e336 919
920version 0.4.1:
922- added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
923 of AVI and ASF to DIV3.
924- added -me option to set motion estimation method
925 (default=log). suppressed redundant -hq option.
926- added options -acodec and -vcodec to force a given codec (useful for
927 AVI for example)
928- fixed -an option
929- improved dct_quantize speed
930- factorized some motion estimation code
de6d9b64 931
0ca3e336 932
933version 0.4.0:
935- removing grab code from ffserver and moved it to ffmpeg. Added
936 multistream support to ffmpeg.
de6d9b64 937- added timeshifting support for live feeds (option ?date=xxx in the
e0db8cfb 938 URL)
de6d9b64 939- added high quality image resize code with polyphase filter (need
56cc85a0 940 mmx/see optimization). Enable multiple image size support in ffserver.
e0db8cfb 941- added multi live feed support in ffserver
942- suppressed master feature from ffserver (it should be done with an
943 external program which opens the .ffm url and writes it to another
944 ffserver)
945- added preliminary support for video stream parsing (WAV and AVI half
946 done). Added proper support for audio/video file conversion in
de6d9b64 947 ffmpeg.
948- added preliminary support for video file sending from ffserver
949- redesigning I/O subsystem: now using URL based input and output
950 (see avio.h)
951- added WAV format support
952- added "tty user interface" to ffmpeg to stop grabbing gracefully
953- added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
dd5cf2ad 954 (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
955- added MMX DCT from mpeg2_movie 1.5 (Juanjo)
956- added new motion estimation algorithms, log and phods (Juanjo)
957- changed directories: libav for format handling, libavcodec for
958 codecs
de6d9b64 959
0ca3e336 960
961version 0.3.4:
e0db8cfb 963- added stereo in MPEG audio encoder
de6d9b64 964
0ca3e336 965
966version 0.3.3:
968- added 'high quality' mode which use motion vectors. It can be used in
969 real time at low resolution.
970- fixed rounding problems which caused quality problems at high
e0db8cfb 971 bitrates and large GOP size
de6d9b64 972
0ca3e336 973
974version 0.3.2: small fixes
e0db8cfb 976- ASF fixes
977- put_seek bug fix
0ca3e336 979
980version 0.3.1: added avi/divx support
982- added AVI support
983- added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
984- added sound for flash format (not tested)
0ca3e336 986
de6d9b64 987version 0.3: initial public release