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