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