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