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