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