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