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