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