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