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