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