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