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