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