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