Update for 3.2.2
[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 3.2.2:
5 - ffserver: Check chunk size
6 - Avoid using the term "file" and prefer "url" in some docs and comments
7 - avformat/rtmppkt: Check for packet size mismatches
8 - zmqsend: Initialize ret to 0
9 - avcodec/flacdec: Fix undefined shift in decode_subframe()
10 - avcodec/get_bits: Fix get_sbits_long(0)
11 - avformat/ffmdec: Check media type for chunks
12 - avcodec/flacdec: Fix signed integer overflow in decode_subframe_fixed()
13 - avcodec/flacdsp_template: Fix undefined shift in flac_decorrelate_indep_c
14 - avformat/oggparsespeex: Check frames_per_packet and packet_size
15 - avformat/utils: Check start/end before computing duration in update_stream_timings()
16 - avcodec/flac_parser: Update nb_headers_buffered
17 - avformat/idroqdec: Check chunk_size for being too large
18 - avcodec/me_cmp: Fix median_sad size
19 - avformat/utils: Fix type mismatch
20 - configure: check for strtoull on msvc
21 - http: move chunk handling from http_read_stream() to http_buf_read().
22 - http: make length/offset-related variables unsigned
23
24 version 3.2.1:
25 - avcodec/aac_adtstoasc_bsf: validate and forward extradata if the stream is already ASC
26 - mss2: only use error correction for matching block counts
27 - softfloat: decrease MIN_EXP to cover full float range
28 - libopusdec: default to stereo for invalid number of channels
29 - flvdec: require need_context_update when changing codec id
30 - pgssubdec: only set w/h/linesize when allocating data
31 - sbgdec: prevent NULL pointer access
32 - rmdec: validate block alignment
33 - smacker: limit recursion depth of smacker_decode_bigtree
34 - mxfdec: fix NULL pointer dereference in mxf_read_packet_old
35 - ffmdec: validate codec parameters
36 - avformat/mpeg: Adjust vid probe threshold to correct mis-detection
37 - avcodec/ass_split: Change order of operations in ass_split_section()
38 - avcodec/rawdec: check for side data before checking its size
39 - avcodec/avpacket: fix leak on realloc in av_packet_add_side_data()
40 - avformat/apngenc: use the stream parameters extradata if available
41 - Revert "apngdec: use side data to pass extradata to the decoder"
42 - ffprobe: fix crash in case -of is specified with an empty string
43 - libavcodec/exr : fix channel size calculation for uint32 channel
44 - exr: fix out-of-bounds read
45 - libschroedingerdec: fix leaking of framewithpts
46 - libschroedingerdec: don't produce empty frames
47 - dds: limit 4 bpp handling to AV_PIX_FMT_PAL8
48 - mlz: limit next_code to data buffer size
49 - softfloat: handle -INT_MAX correctly
50 - filmstripdec: correctly check image dimensions
51 - pnmdec: make sure v is capped by maxval
52 - smvjpegdec: make sure cur_frame is not negative
53 - icodec: correctly check avio_read return value
54 - icodec: fix leaking pkt on error
55 - dvbsubdec: fix division by zero in compute_default_clut
56 - proresdec_lgpl: explicitly check coff[3] against slice_data_size
57 - escape124: reject codebook size 0
58 - mpegts: prevent division by zero
59 - matroskadec: fix NULL pointer dereference in webm_dash_manifest_read_header
60 - mpegaudio_parser: don't return AVERROR_PATCHWELCOME
61 - mxfdec: fix NULL pointer dereference
62 - lzf: update pointer p after realloc
63 - diracdec: check return code of get_buffer_with_edge
64 - diracdec: clear slice_params_num_buf on allocation failure
65 - diracdec: use correct buffer for slice_params_buf realloc
66 - ppc: pixblockdsp: do unaligned block accesses correctly again
67 - avformat: close parser if codec changed
68 - fate: add streamcopy test for apng
69 - apngdec: use side data to pass extradata to the decoder
70 - mov: immediately return from mov_fix_index without old index entries
71 - interplayacm: increase bitstream buffer size by AV_INPUT_BUFFER_PADDING_SIZE
72 - interplayacm: validate number of channels
73 - interplayacm: check for too large b
74 - doc: fix spelling errors
75 - configure: make sure LTO does not optimize out the test functions
76 - fate: add apng encoding/muxing test
77 - apng: use side data to pass extradata to muxer
78 - avcodec/mpeg4videodec: Workaround interlaced mpeg4 edge MC bug
79 - avcodec/mpegvideo: Fix edge emu buffer overlap with interlaced mpeg4
80 - avcodec/rv40: Test remaining space in loop of get_dimension()
81 - avcodec/ituh263dec: Avoid spending a long time in slice sync
82 - avcodec/movtextdec: Add error message for tsmb_size check
83 - avcodec/movtextdec: Fix tsmb_size check==0 check
84 - avcodec/movtextdec: Fix potential integer overflow
85 - ffmpeg: Fix bsf corrupting merged side data
86 - avcodec/sunrast: Fix input buffer pointer check
87 - avcodec/tscc:  Check side data size before use
88 - avcodec/rscc: Fix constant
89 - avcodec/rawdec: Check side data size before use
90 - avcodec/rscc: Check side data size before use
91 - avcodec/msvideo1: Check side data size before use
92 - avcodec/qpeg:  Check side data size before use
93 - avcodec/qtrle:  Check side data size before use
94 - avcodec/msrle:  Check side data size before use
95 - avcodec/kmvc:  Check side data size before use
96 - avcodec/idcinvideo: Check side data size before use
97 - avcodec/cinepak: Check side data size before use
98 - avcodec/8bps: Check side data size before use
99 - avformat/flvdec: Fix regression losing streams
100 - avformat/hls: Add missing error check for avcodec_parameters_copy()
101 - avformat/hls: Fix probing mpegts audio streams that use probing
102 - avformat/hls: Factor copying stream info to a separate function
103
104 version 3.2:
105 - libopenmpt demuxer
106 - tee protocol
107 - Changed metadata print option to accept general urls
108 - Alias muxer for Ogg Video (.ogv)
109 - VP8 in Ogg muxing
110 - curves filter doesn't automatically insert points at x=0 and x=1 anymore
111 - 16-bit support in curves filter and selectivecolor filter
112 - OpenH264 decoder wrapper
113 - MediaCodec H.264/HEVC/MPEG-4/VP8/VP9 hwaccel
114 - True Audio (TTA) muxer
115 - crystalizer audio filter
116 - acrusher audio filter
117 - bitplanenoise video filter
118 - floating point support in als decoder
119 - fifo muxer
120 - maskedclamp filter
121 - hysteresis filter
122 - lut2 filter
123 - yuvtestsrc filter
124 - CUDA CUVID H.263/VP8/VP9/10 bit HEVC (Dithered) Decoding
125 - vaguedenoiser filter
126 - added threads option per filter instance
127 - weave filter
128 - gblur filter
129 - avgblur filter
130 - sobel and prewitt filter
131 - MediaCodec HEVC/MPEG-4/VP8/VP9 decoding
132 - Meridian Lossless Packing (MLP) / TrueHD encoder
133 - Non-Local Means (nlmeans) denoising filter
134 - sdl2 output device and ffplay support
135 - sdl1 output device and sdl1 support removed
136 - extended mov edit list support
137 - libfaac encoder removed
138 - Matroska muxer now writes CRC32 elements by default in all Level 1 elements
139 - sidedata video and asidedata audio filter
140 - Changed mapping of rtp MIME type G726 to codec g726le.
141
142
143 version 3.1:
144 - DXVA2-accelerated HEVC Main10 decoding
145 - fieldhint filter
146 - loop video filter and aloop audio filter
147 - Bob Weaver deinterlacing filter
148 - firequalizer filter
149 - datascope filter
150 - bench and abench filters
151 - ciescope filter
152 - protocol blacklisting API
153 - MediaCodec H264 decoding
154 - VC-2 HQ RTP payload format (draft v1) depacketizer and packetizer
155 - VP9 RTP payload format (draft v2) packetizer
156 - AudioToolbox audio decoders
157 - AudioToolbox audio encoders
158 - coreimage filter (GPU based image filtering on OSX)
159 - libdcadec removed
160 - bitstream filter for extracting DTS core
161 - ADPCM IMA DAT4 decoder
162 - musx demuxer
163 - aix demuxer
164 - remap filter
165 - hash and framehash muxers
166 - colorspace filter
167 - hdcd filter
168 - readvitc filter
169 - VAAPI-accelerated format conversion and scaling
170 - libnpp/CUDA-accelerated format conversion and scaling
171 - Duck TrueMotion 2.0 Real Time decoder
172 - Wideband Single-bit Data (WSD) demuxer
173 - VAAPI-accelerated H.264/HEVC/MJPEG encoding
174 - DTS Express (LBR) decoder
175 - Generic OpenMAX IL encoder with support for Raspberry Pi
176 - IFF ANIM demuxer & decoder
177 - Direct Stream Transfer (DST) decoder
178 - loudnorm filter
179 - MTAF demuxer and decoder
180 - MagicYUV decoder
181 - OpenExr improvements (tile data and B44/B44A support)
182 - BitJazz SheerVideo decoder
183 - CUDA CUVID H264/HEVC decoder
184 - 10-bit depth support in native utvideo decoder
185 - libutvideo wrapper removed
186 - YUY2 Lossless Codec decoder
187 - VideoToolbox H.264 encoder
188
189
190 version 3.0:
191 - Common Encryption (CENC) MP4 encoding and decoding support
192 - DXV decoding
193 - extrastereo filter
194 - ocr filter
195 - alimiter filter
196 - stereowiden filter
197 - stereotools filter
198 - rubberband filter
199 - tremolo filter
200 - agate filter
201 - chromakey filter
202 - maskedmerge filter
203 - Screenpresso SPV1 decoding
204 - chromaprint fingerprinting muxer
205 - ffplay dynamic volume control
206 - displace filter
207 - selectivecolor filter
208 - extensive native AAC encoder improvements and removal of experimental flag
209 - ADPCM PSX decoder
210 - 3dostr, dcstr, fsb, genh, vag, xvag, ads, msf, svag & vpk demuxer
211 - zscale filter
212 - wve demuxer
213 - zero-copy Intel QSV transcoding in ffmpeg
214 - shuffleframes filter
215 - SDX2 DPCM decoder
216 - vibrato filter
217 - innoHeim/Rsupport Screen Capture Codec decoder
218 - ADPCM AICA decoder
219 - Interplay ACM demuxer and audio decoder
220 - XMA1 & XMA2 decoder
221 - realtime filter
222 - anoisesrc audio filter source
223 - IVR demuxer
224 - compensationdelay filter
225 - acompressor filter
226 - support encoding 16-bit RLE SGI images
227 - apulsator filter
228 - sidechaingate audio filter
229 - mipsdspr1 option has been renamed to mipsdsp
230 - aemphasis filter
231 - mips32r5 option has been removed
232 - mips64r6 option has been removed
233 - DXVA2-accelerated VP9 decoding
234 - SOFAlizer: virtual binaural acoustics filter
235 - VAAPI VP9 hwaccel
236 - audio high-order multiband parametric equalizer
237 - automatic bitstream filtering
238 - showspectrumpic filter
239 - libstagefright support removed
240 - spectrumsynth filter
241 - ahistogram filter
242 - only seek with the right mouse button in ffplay
243 - toggle full screen when double-clicking with the left mouse button in ffplay
244 - afftfilt filter
245 - convolution filter
246 - libquvi support removed
247 - support for dvaudio in wav and avi
248 - libaacplus and libvo-aacenc support removed
249 - Cineform HD decoder
250 - new DCA decoder with full support for DTS-HD extensions
251 - significant performance improvements in Windows Television (WTV) demuxer
252 - nnedi deinterlacer
253 - streamselect video and astreamselect audio filter
254 - swaprect filter
255 - metadata video and ametadata audio filter
256 - SMPTE VC-2 HQ profile support for the Dirac decoder
257 - SMPTE VC-2 native encoder supporting the HQ profile
258
259
260 version 2.8:
261 - colorkey video filter
262 - BFSTM/BCSTM demuxer
263 - little-endian ADPCM_THP decoder
264 - Hap decoder and encoder
265 - DirectDraw Surface image/texture decoder
266 - ssim filter
267 - optional new ASF demuxer
268 - showvolume filter
269 - Many improvements to the JPEG 2000 decoder
270 - Go2Meeting decoding support
271 - adrawgraph audio and drawgraph video filter
272 - removegrain video filter
273 - Intel QSV-accelerated MPEG-2 video and HEVC encoding
274 - Intel QSV-accelerated MPEG-2 video and HEVC decoding
275 - Intel QSV-accelerated VC-1 video decoding
276 - libkvazaar HEVC encoder
277 - erosion, dilation, deflate and inflate video filters
278 - Dynamic Audio Normalizer as dynaudnorm filter
279 - Reverse video and areverse audio filter
280 - Random filter
281 - deband filter
282 - AAC fixed-point decoding
283 - sidechaincompress audio filter
284 - bitstream filter for converting HEVC from MP4 to Annex B
285 - acrossfade audio filter
286 - allyuv and allrgb video sources
287 - atadenoise video filter
288 - OS X VideoToolbox support
289 - aphasemeter filter
290 - showfreqs filter
291 - vectorscope filter
292 - waveform filter
293 - hstack and vstack filter
294 - Support DNx100 (1440x1080@8)
295 - VAAPI hevc hwaccel
296 - VDPAU hevc hwaccel
297 - framerate filter
298 - Switched default encoders for webm to VP9 and Opus
299 - Removed experimental flag from the JPEG 2000 encoder
300
301
302 version 2.7:
303 - FFT video filter
304 - TDSC decoder
305 - DTS lossless extension (XLL) decoding (not lossless, disabled by default)
306 - showwavespic filter
307 - DTS decoding through libdcadec
308 - Drop support for nvenc API before 5.0
309 - nvenc HEVC encoder
310 - Detelecine filter
311 - Intel QSV-accelerated H.264 encoding
312 - MMAL-accelerated H.264 decoding
313 - basic APNG encoder and muxer with default extension "apng"
314 - unpack DivX-style packed B-frames in MPEG-4 bitstream filter
315 - WebM Live Chunk Muxer
316 - nvenc level and tier options
317 - chorus filter
318 - Canopus HQ/HQA decoder
319 - Automatically rotate videos based on metadata in ffmpeg
320 - improved Quickdraw compatibility
321 - VP9 high bit-depth and extended colorspaces decoding support
322 - WebPAnimEncoder API when available for encoding and muxing WebP
323 - Direct3D11-accelerated decoding
324 - Support Secure Transport
325 - Multipart JPEG demuxer
326
327
328 version 2.6:
329 - nvenc encoder
330 - 10bit spp filter
331 - colorlevels filter
332 - RIFX format for *.wav files
333 - RTP/mpegts muxer
334 - non continuous cache protocol support
335 - tblend filter
336 - cropdetect support for non 8bpp, absolute (if limit >= 1) and relative (if limit < 1.0) threshold
337 - Camellia symmetric block cipher
338 - OpenH264 encoder wrapper
339 - VOC seeking support
340 - Closed caption Decoder
341 - fspp, uspp, pp7 MPlayer postprocessing filters ported to native filters
342 - showpalette filter
343 - Twofish symmetric block cipher
344 - Support DNx100 (960x720@8)
345 - eq2 filter ported from libmpcodecs as eq filter
346 - removed libmpcodecs
347 - Changed default DNxHD colour range in QuickTime .mov derivatives to mpeg range
348 - ported softpulldown filter from libmpcodecs as repeatfields filter
349 - dcshift filter
350 - RTP depacketizer for loss tolerant payload format for MP3 audio (RFC 5219)
351 - RTP depacketizer for AC3 payload format (RFC 4184)
352 - palettegen and paletteuse filters
353 - VP9 RTP payload format (draft 0) experimental depacketizer
354 - RTP depacketizer for DV (RFC 6469)
355 - DXVA2-accelerated HEVC decoding
356 - AAC ELD 480 decoding
357 - Intel QSV-accelerated H.264 decoding
358 - DSS SP decoder and DSS demuxer
359 - Fix stsd atom corruption in DNxHD QuickTimes
360 - Canopus HQX decoder
361 - RTP depacketization of T.140 text (RFC 4103)
362 - Port MIPS optimizations to 64-bit
363
364
365 version 2.5:
366 - HEVC/H.265 RTP payload format (draft v6) packetizer
367 - SUP/PGS subtitle demuxer
368 - ffprobe -show_pixel_formats option
369 - CAST128 symmetric block cipher, ECB mode
370 - STL subtitle demuxer and decoder
371 - libutvideo YUV 4:2:2 10bit support
372 - XCB-based screen-grabber
373 - UDP-Lite support (RFC 3828)
374 - xBR scaling filter
375 - AVFoundation screen capturing support
376 - ffserver supports codec private options
377 - creating DASH compatible fragmented MP4, MPEG-DASH segmenting muxer
378 - WebP muxer with animated WebP support
379 - zygoaudio decoding support
380 - APNG demuxer
381 - postproc visualization support
382
383
384 version 2.4:
385 - Icecast protocol
386 - ported lenscorrection filter from frei0r filter
387 - large optimizations in dctdnoiz to make it usable
388 - ICY metadata are now requested by default with the HTTP protocol
389 - support for using metadata in stream specifiers in fftools
390 - LZMA compression support in TIFF decoder
391 - H.261 RTP payload format (RFC 4587) depacketizer and experimental packetizer
392 - HEVC/H.265 RTP payload format (draft v6) depacketizer
393 - added codecview filter to visualize information exported by some codecs
394 - Matroska 3D support thorugh side data
395 - HTML generation using texi2html is deprecated in favor of makeinfo/texi2any
396 - silenceremove filter
397
398
399 version 2.3:
400 - AC3 fixed-point decoding
401 - shuffleplanes filter
402 - subfile protocol
403 - Phantom Cine demuxer
404 - replaygain data export
405 - VP7 video decoder
406 - Alias PIX image encoder and decoder
407 - Improvements to the BRender PIX image decoder
408 - Improvements to the XBM decoder
409 - QTKit input device
410 - improvements to OpenEXR image decoder
411 - support decoding 16-bit RLE SGI images
412 - GDI screen grabbing for Windows
413 - alternative rendition support for HTTP Live Streaming
414 - AVFoundation input device
415 - Direct Stream Digital (DSD) decoder
416 - Magic Lantern Video (MLV) demuxer
417 - On2 AVC (Audio for Video) decoder
418 - support for decoding through DXVA2 in ffmpeg
419 - libbs2b-based stereo-to-binaural audio filter
420 - libx264 reference frames count limiting depending on level
421 - native Opus decoder
422 - display matrix export and rotation API
423 - WebVTT encoder
424 - showcqt multimedia filter
425 - zoompan filter
426 - signalstats filter
427 - hqx filter (hq2x, hq3x, hq4x)
428 - flanger filter
429 - Image format auto-detection
430 - LRC demuxer and muxer
431 - Samba protocol (via libsmbclient)
432 - WebM DASH Manifest muxer
433 - libfribidi support in drawtext
434
435
436 version 2.2:
437
438 - HNM version 4 demuxer and video decoder
439 - Live HDS muxer
440 - setsar/setdar filters now support variables in ratio expressions
441 - elbg filter
442 - string validation in ffprobe
443 - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
444 - complete Voxware MetaSound decoder
445 - remove mp3_header_compress bitstream filter
446 - Windows resource files for shared libraries
447 - aeval filter
448 - stereoscopic 3d metadata handling
449 - WebP encoding via libwebp
450 - ATRAC3+ decoder
451 - VP8 in Ogg demuxing
452 - side & metadata support in NUT
453 - framepack filter
454 - XYZ12 rawvideo support in NUT
455 - Exif metadata support in WebP decoder
456 - OpenGL device
457 - Use metadata_header_padding to control padding in ID3 tags (currently used in
458   MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
459 - Mirillis FIC video decoder
460 - Support DNx444
461 - libx265 encoder
462 - dejudder filter
463 - Autodetect VDA like all other hardware accelerations
464 - aliases and defaults for Ogg subtypes (opus, spx)
465
466
467 version 2.1:
468
469 - aecho filter
470 - perspective filter ported from libmpcodecs
471 - ffprobe -show_programs option
472 - compand filter
473 - RTMP seek support
474 - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
475   even when used as an input option. Previous behavior can be restored with
476   the -noaccurate_seek option.
477 - ffmpeg -t option can now be used for inputs, to limit the duration of
478   data read from an input file
479 - incomplete Voxware MetaSound decoder
480 - read EXIF metadata from JPEG
481 - DVB teletext decoder
482 - phase filter ported from libmpcodecs
483 - w3fdif filter
484 - Opus support in Matroska
485 - FFV1 version 1.3 is stable and no longer experimental
486 - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
487 - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
488   more consistent with other muxers.
489 - adelay filter
490 - pullup filter ported from libmpcodecs
491 - ffprobe -read_intervals option
492 - Lossless and alpha support for WebP decoder
493 - Error Resilient AAC syntax (ER AAC LC) decoding
494 - Low Delay AAC (ER AAC LD) decoding
495 - mux chapters in ASF files
496 - SFTP protocol (via libssh)
497 - libx264: add ability to encode in YUVJ422P and YUVJ444P
498 - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
499 - make decoding alpha optional for prores, ffv1 and vp6 by setting
500   the skip_alpha flag.
501 - ladspa wrapper filter
502 - native VP9 decoder
503 - dpx parser
504 - max_error_rate parameter in ffmpeg
505 - PulseAudio output device
506 - ReplayGain scanner
507 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
508 - Linux framebuffer output device
509 - HEVC decoder
510 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
511 - mergeplanes filter
512
513
514 version 2.0:
515
516 - curves filter
517 - reference-counting for AVFrame and AVPacket data
518 - ffmpeg now fails when input options are used for output file
519   or vice versa
520 - support for Monkey's Audio versions from 3.93
521 - perms and aperms filters
522 - audio filtering support in ffplay
523 - 10% faster aac encoding on x86 and MIPS
524 - sine audio filter source
525 - WebP demuxing and decoding support
526 - ffmpeg options -filter_script and -filter_complex_script, which allow a
527   filtergraph description to be read from a file
528 - OpenCL support
529 - audio phaser filter
530 - separatefields filter
531 - libquvi demuxer
532 - uniform options syntax across all filters
533 - telecine filter
534 - interlace filter
535 - smptehdbars source
536 - inverse telecine filters (fieldmatch and decimate)
537 - colorbalance filter
538 - colorchannelmixer filter
539 - The matroska demuxer can now output proper verbatim ASS packets. It will
540   become the default at the next libavformat major bump.
541 - decent native animated GIF encoding
542 - asetrate filter
543 - interleave filter
544 - timeline editing with filters
545 - vidstabdetect and vidstabtransform filters for video stabilization using
546   the vid.stab library
547 - astats filter
548 - trim and atrim filters
549 - ffmpeg -t and -ss (output-only) options are now sample-accurate when
550   transcoding audio
551 - Matroska muxer can now put the index at the beginning of the file.
552 - extractplanes filter
553 - avectorscope filter
554 - ADPCM DTK decoder
555 - ADP demuxer
556 - RSD demuxer
557 - RedSpark demuxer
558 - ADPCM IMA Radical decoder
559 - zmq filters
560 - DCT denoiser filter (dctdnoiz)
561 - Wavelet denoiser filter ported from libmpcodecs as owdenoise (formerly "ow")
562 - Apple Intermediate Codec decoder
563 - Escape 130 video decoder
564 - FTP protocol support
565 - V4L2 output device
566 - 3D LUT filter (lut3d)
567 - SMPTE 302M audio encoder
568 - support for slice multithreading in libavfilter
569 - Hald CLUT support (generation and filtering)
570 - VC-1 interlaced B-frame support
571 - support for WavPack muxing (raw and in Matroska)
572 - XVideo output device
573 - vignette filter
574 - True Audio (TTA) encoder
575 - Go2Webinar decoder
576 - mcdeint filter ported from libmpcodecs
577 - sab filter ported from libmpcodecs
578 - ffprobe -show_chapters option
579 - WavPack encoding through libwavpack
580 - rotate filter
581 - spp filter ported from libmpcodecs
582 - libgme support
583 - psnr filter
584
585
586 version 1.2:
587
588 - VDPAU hardware acceleration through normal hwaccel
589 - SRTP support
590 - Error diffusion dither in Swscale
591 - Chained Ogg support
592 - Theora Midstream reconfiguration support
593 - EVRC decoder
594 - audio fade filter
595 - filtering audio with unknown channel layout
596 - allpass, bass, bandpass, bandreject, biquad, equalizer, highpass, lowpass
597   and treble audio filter
598 - improved showspectrum filter, with multichannel support and sox-like colors
599 - histogram filter
600 - tee muxer
601 - il filter ported from libmpcodecs
602 - support ID3v2 tags in ASF files
603 - encrypted TTA stream decoding support
604 - RF64 support in WAV muxer
605 - noise filter ported from libmpcodecs
606 - Subtitles character encoding conversion
607 - blend filter
608 - stereo3d filter ported from libmpcodecs
609
610
611 version 1.1:
612
613 - stream disposition information printing in ffprobe
614 - filter for loudness analysis following EBU R128
615 - Opus encoder using libopus
616 - ffprobe -select_streams option
617 - Pinnacle TARGA CineWave YUV16 decoder
618 - TAK demuxer, decoder and parser
619 - DTS-HD demuxer
620 - remove -same_quant, it hasn't worked for years
621 - FFM2 support
622 - X-Face image encoder and decoder
623 - 24-bit FLAC encoding
624 - multi-channel ALAC encoding up to 7.1
625 - metadata (INFO tag) support in WAV muxer
626 - subtitles raw text decoder
627 - support for building DLLs using MSVC
628 - LVF demuxer
629 - ffescape tool
630 - metadata (info chunk) support in CAF muxer
631 - field filter ported from libmpcodecs
632 - AVR demuxer
633 - geq filter ported from libmpcodecs
634 - remove ffserver daemon mode
635 - AST muxer/demuxer
636 - new expansion syntax for drawtext
637 - BRender PIX image decoder
638 - ffprobe -show_entries option
639 - ffprobe -sections option
640 - ADPCM IMA Dialogic decoder
641 - BRSTM demuxer
642 - animated GIF decoder and demuxer
643 - PVF demuxer
644 - subtitles filter
645 - IRCAM muxer/demuxer
646 - Paris Audio File demuxer
647 - Virtual concatenation demuxer
648 - VobSub demuxer
649 - JSON captions for TED talks decoding support
650 - SOX Resampler support in libswresample
651 - aselect filter
652 - SGI RLE 8-bit / Silicon Graphics RLE 8-bit video decoder
653 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
654 - Silicon Graphics Movie demuxer
655 - apad filter
656 - Resolution & pixel format change support with multithreading for H.264
657 - documentation split into per-component manuals
658 - pp (postproc) filter ported from MPlayer
659 - NIST Sphere demuxer
660 - MPL2, VPlayer, MPlayer, AQTitle, PJS and SubViewer v1 subtitles demuxers and decoders
661 - Sony Wave64 muxer
662 - adobe and limelight publisher authentication in RTMP
663 - data: URI scheme
664 - support building on the Plan 9 operating system
665 - kerndeint filter ported from MPlayer
666 - histeq filter ported from VirtualDub
667 - Megalux Frame demuxer
668 - 012v decoder
669 - Improved AVC Intra decoding support
670
671
672 version 1.0:
673
674 - INI and flat output in ffprobe
675 - Scene detection in libavfilter
676 - Indeo Audio decoder
677 - channelsplit audio filter
678 - setnsamples audio filter
679 - atempo filter
680 - ffprobe -show_data option
681 - RTMPT protocol support
682 - iLBC encoding/decoding via libilbc
683 - Microsoft Screen 1 decoder
684 - join audio filter
685 - audio channel mapping filter
686 - Microsoft ATC Screen decoder
687 - RTSP listen mode
688 - TechSmith Screen Codec 2 decoder
689 - AAC encoding via libfdk-aac
690 - Microsoft Expression Encoder Screen decoder
691 - RTMPS protocol support
692 - RTMPTS protocol support
693 - RTMPE protocol support
694 - RTMPTE protocol support
695 - showwaves and showspectrum filter
696 - LucasArts SMUSH SANM playback support
697 - LucasArts SMUSH VIMA audio decoder (ADPCM)
698 - LucasArts SMUSH demuxer
699 - SAMI, RealText and SubViewer demuxers and decoders
700 - Heart Of Darkness PAF playback support
701 - iec61883 device
702 - asettb filter
703 - new option: -progress
704 - 3GPP Timed Text encoder/decoder
705 - GeoTIFF decoder support
706 - ffmpeg -(no)stdin option
707 - Opus decoder using libopus
708 - caca output device using libcaca
709 - alphaextract and alphamerge filters
710 - concat filter
711 - flite filter
712 - Canopus Lossless Codec decoder
713 - bitmap subtitles in filters (experimental and temporary)
714 - MP2 encoding via TwoLAME
715 - bmp parser
716 - smptebars source
717 - asetpts filter
718 - hue filter
719 - ICO muxer
720 - SubRip encoder and decoder without embedded timing
721 - edge detection filter
722 - framestep filter
723 - ffmpeg -shortest option is now per-output file
724   -pass and -passlogfile are now per-output stream
725 - volume measurement filter
726 - Ut Video encoder
727 - Microsoft Screen 2 decoder
728 - smartblur filter ported from MPlayer
729 - CPiA decoder
730 - decimate filter ported from MPlayer
731 - RTP depacketization of JPEG
732 - Smooth Streaming live segmenter muxer
733 - F4V muxer
734 - sendcmd and asendcmd filters
735 - WebVTT demuxer and decoder (simple tags supported)
736 - RTP packetization of JPEG
737 - faststart option in the MOV/MP4 muxer
738 - support for building with MSVC
739
740
741 version 0.11:
742
743 - Fixes: CVE-2012-2772, CVE-2012-2774, CVE-2012-2775, CVE-2012-2776, CVE-2012-2777,
744          CVE-2012-2779, CVE-2012-2782, CVE-2012-2783, CVE-2012-2784, CVE-2012-2785,
745          CVE-2012-2786, CVE-2012-2787, CVE-2012-2788, CVE-2012-2789, CVE-2012-2790,
746          CVE-2012-2791, CVE-2012-2792, CVE-2012-2793, CVE-2012-2794, CVE-2012-2795,
747          CVE-2012-2796, CVE-2012-2797, CVE-2012-2798, CVE-2012-2799, CVE-2012-2800,
748          CVE-2012-2801, CVE-2012-2802, CVE-2012-2803, CVE-2012-2804,
749 - v408 Quicktime and Microsoft AYUV Uncompressed 4:4:4:4 encoder and decoder
750 - setfield filter
751 - CDXL demuxer and decoder
752 - Apple ProRes encoder
753 - ffprobe -count_packets and -count_frames options
754 - Sun Rasterfile Encoder
755 - ID3v2 attached pictures reading and writing
756 - WMA Lossless decoder
757 - bluray protocol
758 - blackdetect filter
759 - libutvideo encoder wrapper (--enable-libutvideo)
760 - swapuv filter
761 - bbox filter
762 - XBM encoder and decoder
763 - RealAudio Lossless decoder
764 - ZeroCodec decoder
765 - tile video filter
766 - Metal Gear Solid: The Twin Snakes demuxer
767 - OpenEXR image decoder
768 - removelogo filter
769 - drop support for ffmpeg without libavfilter
770 - drawtext video filter: fontconfig support
771 - ffmpeg -benchmark_all option
772 - super2xsai filter ported from libmpcodecs
773 - add libavresample audio conversion library for compatibility
774 - MicroDVD decoder
775 - Avid Meridien (AVUI) encoder and decoder
776 - accept + prefix to -pix_fmt option to disable automatic conversions.
777 - complete audio filtering in libavfilter and ffmpeg
778 - add fps filter
779 - vorbis parser
780 - png parser
781 - audio mix filter
782 - ffv1: support (draft) version 1.3
783
784
785 version 0.10:
786
787 - Fixes: CVE-2011-3929, CVE-2011-3934, CVE-2011-3935, CVE-2011-3936,
788          CVE-2011-3937, CVE-2011-3940, CVE-2011-3941, CVE-2011-3944,
789          CVE-2011-3945, CVE-2011-3946, CVE-2011-3947, CVE-2011-3949,
790          CVE-2011-3950, CVE-2011-3951, CVE-2011-3952
791 - v410 Quicktime Uncompressed 4:4:4 10-bit encoder and decoder
792 - SBaGen (SBG) binaural beats script demuxer
793 - OpenMG Audio muxer
794 - Timecode extraction in DV and MOV
795 - thumbnail video filter
796 - XML output in ffprobe
797 - asplit audio filter
798 - tinterlace video filter
799 - astreamsync audio filter
800 - amerge audio filter
801 - ISMV (Smooth Streaming) muxer
802 - GSM audio parser
803 - SMJPEG muxer
804 - XWD encoder and decoder
805 - Automatic thread count based on detection number of (available) CPU cores
806 - y41p Brooktree Uncompressed 4:1:1 12-bit encoder and decoder
807 - ffprobe -show_error option
808 - Avid 1:1 10-bit RGB Packer codec
809 - v308 Quicktime Uncompressed 4:4:4 encoder and decoder
810 - yuv4 libquicktime packed 4:2:0 encoder and decoder
811 - ffprobe -show_frames option
812 - silencedetect audio filter
813 - ffprobe -show_program_version, -show_library_versions, -show_versions options
814 - rv34: frame-level multi-threading
815 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
816 - Improved PGS subtitle decoder
817 - dumpgraph option to lavfi device
818 - r210 and r10k encoders
819 - ffwavesynth decoder
820 - aviocat tool
821 - ffeval tool
822 - support encoding and decoding 4-channel SGI images
823
824
825 version 0.9:
826
827 - openal input device added
828 - boxblur filter added
829 - BWF muxer
830 - Flash Screen Video 2 decoder
831 - lavfi input device added
832 - added avconv, which is almost the same for now, except
833 for a few incompatible changes in the options, which will hopefully make them
834 easier to use. The changes are:
835     * The options placement is now strictly enforced! While in theory the
836       options for ffmpeg should be given in [input options] -i INPUT [output
837       options] OUTPUT order, in practice it was possible to give output options
838       before the -i and it mostly worked. Except when it didn't - the behavior was
839       a bit inconsistent. In avconv, it is not possible to mix input and output
840       options. All non-global options are reset after an input or output filename.
841     * All per-file options are now truly per-file - they apply only to the next
842       input or output file and specifying different values for different files
843       will now work properly (notably -ss and -t options).
844     * All per-stream options are now truly per-stream - it is possible to
845       specify which stream(s) should a given option apply to. See the Stream
846       specifiers section in the avconv manual for details.
847     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
848       sense that they're specified after the output filename instead of before,
849       like all other options. In avconv this irregularity is removed, all options
850       apply to the next input or output file.
851     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
852       irregular and highly confusing, they were also redundant. In avconv the -map
853       option will create new streams in the output file and map input streams to
854       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
855       each stream in the first input file.
856     * The -map option now has slightly different and more powerful syntax:
857         + Colons (':') are used to separate file index/stream type/stream index
858           instead of dots. Comma (',') is used to separate the sync stream instead
859           of colon.. This is done for consistency with other options.
860         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
861           output stream from the third input audio stream.
862         + Omitting the stream index now maps all the streams of the given type,
863           not just the first. E.g. -map 0:s creates output streams for all the
864           subtitle streams in the first input file.
865         + Since -map can now match multiple streams, negative mappings were
866           introduced. Negative mappings disable some streams from an already
867           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
868           all the stream in the first input file, except for the second audio
869           stream'.
870     * There is a new option -c (or -codec) for choosing the decoder/encoder to
871       use, which makes it possible to precisely specify target stream(s) consistently with
872       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
873       libvorbis sets the codec for the first audio stream and -c copy copies all
874       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
875       aliases to -c:v/a/s
876     * It is now possible to precisely specify which stream should an AVOption
877       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
878       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
879       syntax is deprecated and will stop working soon.
880     * -map_chapters now takes only an input file index and applies to the next
881       output file. This is consistent with how all the other options work.
882     * -map_metadata now takes only an input metadata specifier and applies to
883       the next output file. Output metadata specifier is now part of the option
884       name, similarly to the AVOptions/map/codec feature above.
885     * -metadata can now be used to set metadata on streams and chapters, e.g.
886       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
887       This made -vlang/-alang/-slang options redundant, so they were removed.
888     * -qscale option now uses stream specifiers and applies to all streams, not
889       just video. I.e. plain -qscale number would now apply to all streams. To get
890       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
891       and -aq is now an alias for -q:a.
892     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
893       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
894     * -itsscale option now uses stream specifiers, so its argument is only the
895       scale parameter.
896     * -intra option was removed, use -g 0 for the same effect.
897     * -psnr option was removed, use -flags +psnr for the same effect.
898     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
899     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
900     * -vtag/-atag/-stag options are now aliases to the new -tag option.
901 - XMV demuxer
902 - LOAS demuxer
903 - ashowinfo filter added
904 - Windows Media Image decoder
905 - amovie source added
906 - LATM muxer/demuxer
907 - Speex encoder via libspeex
908 - JSON output in ffprobe
909 - WTV muxer
910 - Optional C++ Support (needed for libstagefright)
911 - H.264 Decoding on Android via Stagefright
912 - Prores decoder
913 - BIN/XBIN/ADF/IDF text file decoder
914 - aconvert audio filter added
915 - audio support to lavfi input device added
916 - libcdio-paranoia input device for audio CD grabbing
917 - Apple ProRes decoder
918 - CELT in Ogg demuxing
919 - G.723.1 demuxer and decoder
920 - libmodplug support (--enable-libmodplug)
921 - VC-1 interlaced decoding
922 - libutvideo wrapper (--enable-libutvideo)
923 - aevalsrc audio source added
924 - Ut Video decoder
925 - Speex encoding via libspeex
926 - 4:2:2 H.264 decoding support
927 - 4:2:2 and 4:4:4 H.264 encoding with libx264
928 - Pulseaudio input device
929 - Prores encoder
930 - Video Decoder Acceleration (VDA) HWAccel module.
931 - replacement Indeo 3 decoder
932 - new ffmpeg option: -map_channel
933 - volume audio filter added
934 - earwax audio filter added
935 - libv4l2 support (--enable-libv4l2)
936 - TLS/SSL and HTTPS protocol support
937 - AVOptions API rewritten and documented
938 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
939   AVCodecContext deprecated. Codec private options should be used instead.
940 - Properly working defaults in libx264 wrapper, support for native presets.
941 - Encrypted OMA files support
942 - Discworld II BMV decoding support
943 - VBLE Decoder
944 - OS X Video Decoder Acceleration (VDA) support
945 - compact and csv output in ffprobe
946 - pan audio filter
947 - IFF Amiga Continuous Bitmap (ACBM) decoder
948 - ass filter
949 - CRI ADX audio format muxer and demuxer
950 - Playstation Portable PMP format demuxer
951 - Microsoft Windows ICO demuxer
952 - life source
953 - PCM format support in OMA demuxer
954 - CLJR encoder
955 - new option: -report
956 - Dxtory capture format decoder
957 - cellauto source
958 - Simple segmenting muxer
959 - Indeo 4 decoder
960 - SMJPEG demuxer
961
962
963 version 0.8:
964
965 - many many things we forgot because we rather write code than changelogs
966 - WebM support in Matroska de/muxer
967 - low overhead Ogg muxing
968 - MMS-TCP support
969 - VP8 de/encoding via libvpx
970 - Demuxer for On2's IVF format
971 - Pictor/PC Paint decoder
972 - HE-AAC v2 decoder
973 - HE-AAC v2 encoding with libaacplus
974 - libfaad2 wrapper removed
975 - DTS-ES extension (XCh) decoding support
976 - native VP8 decoder
977 - RTSP tunneling over HTTP
978 - RTP depacketization of SVQ3
979 - -strict inofficial replaced by -strict unofficial
980 - ffplay -exitonkeydown and -exitonmousedown options added
981 - native GSM / GSM MS decoder
982 - RTP depacketization of QDM2
983 - ANSI/ASCII art playback system
984 - Lego Mindstorms RSO de/muxer
985 - libavcore added (and subsequently removed)
986 - SubRip subtitle file muxer and demuxer
987 - Chinese AVS encoding via libxavs
988 - ffprobe -show_packets option added
989 - RTP packetization of Theora and Vorbis
990 - RTP depacketization of MP4A-LATM
991 - RTP packetization and depacketization of VP8
992 - hflip filter
993 - Apple HTTP Live Streaming demuxer
994 - a64 codec
995 - MMS-HTTP support
996 - G.722 ADPCM audio encoder/decoder
997 - R10k video decoder
998 - ocv_smooth filter
999 - frei0r wrapper filter
1000 - change crop filter syntax to width:height:x:y
1001 - make the crop filter accept parametric expressions
1002 - make ffprobe accept AVFormatContext options
1003 - yadif filter
1004 - blackframe filter
1005 - Demuxer for Leitch/Harris' VR native stream format (LXF)
1006 - RTP depacketization of the X-QT QuickTime format
1007 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
1008 - cropdetect filter
1009 - ffmpeg -crop* options removed
1010 - transpose filter added
1011 - ffmpeg -force_key_frames option added
1012 - demuxer for receiving raw rtp:// URLs without an SDP description
1013 - single stream LATM/LOAS decoder
1014 - setpts filter added
1015 - Win64 support for optimized x86 assembly functions
1016 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
1017 - ASS subtitle encoder and decoder
1018 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
1019 - overlay filter added
1020 - rename aspect filter to setdar, and pixelaspect to setsar
1021 - IEC 61937 demuxer
1022 - Mobotix .mxg demuxer
1023 - frei0r source added
1024 - hqdn3d filter added
1025 - RTP depacketization of QCELP
1026 - FLAC parser added
1027 - gradfun filter added
1028 - AMR-WB decoder
1029 - replace the ocv_smooth filter with a more generic ocv filter
1030 - Windows Televison (WTV) demuxer
1031 - FFmpeg metadata format muxer and demuxer
1032 - SubRip (srt) subtitle encoder and decoder
1033 - floating-point AC-3 encoder added
1034 - Lagarith decoder
1035 - ffmpeg -copytb option added
1036 - IVF muxer added
1037 - Wing Commander IV movies decoder added
1038 - movie source added
1039 - Bink version 'b' audio and video decoder
1040 - Bitmap Brothers JV playback system
1041 - Apple HTTP Live Streaming protocol handler
1042 - sndio support for playback and record
1043 - Linux framebuffer input device added
1044 - Chronomaster DFA decoder
1045 - DPX image encoder
1046 - MicroDVD subtitle file muxer and demuxer
1047 - Playstation Portable PMP format demuxer
1048 - fieldorder video filter added
1049 - AAC encoding via libvo-aacenc
1050 - AMR-WB encoding via libvo-amrwbenc
1051 - xWMA demuxer
1052 - Mobotix MxPEG decoder
1053 - VP8 frame-multithreading
1054 - NEON optimizations for VP8
1055 - Lots of deprecated API cruft removed
1056 - fft and imdct optimizations for AVX (Sandy Bridge) processors
1057 - showinfo filter added
1058 - SMPTE 302M AES3 audio decoder
1059 - Apple Core Audio Format muxer
1060 - 9 bits and 10 bits per sample support in the H.264 decoder
1061 - 9 bits and 10 bits FFV1 encoding / decoding
1062 - split filter added
1063 - select filter added
1064 - sdl output device added
1065 - libmpcodecs video filter support (3 times as many filters than before)
1066 - mpeg2 aspect ratio dection fixed
1067 - libxvid aspect pickiness fixed
1068 - Frame multithreaded decoding
1069 - E-AC-3 audio encoder
1070 - ac3enc: add channel coupling support
1071 - floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders.
1072 - H264/MPEG frame-level multi-threading
1073 - All av_metadata_* functions renamed to av_dict_* and moved to libavutil
1074 - 4:4:4 H.264 decoding support
1075 - 10-bit H.264 optimizations for x86
1076 - lut, lutrgb, and lutyuv filters added
1077 - buffersink libavfilter sink added
1078 - Bump libswscale for recently reported ABI break
1079 - New J2K encoder (via OpenJPEG)
1080
1081
1082 version 0.7:
1083
1084 - all the changes for 0.8, but keeping API/ABI compatibility with the 0.6 release
1085
1086
1087 version 0.6:
1088
1089 - PB-frame decoding for H.263
1090 - deprecated vhook subsystem removed
1091 - deprecated old scaler removed
1092 - VQF demuxer
1093 - Alpha channel scaler
1094 - PCX encoder
1095 - RTP packetization of H.263
1096 - RTP packetization of AMR
1097 - RTP depacketization of Vorbis
1098 - CorePNG decoding support
1099 - Cook multichannel decoding support
1100 - introduced avlanguage helpers in libavformat
1101 - 8088flex TMV demuxer and decoder
1102 - per-stream language-tags extraction in asfdec
1103 - V210 decoder and encoder
1104 - remaining GPL parts in AC-3 decoder converted to LGPL
1105 - QCP demuxer
1106 - SoX native format muxer and demuxer
1107 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
1108 - DPX image decoder
1109 - Electronic Arts Madcow decoder
1110 - DivX (XSUB) subtitle encoder
1111 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
1112 - experimental AAC encoder
1113 - RTP depacketization of ASF and RTSP from WMS servers
1114 - RTMP support in libavformat
1115 - noX handling for OPT_BOOL X options
1116 - Wave64 demuxer
1117 - IEC-61937 compatible Muxer
1118 - TwinVQ decoder
1119 - Bluray (PGS) subtitle decoder
1120 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
1121 - WMA Pro decoder
1122 - Core Audio Format demuxer
1123 - ATRAC1 decoder
1124 - MD STUDIO audio demuxer
1125 - RF64 support in WAV demuxer
1126 - MPEG-4 Audio Lossless Coding (ALS) decoder
1127 - -formats option split into -formats, -codecs, -bsfs, and -protocols
1128 - IV8 demuxer
1129 - CDG demuxer and decoder
1130 - R210 decoder
1131 - Auravision Aura 1 and 2 decoders
1132 - Deluxe Paint Animation playback system
1133 - SIPR decoder
1134 - Adobe Filmstrip muxer and demuxer
1135 - RTP depacketization of H.263
1136 - Bink demuxer and audio/video decoders
1137 - enable symbol versioning by default for linkers that support it
1138 - IFF PBM/ILBM bitmap decoder
1139 - concat protocol
1140 - Indeo 5 decoder
1141 - RTP depacketization of AMR
1142 - WMA Voice decoder
1143 - ffprobe tool
1144 - AMR-NB decoder
1145 - RTSP muxer
1146 - HE-AAC v1 decoder
1147 - Kega Game Video (KGV1) decoder
1148 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
1149 - RTP depacketization of Theora
1150 - HTTP Digest authentication
1151 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
1152 - Psygnosis YOP demuxer and video decoder
1153 - spectral extension support in the E-AC-3 decoder
1154 - unsharp video filter
1155 - RTP hinting in the mov/3gp/mp4 muxer
1156 - Dirac in Ogg demuxing
1157 - seek to keyframes in Ogg
1158 - 4:2:2 and 4:4:4 Theora decoding
1159 - 35% faster VP3/Theora decoding
1160 - faster AAC decoding
1161 - faster H.264 decoding
1162 - RealAudio 1.0 (14.4K) encoder
1163
1164
1165 version 0.5:
1166
1167 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
1168 - TechSmith Camtasia (TSCC) video decoder
1169 - IBM Ultimotion (ULTI) video decoder
1170 - Sierra Online audio file demuxer and decoder
1171 - Apple QuickDraw (qdrw) video decoder
1172 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
1173 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
1174 - Miro VideoXL (VIXL) video decoder
1175 - H.261 video encoder
1176 - QPEG video decoder
1177 - Nullsoft Video (NSV) file demuxer
1178 - Shorten audio decoder
1179 - LOCO video decoder
1180 - Apple Lossless Audio Codec (ALAC) decoder
1181 - Winnov WNV1 video decoder
1182 - Autodesk Animator Studio Codec (AASC) decoder
1183 - Indeo 2 video decoder
1184 - Fraps FPS1 video decoder
1185 - Snow video encoder/decoder
1186 - Sonic audio encoder/decoder
1187 - Vorbis audio decoder
1188 - Macromedia ADPCM decoder
1189 - Duck TrueMotion 2 video decoder
1190 - support for decoding FLX and DTA extensions in FLIC files
1191 - H.264 custom quantization matrices support
1192 - ffserver fixed, it should now be usable again
1193 - QDM2 audio decoder
1194 - Real Cooker audio decoder
1195 - TrueSpeech audio decoder
1196 - WMA2 audio decoder fixed, now all files should play correctly
1197 - RealAudio 14.4 and 28.8 decoders fixed
1198 - JPEG-LS decoder
1199 - build system improvements
1200 - tabs and trailing whitespace removed from the codebase
1201 - CamStudio video decoder
1202 - AIFF/AIFF-C audio format, encoding and decoding
1203 - ADTS AAC file reading and writing
1204 - Creative VOC file reading and writing
1205 - American Laser Games multimedia (*.mm) playback system
1206 - Zip Motion Blocks Video decoder
1207 - improved Theora/VP3 decoder
1208 - True Audio (TTA) decoder
1209 - AVS demuxer and video decoder
1210 - JPEG-LS encoder
1211 - Smacker demuxer and decoder
1212 - NuppelVideo/MythTV demuxer and RTjpeg decoder
1213 - KMVC decoder
1214 - MPEG-2 intra VLC support
1215 - MPEG-2 4:2:2 encoder
1216 - Flash Screen Video decoder
1217 - GXF demuxer
1218 - Chinese AVS decoder
1219 - GXF muxer
1220 - MXF demuxer
1221 - VC-1/WMV3/WMV9 video decoder
1222 - MacIntel support
1223 - AviSynth support
1224 - VMware video decoder
1225 - VP5 video decoder
1226 - VP6 video decoder
1227 - WavPack lossless audio decoder
1228 - Targa (.TGA) picture decoder
1229 - Vorbis audio encoder
1230 - Delphine Software .cin demuxer/audio and video decoder
1231 - Tiertex .seq demuxer/video decoder
1232 - MTV demuxer
1233 - TIFF picture encoder and decoder
1234 - GIF picture decoder
1235 - Intel Music Coder decoder
1236 - Zip Motion Blocks Video encoder
1237 - Musepack decoder
1238 - Flash Screen Video encoder
1239 - Theora encoding via libtheora
1240 - BMP encoder
1241 - WMA encoder
1242 - GSM-MS encoder and decoder
1243 - DCA decoder
1244 - DXA demuxer and decoder
1245 - DNxHD decoder
1246 - Gamecube movie (.THP) playback system
1247 - Blackfin optimizations
1248 - Interplay C93 demuxer and video decoder
1249 - Bethsoft VID demuxer and video decoder
1250 - CRYO APC demuxer
1251 - ATRAC3 decoder
1252 - V.Flash PTX decoder
1253 - RoQ muxer, RoQ audio encoder
1254 - Renderware TXD demuxer and decoder
1255 - extern C declarations for C++ removed from headers
1256 - sws_flags command line option
1257 - codebook generator
1258 - RoQ video encoder
1259 - QTRLE encoder
1260 - OS/2 support removed and restored again
1261 - AC-3 decoder
1262 - NUT muxer
1263 - additional SPARC (VIS) optimizations
1264 - Matroska muxer
1265 - slice-based parallel H.264 decoding
1266 - Monkey's Audio demuxer and decoder
1267 - AMV audio and video decoder
1268 - DNxHD encoder
1269 - H.264 PAFF decoding
1270 - Nellymoser ASAO decoder
1271 - Beam Software SIFF demuxer and decoder
1272 - libvorbis Vorbis decoding removed in favor of native decoder
1273 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
1274 - Ogg (Theora, Vorbis and FLAC) muxer
1275 - The "device" muxers and demuxers are now in a new libavdevice library
1276 - PC Paintbrush PCX decoder
1277 - Sun Rasterfile decoder
1278 - TechnoTrend PVA demuxer
1279 - Linux Media Labs MPEG-4 (LMLM4) demuxer
1280 - AVM2 (Flash 9) SWF muxer
1281 - QT variant of IMA ADPCM encoder
1282 - VFW grabber
1283 - iPod/iPhone compatible mp4 muxer
1284 - Mimic decoder
1285 - MSN TCP Webcam stream demuxer
1286 - RL2 demuxer / decoder
1287 - IFF demuxer
1288 - 8SVX audio decoder
1289 - non-recursive Makefiles
1290 - BFI demuxer
1291 - MAXIS EA XA (.xa) demuxer / decoder
1292 - BFI video decoder
1293 - OMA demuxer
1294 - MLP/TrueHD decoder
1295 - Electronic Arts CMV decoder
1296 - Motion Pixels Video decoder
1297 - Motion Pixels MVI demuxer
1298 - removed animated GIF decoder/demuxer
1299 - D-Cinema audio muxer
1300 - Electronic Arts TGV decoder
1301 - Apple Lossless Audio Codec (ALAC) encoder
1302 - AAC decoder
1303 - floating point PCM encoder/decoder
1304 - MXF muxer
1305 - DV100 AKA DVCPRO HD decoder and demuxer
1306 - E-AC-3 support added to AC-3 decoder
1307 - Nellymoser ASAO encoder
1308 - ASS and SSA demuxer and muxer
1309 - liba52 wrapper removed
1310 - SVQ3 watermark decoding support
1311 - Speex decoding via libspeex
1312 - Electronic Arts TGQ decoder
1313 - RV40 decoder
1314 - QCELP / PureVoice decoder
1315 - RV30 decoder
1316 - hybrid WavPack support
1317 - R3D REDCODE demuxer
1318 - ALSA support for playback and record
1319 - Electronic Arts TQI decoder
1320 - OpenJPEG based JPEG 2000 decoder
1321 - NC (NC4600) camera file demuxer
1322 - Gopher client support
1323 - MXF D-10 muxer
1324 - generic metadata API
1325 - flash ScreenVideo2 encoder
1326
1327
1328 version 0.4.9-pre1:
1329
1330 - DV encoder, DV muxer
1331 - Microsoft RLE video decoder
1332 - Microsoft Video-1 decoder
1333 - Apple Animation (RLE) decoder
1334 - Apple Graphics (SMC) decoder
1335 - Apple Video (RPZA) decoder
1336 - Cinepak decoder
1337 - Sega FILM (CPK) file demuxer
1338 - Westwood multimedia support (VQA & AUD files)
1339 - Id Quake II CIN playback support
1340 - 8BPS video decoder
1341 - FLIC playback support
1342 - RealVideo 2.0 (RV20) decoder
1343 - Duck TrueMotion v1 (DUCK) video decoder
1344 - Sierra VMD demuxer and video decoder
1345 - MSZH and ZLIB decoder support
1346 - SVQ1 video encoder
1347 - AMR-WB support
1348 - PPC optimizations
1349 - rate distortion optimal cbp support
1350 - rate distorted optimal ac prediction for MPEG-4
1351 - rate distorted optimal lambda->qp support
1352 - AAC encoding with libfaac
1353 - Sunplus JPEG codec (SP5X) support
1354 - use Lagrange multiplier instead of QP for ratecontrol
1355 - Theora/VP3 decoding support
1356 - XA and ADX ADPCM codecs
1357 - export MPEG-2 active display area / pan scan
1358 - Add support for configuring with IBM XLC
1359 - floating point AAN DCT
1360 - initial support for zygo video (not complete)
1361 - RGB ffv1 support
1362 - new audio/video parser API
1363 - av_log() system
1364 - av_read_frame() and av_seek_frame() support
1365 - missing last frame fixes
1366 - seek by mouse in ffplay
1367 - noise reduction of DCT coefficients
1368 - H.263 OBMC & 4MV support
1369 - H.263 alternative inter vlc support
1370 - H.263 loop filter
1371 - H.263 slice structured mode
1372 - interlaced DCT support for MPEG-2 encoding
1373 - stuffing to stay above min_bitrate
1374 - MB type & QP visualization
1375 - frame stepping for ffplay
1376 - interlaced motion estimation
1377 - alternate scantable support
1378 - SVCD scan offset support
1379 - closed GOP support
1380 - SSE2 FDCT
1381 - quantizer noise shaping
1382 - G.726 ADPCM audio codec
1383 - MS ADPCM encoding
1384 - multithreaded/SMP motion estimation
1385 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
1386 - multithreaded/SMP decoding for MPEG-2
1387 - FLAC decoder
1388 - Metrowerks CodeWarrior suppport
1389 - H.263+ custom pcf support
1390 - nicer output for 'ffmpeg -formats'
1391 - Matroska demuxer
1392 - SGI image format, encoding and decoding
1393 - H.264 loop filter support
1394 - H.264 CABAC support
1395 - nicer looking arrows for the motion vector visualization
1396 - improved VCD support
1397 - audio timestamp drift compensation
1398 - MPEG-2 YUV 422/444 support
1399 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
1400 - better image scaling
1401 - H.261 support
1402 - correctly interleave packets during encoding
1403 - VIS optimized motion compensation
1404 - intra_dc_precision>0 encoding support
1405 - support reuse of motion vectors/MB types/field select values of the source video
1406 - more accurate deblock filter
1407 - padding support
1408 - many optimizations and bugfixes
1409 - FunCom ISS audio file demuxer and according ADPCM decoding
1410
1411
1412 version 0.4.8:
1413
1414 - MPEG-2 video encoding (Michael)
1415 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
1416 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
1417   and Mario Brito)
1418 - Xan DPCM audio decoder (Mario Brito)
1419 - Interplay MVE playback subsystem (Mike Melanson)
1420 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
1421
1422
1423 version 0.4.7:
1424
1425 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
1426   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
1427 - current version now also compiles with older GCC (Fabrice)
1428 - 4X multimedia playback system including 4xm file demuxer (Mike
1429   Melanson), and 4X video and audio codecs (Michael)
1430 - Creative YUV (CYUV) decoder (Mike Melanson)
1431 - FFV1 codec (our very simple lossless intra only codec, compresses much better
1432   than HuffYUV) (Michael)
1433 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
1434 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
1435   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
1436 - ffplay has been replaced with a newer version which uses SDL (optionally)
1437   for multiplatform support (Fabrice)
1438 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
1439   by anonymous
1440 - AMR format has been added (Johannes Carlsson)
1441 - 3GP support has been added (Johannes Carlsson)
1442 - VP3 codec has been added (Mike Melanson)
1443 - more MPEG-1/2 fixes
1444 - better multiplatform support, MS Visual Studio fixes (various)
1445 - AltiVec optimizations (Magnus Damn and others)
1446 - SH4 processor support has been added (BERO)
1447 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
1448 - VOB streaming support (Brian Foley)
1449 - better MP3 autodetection (Andriy Rysin)
1450 - qpel encoding (Michael)
1451 - 4mv+b frames encoding finally fixed (Michael)
1452 - chroma ME (Michael)
1453 - 5 comparison functions for ME (Michael)
1454 - B-frame encoding speedup (Michael)
1455 - WMV2 codec (unfinished - Michael)
1456 - user specified diamond size for EPZS (Michael)
1457 - Playstation STR playback subsystem, still experimental (Mike and Michael)
1458 - ASV2 codec (Michael)
1459 - CLJR decoder (Alex)
1460
1461 .. And lots more new enhancements and fixes.
1462
1463
1464 version 0.4.6:
1465
1466 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
1467   from scratch
1468 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
1469 - fix quantization bug in AC3 encoder
1470 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
1471 - added prototype ffplay program
1472 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
1473 - bug fix on MCBPC tables of H.263 (Juanjo)
1474 - bug fix on DC coefficients of H.263 (Juanjo)
1475 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
1476 - now we can decode H.263 streams found in QuickTime files (Juanjo)
1477 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
1478 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
1479 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
1480 - now H.263 picture size is returned on the first decoded frame (Juanjo)
1481 - added first regression tests
1482 - added MPEG-2 TS demuxer
1483 - new demux API for libav
1484 - more accurate and faster IDCT (Michael)
1485 - faster and entropy-controlled motion search (Michael)
1486 - two pass video encoding (Michael)
1487 - new video rate control (Michael)
1488 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
1489 - great performance improvement of video encoders and decoders (Michael)
1490 - new and faster bit readers and vlc parsers (Michael)
1491 - high quality encoding mode: tries all macroblock/VLC types (Michael)
1492 - added DV video decoder
1493 - preliminary RTP/RTSP support in ffserver and libavformat
1494 - H.263+ AIC decoding/encoding support (Juanjo)
1495 - VCD MPEG-PS mode (Juanjo)
1496 - PSNR stuff (Juanjo)
1497 - simple stats output (Juanjo)
1498 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
1499
1500
1501 version 0.4.5:
1502
1503 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
1504 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
1505 - added configure system (actually a small shell script)
1506 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
1507   Michael Hipp (temporary solution - waiting for integer only
1508   decoder)
1509 - fixed VIDIOCSYNC interrupt
1510 - added Intel H.263 decoding support ('I263' AVI fourCC)
1511 - added Real Video 1.0 decoding (needs further testing)
1512 - simplified image formats again. Added PGM format (=grey
1513   pgm). Renamed old PGM to PGMYUV.
1514 - fixed msmpeg4 slice issues (tell me if you still find problems)
1515 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
1516 - added support for MPlayer interface
1517 - added macroblock skip optimization
1518 - added MJPEG decoder
1519 - added mmx/mmxext IDCT from libmpeg2
1520 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
1521   <celer at shell.scrypt.net>)
1522 - added pixel format conversion layer (e.g. for MJPEG or PPM)
1523 - added deinterlacing option
1524 - MPEG-1/2 fixes
1525 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
1526 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
1527 - Windows porting of file converter
1528 - added MJPEG raw format (input/output)
1529 - added JPEG image format support (input/output)
1530
1531
1532 version 0.4.4:
1533
1534 - fixed some std header definitions (Bjorn Lindgren
1535   <bjorn.e.lindgren at telia.com>).
1536 - added MPEG demuxer (MPEG-1 and 2 compatible).
1537 - added ASF demuxer
1538 - added prototype RM demuxer
1539 - added AC3 decoding (done with libac3 by Aaron Holtzman)
1540 - added decoding codec parameter guessing (.e.g. for MPEG, because the
1541   header does not include them)
1542 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
1543   play them (only tested video)
1544 - fixed H.263 white bug
1545 - fixed phase rounding in img resample filter
1546 - add MMX code for polyphase img resample filter
1547 - added CPU autodetection
1548 - added generic title/author/copyright/comment string handling (ASF and RM
1549   use them)
1550 - added SWF demux to extract MP3 track (not usable yet because no MP3
1551   decoder)
1552 - added fractional frame rate support
1553 - codecs are no longer searched by read_header() (should fix ffserver
1554   segfault)
1555
1556
1557 version 0.4.3:
1558
1559 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
1560 - fixed raw yuv output
1561 - added motion rounding support in MPEG-4
1562 - fixed motion bug rounding in MSMPEG4
1563 - added B-frame handling in video core
1564 - added full MPEG-1 decoding support
1565 - added partial (frame only) MPEG-2 support
1566 - changed the FOURCC code for H.263 to "U263" to be able to see the
1567   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
1568   this +codec ;) (JuanJo).
1569 - Halfpel motion estimation after MB type selection (JuanJo)
1570 - added pgm and .Y.U.V output format
1571 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
1572   output.
1573 - added pgmpipe I/O format (original patch from Martin Aumueller
1574   <lists at reserv.at>, but changed completely since we use a format
1575   instead of a protocol)
1576
1577
1578 version 0.4.2:
1579
1580 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
1581   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
1582   missing. MSMPEG4 support is complete.
1583 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
1584   can decode ffmpeg MPEGs :-)).
1585 - added libavcodec API documentation (see apiexample.c).
1586 - fixed image polyphase bug (the bottom of some images could be
1587   greenish)
1588 - added support for non clipped motion vectors (decoding only)
1589   and image sizes non-multiple of 16
1590 - added support for AC prediction (decoding only)
1591 - added file overwrite confirmation (can be disabled with -y)
1592 - added custom size picture to H.263 using H.263+ (Juanjo)
1593
1594
1595 version 0.4.1:
1596
1597 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
1598   of AVI and ASF to DIV3.
1599 - added -me option to set motion estimation method
1600   (default=log). suppressed redundant -hq option.
1601 - added options -acodec and -vcodec to force a given codec (useful for
1602   AVI for example)
1603 - fixed -an option
1604 - improved dct_quantize speed
1605 - factorized some motion estimation code
1606
1607
1608 version 0.4.0:
1609
1610 - removing grab code from ffserver and moved it to ffmpeg. Added
1611   multistream support to ffmpeg.
1612 - added timeshifting support for live feeds (option ?date=xxx in the
1613   URL)
1614 - added high quality image resize code with polyphase filter (need
1615   mmx/see optimization). Enable multiple image size support in ffserver.
1616 - added multi live feed support in ffserver
1617 - suppressed master feature from ffserver (it should be done with an
1618   external program which opens the .ffm url and writes it to another
1619   ffserver)
1620 - added preliminary support for video stream parsing (WAV and AVI half
1621   done). Added proper support for audio/video file conversion in
1622   ffmpeg.
1623 - added preliminary support for video file sending from ffserver
1624 - redesigning I/O subsystem: now using URL based input and output
1625   (see avio.h)
1626 - added WAV format support
1627 - added "tty user interface" to ffmpeg to stop grabbing gracefully
1628 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
1629   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
1630 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
1631 - added new motion estimation algorithms, log and phods (Juanjo)
1632 - changed directories: libav for format handling, libavcodec for
1633   codecs
1634
1635
1636 version 0.3.4:
1637
1638 - added stereo in MPEG audio encoder
1639
1640
1641 version 0.3.3:
1642
1643 - added 'high quality' mode which use motion vectors. It can be used in
1644   real time at low resolution.
1645 - fixed rounding problems which caused quality problems at high
1646   bitrates and large GOP size
1647
1648
1649 version 0.3.2: small fixes
1650
1651 - ASF fixes
1652 - put_seek bug fix
1653
1654
1655 version 0.3.1: added avi/divx support
1656
1657 - added AVI support
1658 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
1659 - added sound for flash format (not tested)
1660
1661
1662 version 0.3: initial public release