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