h264: enable low delay only if no delayed frames were seen
[ffmpeg.git] / Changelog
1 Entries are sorted chronologically from oldest to youngest within each release,
2 releases are sorted from youngest to oldest.
3
4 version 0.8.4:
5
6 - Several bugs and crashes have been fixed in the following codecs:
7   h264 (Bug 118), vc1dec (CVE-2012-2796), sipr, bmpdec (bug 367), alsdec
8   (CVE-2012-2775), rv34/rv40 (CVE-2012-2772), indeo3/indeo4
9   (CVE-2012-2776, CVE-2012-2779, CVE-2012-2787, CVE-2012-2794,
10   CVE-2012-2800), vorbisenc, vorbisdec (Bug 277), snow, ac3dec
11   (CVE-2012-2802), avsdec (CVE-2012-2801), dfa (CVE-2012-2786,
12   CVE-2012-2798), lagrith (CVE-2012-2793), wmaprodec (CVE-2012-2789 &
13   Bug 327), avidec (CVE-2012-2788, CVE-2012-2790), cavsdec
14   (CVE-2012-2777, CVE-2012-2784), wav (Bug 379), yuff4mpeg (Bug 373),
15   mpegaudio, tiffenc, smacker (Bug 265).
16
17 - smaller bug fixes in avconv (Bug 352)
18
19 - fix lt() and lte() in function evaluator
20
21 - fix segfault in avformat_open_input()
22
23 - fix segfault in golomb decoder (bug 310)
24
25 - fix segfault (double free) in libavfilter
26
27 - convert dfa decoder to bytestream2 API to protect from overreads
28
29 - bugfix in vf_pad/scale filter (Bug 203 & 245)
30
31 - lavc: remove stats_out and stats_in from the options table. (Bug 380)
32
33
34 version 0.8.3:
35
36 - Several bugs and crashes have been fixed in the following codecs: PNG,
37   Electronic Arts TQI, H.264 (CVE-2012-0851) and H.263 (CVE-2011-3937)
38
39
40 version 0.8.2:
41
42 - Several bugs and crashes have been fixed in the following codecs: AAC,
43   APE, H.263, H.264, Indeo 4, Mimic, MJPEG, Motion Pixels Video, RAW,
44   TTA, VC1, VQA, WMA Voice, vqavideo (CVE-2012-0947).
45
46 - Several bugs and crashes have been fixed in the following formats:
47   ASF, ID3v2, MOV, xWMA
48
49 - This release additionally updates the following codecs to the
50   bytestream2 API, and therefore benefit from additional overflow
51   checks: truemotion2, utvideo, vqavideo
52
53
54 version 0.8.1:
55
56 - Several bugs and crashes have been fixed in the following codecs: AAC,
57   AC-3, ADPCM, AMR (both NB and WB), ATRAC3, CAVC, Cook, camstudio, DCA,
58   DPCM, DSI CIN, DV, EA TGQ, FLAC, fraps, G.722 (both encoder and
59   decoder), H.264, huvffyuv, BB JV decoder, Indeo 3, KGV1, LCL, the
60   libx264 wrapper, MJPEG, mp3on4, Musepack, MPEG1/2, PNG, QDM2, Qt RLE,
61   ROQ, RV10, RV30/RV34/RV40, shorten, smacker, subrip, SVQ3, TIFF,
62   Truemotion2, TTA, VC1, VMware Screen codec, Vorbis, VP5, VP6, WMA,
63   Westwood SNDx, XXAN.
64
65 - This release additionally updates the following codecs to the
66   bytestream2 API, and therefore benefit from additional overflow
67   checks: XXAN, ALG MM, TQG, SMC, Qt SMC, ROQ, PNG
68
69 - Several bugs and crashes have been fixed in the following formats:
70   AIFF, ASF, DV, Matroska, NSV, MOV, MPEG-TS, Smacker, Sony OpenMG, RM,
71   SWF.
72
73 - Libswscale has an potential overflow for large image size fixed.
74
75 - The following APIs have been added:
76
77   avcodec_is_open()
78   avformat_get_riff_video_tags()
79   avformat_get_riff_audio_tags()
80
81   Please see the file doc/APIchanges and the Doxygen documentation for
82   further information.
83
84
85 version 0.8:
86
87 - GSM audio parser
88 - SMJPEG muxer
89
90
91 version 0.8_beta2:
92
93 - Automatic thread count based on detection number of (available) CPU cores
94 - Deprecate libpostproc. If desired, the switch --enable-postproc will
95   enable it but it may be removed in a later Libav release.
96 - rv34: frame-level multi-threading
97 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
98
99
100 version 0.8_beta1:
101
102 - BWF muxer
103 - Flash Screen Video 2 decoder
104 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
105 - ffmpeg deprecated, added avconv, which is almost the same for now, except
106 for a few incompatible changes in the options, which will hopefully make them
107 easier to use. The changes are:
108     * The options placement is now strictly enforced! While in theory the
109       options for ffmpeg should be given in [input options] -i INPUT [output
110       options] OUTPUT order, in practice it was possible to give output options
111       before the -i and it mostly worked. Except when it didn't - the behavior was
112       a bit inconsistent. In avconv, it is not possible to mix input and output
113       options. All non-global options are reset after an input or output filename.
114     * All per-file options are now truly per-file - they apply only to the next
115       input or output file and specifying different values for different files
116       will now work properly (notably -ss and -t options).
117     * All per-stream options are now truly per-stream - it is possible to
118       specify which stream(s) should a given option apply to. See the Stream
119       specifiers section in the avconv manual for details.
120     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
121       sense that they're specified after the output filename instead of before,
122       like all other options. In avconv this irregularity is removed, all options
123       apply to the next input or output file.
124     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
125       irregular and highly confusing, they were also redundant. In avconv the -map
126       option will create new streams in the output file and map input streams to
127       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
128       each stream in the first input file.
129     * The -map option now has slightly different and more powerful syntax:
130         + Colons (':') are used to separate file index/stream type/stream index
131           instead of dots. Comma (',') is used to separate the sync stream instead
132           of colon.. This is done for consistency with other options.
133         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
134           output stream from the third input audio stream.
135         + Omitting the stream index now maps all the streams of the given type,
136           not just the first. E.g. -map 0:s creates output streams for all the
137           subtitle streams in the first input file.
138         + Since -map can now match multiple streams, negative mappings were
139           introduced. Negative mappings disable some streams from an already
140           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
141           all the stream in the first input file, except for the second audio
142           stream'.
143     * There is a new option -c (or -codec) for choosing the decoder/encoder to
144       use, which allows to precisely specify target stream(s) consistently with
145       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
146       libvorbis sets the codec for the first audio stream and -c copy copies all
147       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
148       aliases to -c:v/a/s
149     * It is now possible to precisely specify which stream should an AVOption
150       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
151       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
152       syntax is deprecated and will stop working soon.
153     * -map_chapters now takes only an input file index and applies to the next
154       output file. This is consistent with how all the other options work.
155     * -map_metadata now takes only an input metadata specifier and applies to
156       the next output file. Output metadata specifier is now part of the option
157       name, similarly to the AVOptions/map/codec feature above.
158     * -metadata can now be used to set metadata on streams and chapters, e.g.
159       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
160       This made -vlang/-alang/-slang options redundant, so they were removed.
161     * -qscale option now uses stream specifiers and applies to all streams, not
162       just video. I.e. plain -qscale number would now apply to all streams. To get
163       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
164       and -aq is now an alias for -q:a.
165     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
166       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
167     * -itsscale option now uses stream specifiers, so its argument is only the
168       scale parameter.
169     * -intra option was removed, use -g 0 for the same effect.
170     * -psnr option was removed, use -flags +psnr for the same effect.
171     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
172     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
173     * -vtag/-atag/-stag options are now aliases to the new -tag option.
174 - XMV demuxer
175 - Windows Media Image decoder
176 - LATM muxer/demuxer
177 - showinfo filter
178 - split filter
179 - libcdio-paranoia input device for audio CD grabbing
180 - select filter
181 - Apple ProRes decoder
182 - CELT in Ogg demuxing
183 - VC-1 interlaced decoding
184 - lut, lutrgb, and lutyuv filters
185 - boxblur filter
186 - Ut Video decoder
187 - Speex encoding via libspeex
188 - 4:2:2 H.264 decoding support
189 - 4:2:2 and 4:4:4 H.264 encoding with libx264
190 - Pulseaudio input device
191 - replacement Indeo 3 decoder
192 - TLS/SSL and HTTPS protocol support
193 - AVOptions API rewritten and documented
194 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
195   AVCodecContext deprecated. Codec private options should be used instead.
196 - Properly working defaults in libx264 wrapper, support for native presets.
197 - Encrypted OMA files support
198 - Discworld II BMV decoding support
199 - VBLE Decoder
200 - OS X Video Decoder Acceleration (VDA) support
201 - CRI ADX audio format muxer and demuxer
202 - Playstation Portable PMP format demuxer
203 - PCM format support in OMA demuxer
204 - CLJR encoder
205 - Dxtory capture format decoder
206 - v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
207 - OpenMG Audio muxer
208 - Simple segmenting muxer
209 - Indeo 4 decoder
210 - SMJPEG demuxer
211
212
213 version 0.7:
214
215 - E-AC-3 audio encoder
216 - ac3enc: add channel coupling support
217 - floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
218 - H.264/MPEG frame-level multithreading
219 - av_metadata_* functions renamed to av_dict_* and moved to libavutil
220 - 4:4:4 H.264 decoding support
221 - 10-bit H.264 optimizations for x86
222 - bump libswscale for recently reported ABI break
223
224
225 version 0.7_beta2:
226
227 - VP8 frame-level multithreading
228 - NEON optimizations for VP8
229 - removed a lot of deprecated API cruft
230 - FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
231 - DPX image encoder
232 - SMPTE 302M AES3 audio decoder
233 - ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
234 - 9bit and 10bit per sample support in the H.264 decoder
235
236
237 version 0.7_beta1:
238
239 - WebM support in Matroska de/muxer
240 - low overhead Ogg muxing
241 - MMS-TCP support
242 - VP8 de/encoding via libvpx
243 - Demuxer for On2's IVF format
244 - Pictor/PC Paint decoder
245 - HE-AAC v2 decoder
246 - libfaad2 wrapper removed
247 - DTS-ES extension (XCh) decoding support
248 - native VP8 decoder
249 - RTSP tunneling over HTTP
250 - RTP depacketization of SVQ3
251 - -strict inofficial replaced by -strict unofficial
252 - ffplay -exitonkeydown and -exitonmousedown options added
253 - native GSM / GSM MS decoder
254 - RTP depacketization of QDM2
255 - ANSI/ASCII art playback system
256 - Lego Mindstorms RSO de/muxer
257 - SubRip subtitle file muxer and demuxer
258 - Chinese AVS encoding via libxavs
259 - ffprobe -show_packets option added
260 - RTP packetization of Theora and Vorbis
261 - RTP depacketization of MP4A-LATM
262 - RTP packetization and depacketization of VP8
263 - hflip filter
264 - Apple HTTP Live Streaming demuxer
265 - a64 codec
266 - MMS-HTTP support
267 - G.722 ADPCM audio encoder/decoder
268 - R10k video decoder
269 - ocv_smooth filter
270 - frei0r wrapper filter
271 - change crop filter syntax to width:height:x:y
272 - make the crop filter accept parametric expressions
273 - make ffprobe accept AVFormatContext options
274 - yadif filter
275 - blackframe filter
276 - Demuxer for Leitch/Harris' VR native stream format (LXF)
277 - RTP depacketization of the X-QT QuickTime format
278 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
279 - cropdetect filter
280 - ffmpeg -crop* options removed
281 - transpose filter added
282 - ffmpeg -force_key_frames option added
283 - demuxer for receiving raw rtp:// URLs without an SDP description
284 - single stream LATM/LOAS decoder
285 - setpts filter added
286 - Win64 support for optimized x86 assembly functions
287 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
288 - ASS subtitle encoder and decoder
289 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
290 - overlay filter added
291 - rename aspect filter to setdar, and pixelaspect to setsar
292 - IEC 61937 demuxer
293 - Mobotix .mxg demuxer
294 - frei0r source added
295 - hqdn3d filter added
296 - RTP depacketization of QCELP
297 - FLAC parser added
298 - gradfun filter added
299 - AMR-WB decoder
300 - replace the ocv_smooth filter with a more generic ocv filter
301 - Windows Televison (WTV) demuxer
302 - FFmpeg metadata format muxer and demuxer
303 - SubRip (srt) subtitle decoder
304 - floating-point AC-3 encoder added
305 - Lagarith decoder
306 - ffmpeg -copytb option added
307 - IVF muxer added
308 - Wing Commander IV movies decoder added
309 - movie source added
310 - Bink version 'b' audio and video decoder
311 - Bitmap Brothers JV playback system
312 - Apple HTTP Live Streaming protocol handler
313 - sndio support for playback and record
314 - Linux framebuffer input device added
315 - Chronomaster DFA decoder
316 - Mobotix MxPEG decoder
317 - AAC encoding via libvo-aacenc
318 - AMR-WB encoding via libvo-amrwbenc
319 - xWMA demuxer
320 - fieldorder video filter added
321
322
323 version 0.6:
324
325 - PB-frame decoding for H.263
326 - deprecated vhook subsystem removed
327 - deprecated old scaler removed
328 - VQF demuxer
329 - Alpha channel scaler
330 - PCX encoder
331 - RTP packetization of H.263
332 - RTP packetization of AMR
333 - RTP depacketization of Vorbis
334 - CorePNG decoding support
335 - Cook multichannel decoding support
336 - introduced avlanguage helpers in libavformat
337 - 8088flex TMV demuxer and decoder
338 - per-stream language-tags extraction in asfdec
339 - V210 decoder and encoder
340 - remaining GPL parts in AC-3 decoder converted to LGPL
341 - QCP demuxer
342 - SoX native format muxer and demuxer
343 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
344 - DPX image decoder
345 - Electronic Arts Madcow decoder
346 - DivX (XSUB) subtitle encoder
347 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
348 - experimental AAC encoder
349 - RTP depacketization of ASF and RTSP from WMS servers
350 - RTMP support in libavformat
351 - noX handling for OPT_BOOL X options
352 - Wave64 demuxer
353 - IEC-61937 compatible Muxer
354 - TwinVQ decoder
355 - Bluray (PGS) subtitle decoder
356 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
357 - WMA Pro decoder
358 - Core Audio Format demuxer
359 - Atrac1 decoder
360 - MD STUDIO audio demuxer
361 - RF64 support in WAV demuxer
362 - MPEG-4 Audio Lossless Coding (ALS) decoder
363 - -formats option split into -formats, -codecs, -bsfs, and -protocols
364 - IV8 demuxer
365 - CDG demuxer and decoder
366 - R210 decoder
367 - Auravision Aura 1 and 2 decoders
368 - Deluxe Paint Animation playback system
369 - SIPR decoder
370 - Adobe Filmstrip muxer and demuxer
371 - RTP depacketization of H.263
372 - Bink demuxer and audio/video decoders
373 - enable symbol versioning by default for linkers that support it
374 - IFF PBM/ILBM bitmap decoder
375 - concat protocol
376 - Indeo 5 decoder
377 - RTP depacketization of AMR
378 - WMA Voice decoder
379 - ffprobe tool
380 - AMR-NB decoder
381 - RTSP muxer
382 - HE-AAC v1 decoder
383 - Kega Game Video (KGV1) decoder
384 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
385 - RTP depacketization of Theora
386 - HTTP Digest authentication
387 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
388 - Psygnosis YOP demuxer and video decoder
389 - spectral extension support in the E-AC-3 decoder
390 - unsharp video filter
391 - RTP hinting in the mov/3gp/mp4 muxer
392 - Dirac in Ogg demuxing
393 - seek to keyframes in Ogg
394 - 4:2:2 and 4:4:4 Theora decoding
395 - 35% faster VP3/Theora decoding
396 - faster AAC decoding
397 - faster H.264 decoding
398 - RealAudio 1.0 (14.4K) encoder
399
400
401 version 0.5:
402
403 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
404 - TechSmith Camtasia (TSCC) video decoder
405 - IBM Ultimotion (ULTI) video decoder
406 - Sierra Online audio file demuxer and decoder
407 - Apple QuickDraw (qdrw) video decoder
408 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
409 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
410 - Miro VideoXL (VIXL) video decoder
411 - H.261 video encoder
412 - QPEG video decoder
413 - Nullsoft Video (NSV) file demuxer
414 - Shorten audio decoder
415 - LOCO video decoder
416 - Apple Lossless Audio Codec (ALAC) decoder
417 - Winnov WNV1 video decoder
418 - Autodesk Animator Studio Codec (AASC) decoder
419 - Indeo 2 video decoder
420 - Fraps FPS1 video decoder
421 - Snow video encoder/decoder
422 - Sonic audio encoder/decoder
423 - Vorbis audio decoder
424 - Macromedia ADPCM decoder
425 - Duck TrueMotion 2 video decoder
426 - support for decoding FLX and DTA extensions in FLIC files
427 - H.264 custom quantization matrices support
428 - ffserver fixed, it should now be usable again
429 - QDM2 audio decoder
430 - Real Cooker audio decoder
431 - TrueSpeech audio decoder
432 - WMA2 audio decoder fixed, now all files should play correctly
433 - RealAudio 14.4 and 28.8 decoders fixed
434 - JPEG-LS decoder
435 - build system improvements
436 - tabs and trailing whitespace removed from the codebase
437 - CamStudio video decoder
438 - AIFF/AIFF-C audio format, encoding and decoding
439 - ADTS AAC file reading and writing
440 - Creative VOC file reading and writing
441 - American Laser Games multimedia (*.mm) playback system
442 - Zip Motion Blocks Video decoder
443 - improved Theora/VP3 decoder
444 - True Audio (TTA) decoder
445 - AVS demuxer and video decoder
446 - JPEG-LS encoder
447 - Smacker demuxer and decoder
448 - NuppelVideo/MythTV demuxer and RTjpeg decoder
449 - KMVC decoder
450 - MPEG-2 intra VLC support
451 - MPEG-2 4:2:2 encoder
452 - Flash Screen Video decoder
453 - GXF demuxer
454 - Chinese AVS decoder
455 - GXF muxer
456 - MXF demuxer
457 - VC-1/WMV3/WMV9 video decoder
458 - MacIntel support
459 - AVISynth support
460 - VMware video decoder
461 - VP5 video decoder
462 - VP6 video decoder
463 - WavPack lossless audio decoder
464 - Targa (.TGA) picture decoder
465 - Vorbis audio encoder
466 - Delphine Software .cin demuxer/audio and video decoder
467 - Tiertex .seq demuxer/video decoder
468 - MTV demuxer
469 - TIFF picture encoder and decoder
470 - GIF picture decoder
471 - Intel Music Coder decoder
472 - Zip Motion Blocks Video encoder
473 - Musepack decoder
474 - Flash Screen Video encoder
475 - Theora encoding via libtheora
476 - BMP encoder
477 - WMA encoder
478 - GSM-MS encoder and decoder
479 - DCA decoder
480 - DXA demuxer and decoder
481 - DNxHD decoder
482 - Gamecube movie (.THP) playback system
483 - Blackfin optimizations
484 - Interplay C93 demuxer and video decoder
485 - Bethsoft VID demuxer and video decoder
486 - CRYO APC demuxer
487 - Atrac3 decoder
488 - V.Flash PTX decoder
489 - RoQ muxer, RoQ audio encoder
490 - Renderware TXD demuxer and decoder
491 - extern C declarations for C++ removed from headers
492 - sws_flags command line option
493 - codebook generator
494 - RoQ video encoder
495 - QTRLE encoder
496 - OS/2 support removed and restored again
497 - AC-3 decoder
498 - NUT muxer
499 - additional SPARC (VIS) optimizations
500 - Matroska muxer
501 - slice-based parallel H.264 decoding
502 - Monkey's Audio demuxer and decoder
503 - AMV audio and video decoder
504 - DNxHD encoder
505 - H.264 PAFF decoding
506 - Nellymoser ASAO decoder
507 - Beam Software SIFF demuxer and decoder
508 - libvorbis Vorbis decoding removed in favor of native decoder
509 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
510 - Ogg (Theora, Vorbis and FLAC) muxer
511 - The "device" muxers and demuxers are now in a new libavdevice library
512 - PC Paintbrush PCX decoder
513 - Sun Rasterfile decoder
514 - TechnoTrend PVA demuxer
515 - Linux Media Labs MPEG-4 (LMLM4) demuxer
516 - AVM2 (Flash 9) SWF muxer
517 - QT variant of IMA ADPCM encoder
518 - VFW grabber
519 - iPod/iPhone compatible mp4 muxer
520 - Mimic decoder
521 - MSN TCP Webcam stream demuxer
522 - RL2 demuxer / decoder
523 - IFF demuxer
524 - 8SVX audio decoder
525 - non-recursive Makefiles
526 - BFI demuxer
527 - MAXIS EA XA (.xa) demuxer / decoder
528 - BFI video decoder
529 - OMA demuxer
530 - MLP/TrueHD decoder
531 - Electronic Arts CMV decoder
532 - Motion Pixels Video decoder
533 - Motion Pixels MVI demuxer
534 - removed animated GIF decoder/demuxer
535 - D-Cinema audio muxer
536 - Electronic Arts TGV decoder
537 - Apple Lossless Audio Codec (ALAC) encoder
538 - AAC decoder
539 - floating point PCM encoder/decoder
540 - MXF muxer
541 - DV100 AKA DVCPRO HD decoder and demuxer
542 - E-AC-3 support added to AC-3 decoder
543 - Nellymoser ASAO encoder
544 - ASS and SSA demuxer and muxer
545 - liba52 wrapper removed
546 - SVQ3 watermark decoding support
547 - Speex decoding via libspeex
548 - Electronic Arts TGQ decoder
549 - RV40 decoder
550 - QCELP / PureVoice decoder
551 - RV30 decoder
552 - hybrid WavPack support
553 - R3D REDCODE demuxer
554 - ALSA support for playback and record
555 - Electronic Arts TQI decoder
556 - OpenJPEG based JPEG 2000 decoder
557 - NC (NC4600) camera file demuxer
558 - Gopher client support
559 - MXF D-10 muxer
560 - generic metadata API
561
562
563 version 0.4.9-pre1:
564
565 - DV encoder, DV muxer
566 - Microsoft RLE video decoder
567 - Microsoft Video-1 decoder
568 - Apple Animation (RLE) decoder
569 - Apple Graphics (SMC) decoder
570 - Apple Video (RPZA) decoder
571 - Cinepak decoder
572 - Sega FILM (CPK) file demuxer
573 - Westwood multimedia support (VQA & AUD files)
574 - Id Quake II CIN playback support
575 - 8BPS video decoder
576 - FLIC playback support
577 - RealVideo 2.0 (RV20) decoder
578 - Duck TrueMotion v1 (DUCK) video decoder
579 - Sierra VMD demuxer and video decoder
580 - MSZH and ZLIB decoder support
581 - SVQ1 video encoder
582 - AMR-WB support
583 - PPC optimizations
584 - rate distortion optimal cbp support
585 - rate distorted optimal ac prediction for MPEG-4
586 - rate distorted optimal lambda->qp support
587 - AAC encoding with libfaac
588 - Sunplus JPEG codec (SP5X) support
589 - use Lagrange multipler instead of QP for ratecontrol
590 - Theora/VP3 decoding support
591 - XA and ADX ADPCM codecs
592 - export MPEG-2 active display area / pan scan
593 - Add support for configuring with IBM XLC
594 - floating point AAN DCT
595 - initial support for zygo video (not complete)
596 - RGB ffv1 support
597 - new audio/video parser API
598 - av_log() system
599 - av_read_frame() and av_seek_frame() support
600 - missing last frame fixes
601 - seek by mouse in ffplay
602 - noise reduction of DCT coefficients
603 - H.263 OBMC & 4MV support
604 - H.263 alternative inter vlc support
605 - H.263 loop filter
606 - H.263 slice structured mode
607 - interlaced DCT support for MPEG-2 encoding
608 - stuffing to stay above min_bitrate
609 - MB type & QP visualization
610 - frame stepping for ffplay
611 - interlaced motion estimation
612 - alternate scantable support
613 - SVCD scan offset support
614 - closed GOP support
615 - SSE2 FDCT
616 - quantizer noise shaping
617 - G.726 ADPCM audio codec
618 - MS ADPCM encoding
619 - multithreaded/SMP motion estimation
620 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
621 - multithreaded/SMP decoding for MPEG-2
622 - FLAC decoder
623 - Metrowerks CodeWarrior suppport
624 - H.263+ custom pcf support
625 - nicer output for 'ffmpeg -formats'
626 - Matroska demuxer
627 - SGI image format, encoding and decoding
628 - H.264 loop filter support
629 - H.264 CABAC support
630 - nicer looking arrows for the motion vector visualization
631 - improved VCD support
632 - audio timestamp drift compensation
633 - MPEG-2 YUV 422/444 support
634 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
635 - better image scaling
636 - H.261 support
637 - correctly interleave packets during encoding
638 - VIS optimized motion compensation
639 - intra_dc_precision>0 encoding support
640 - support reuse of motion vectors/MB types/field select values of the source video
641 - more accurate deblock filter
642 - padding support
643 - many optimizations and bugfixes
644 - FunCom ISS audio file demuxer and according ADPCM decoding
645
646
647 version 0.4.8:
648
649 - MPEG-2 video encoding (Michael)
650 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
651 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
652   and Mario Brito)
653 - Xan DPCM audio decoder (Mario Brito)
654 - Interplay MVE playback subsystem (Mike Melanson)
655 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
656
657
658 version 0.4.7:
659
660 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
661   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
662 - current version now also compiles with older GCC (Fabrice)
663 - 4X multimedia playback system including 4xm file demuxer (Mike
664   Melanson), and 4X video and audio codecs (Michael)
665 - Creative YUV (CYUV) decoder (Mike Melanson)
666 - FFV1 codec (our very simple lossless intra only codec, compresses much better
667   than HuffYUV) (Michael)
668 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
669 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
670   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
671 - ffplay has been replaced with a newer version which uses SDL (optionally)
672   for multiplatform support (Fabrice)
673 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
674   by anonymous
675 - AMR format has been added (Johannes Carlsson)
676 - 3GP support has been added (Johannes Carlsson)
677 - VP3 codec has been added (Mike Melanson)
678 - more MPEG-1/2 fixes
679 - better multiplatform support, MS Visual Studio fixes (various)
680 - AltiVec optimizations (Magnus Damn and others)
681 - SH4 processor support has been added (BERO)
682 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
683 - VOB streaming support (Brian Foley)
684 - better MP3 autodetection (Andriy Rysin)
685 - qpel encoding (Michael)
686 - 4mv+b frames encoding finally fixed (Michael)
687 - chroma ME (Michael)
688 - 5 comparison functions for ME (Michael)
689 - B-frame encoding speedup (Michael)
690 - WMV2 codec (unfinished - Michael)
691 - user specified diamond size for EPZS (Michael)
692 - Playstation STR playback subsystem, still experimental (Mike and Michael)
693 - ASV2 codec (Michael)
694 - CLJR decoder (Alex)
695
696 .. And lots more new enhancements and fixes.
697
698
699 version 0.4.6:
700
701 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
702   from scratch
703 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
704 - fix quantization bug in AC3 encoder
705 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
706 - added prototype ffplay program
707 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
708 - bug fix on MCBPC tables of H.263 (Juanjo)
709 - bug fix on DC coefficients of H.263 (Juanjo)
710 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
711 - now we can decode H.263 streams found in QuickTime files (Juanjo)
712 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
713 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
714 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
715 - now H.263 picture size is returned on the first decoded frame (Juanjo)
716 - added first regression tests
717 - added MPEG-2 TS demuxer
718 - new demux API for libav
719 - more accurate and faster IDCT (Michael)
720 - faster and entropy-controlled motion search (Michael)
721 - two pass video encoding (Michael)
722 - new video rate control (Michael)
723 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
724 - great performance improvement of video encoders and decoders (Michael)
725 - new and faster bit readers and vlc parsers (Michael)
726 - high quality encoding mode: tries all macroblock/VLC types (Michael)
727 - added DV video decoder
728 - preliminary RTP/RTSP support in ffserver and libavformat
729 - H.263+ AIC decoding/encoding support (Juanjo)
730 - VCD MPEG-PS mode (Juanjo)
731 - PSNR stuff (Juanjo)
732 - simple stats output (Juanjo)
733 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
734
735
736 version 0.4.5:
737
738 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
739 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
740 - added configure system (actually a small shell script)
741 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
742   Michael Hipp (temporary solution - waiting for integer only
743   decoder)
744 - fixed VIDIOCSYNC interrupt
745 - added Intel H.263 decoding support ('I263' AVI fourCC)
746 - added Real Video 1.0 decoding (needs further testing)
747 - simplified image formats again. Added PGM format (=grey
748   pgm). Renamed old PGM to PGMYUV.
749 - fixed msmpeg4 slice issues (tell me if you still find problems)
750 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
751 - added support for MPlayer interface
752 - added macroblock skip optimization
753 - added MJPEG decoder
754 - added mmx/mmxext IDCT from libmpeg2
755 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
756   <celer at shell.scrypt.net>)
757 - added pixel format conversion layer (e.g. for MJPEG or PPM)
758 - added deinterlacing option
759 - MPEG-1/2 fixes
760 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
761 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
762 - Windows porting of file converter
763 - added MJPEG raw format (input/ouput)
764 - added JPEG image format support (input/output)
765
766
767 version 0.4.4:
768
769 - fixed some std header definitions (Bjorn Lindgren
770   <bjorn.e.lindgren at telia.com>).
771 - added MPEG demuxer (MPEG-1 and 2 compatible).
772 - added ASF demuxer
773 - added prototype RM demuxer
774 - added AC3 decoding (done with libac3 by Aaron Holtzman)
775 - added decoding codec parameter guessing (.e.g. for MPEG, because the
776   header does not include them)
777 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
778   play them (only tested video)
779 - fixed H.263 white bug
780 - fixed phase rounding in img resample filter
781 - add MMX code for polyphase img resample filter
782 - added CPU autodetection
783 - added generic title/author/copyright/comment string handling (ASF and RM
784   use them)
785 - added SWF demux to extract MP3 track (not usable yet because no MP3
786   decoder)
787 - added fractional frame rate support
788 - codecs are no longer searched by read_header() (should fix ffserver
789   segfault)
790
791
792 version 0.4.3:
793
794 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
795 - fixed raw yuv output
796 - added motion rounding support in MPEG-4
797 - fixed motion bug rounding in MSMPEG4
798 - added B-frame handling in video core
799 - added full MPEG-1 decoding support
800 - added partial (frame only) MPEG-2 support
801 - changed the FOURCC code for H.263 to "U263" to be able to see the
802   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
803   this +codec ;) (JuanJo).
804 - Halfpel motion estimation after MB type selection (JuanJo)
805 - added pgm and .Y.U.V output format
806 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
807   output.
808 - added pgmpipe I/O format (original patch from Martin Aumueller
809   <lists at reserv.at>, but changed completely since we use a format
810   instead of a protocol)
811
812
813 version 0.4.2:
814
815 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
816   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
817   missing. MSMPEG4 support is complete.
818 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
819   can decode ffmpeg MPEGs :-)).
820 - added libavcodec API documentation (see apiexample.c).
821 - fixed image polyphase bug (the bottom of some images could be
822   greenish)
823 - added support for non clipped motion vectors (decoding only)
824   and image sizes non-multiple of 16
825 - added support for AC prediction (decoding only)
826 - added file overwrite confirmation (can be disabled with -y)
827 - added custom size picture to H.263 using H.263+ (Juanjo)
828
829
830 version 0.4.1:
831
832 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
833   of AVI and ASF to DIV3.
834 - added -me option to set motion estimation method
835   (default=log). suppressed redundant -hq option.
836 - added options -acodec and -vcodec to force a given codec (useful for
837   AVI for example)
838 - fixed -an option
839 - improved dct_quantize speed
840 - factorized some motion estimation code
841
842
843 version 0.4.0:
844
845 - removing grab code from ffserver and moved it to ffmpeg. Added
846   multistream support to ffmpeg.
847 - added timeshifting support for live feeds (option ?date=xxx in the
848   URL)
849 - added high quality image resize code with polyphase filter (need
850   mmx/see optimization). Enable multiple image size support in ffserver.
851 - added multi live feed support in ffserver
852 - suppressed master feature from ffserver (it should be done with an
853   external program which opens the .ffm url and writes it to another
854   ffserver)
855 - added preliminary support for video stream parsing (WAV and AVI half
856   done). Added proper support for audio/video file conversion in
857   ffmpeg.
858 - added preliminary support for video file sending from ffserver
859 - redesigning I/O subsystem: now using URL based input and output
860   (see avio.h)
861 - added WAV format support
862 - added "tty user interface" to ffmpeg to stop grabbing gracefully
863 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
864   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
865 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
866 - added new motion estimation algorithms, log and phods (Juanjo)
867 - changed directories: libav for format handling, libavcodec for
868   codecs
869
870
871 version 0.3.4:
872
873 - added stereo in MPEG audio encoder
874
875
876 version 0.3.3:
877
878 - added 'high quality' mode which use motion vectors. It can be used in
879   real time at low resolution.
880 - fixed rounding problems which caused quality problems at high
881   bitrates and large GOP size
882
883
884 version 0.3.2: small fixes
885
886 - ASF fixes
887 - put_seek bug fix
888
889
890 version 0.3.1: added avi/divx support
891
892 - added AVI support
893 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
894 - added sound for flash format (not tested)
895
896
897 version 0.3: initial public release