avformat/sdp: Fix potential write beyond end of buffer
[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.2.4
5  avformat/mov: Fix unaligned read of uint32_t and endian-dependance in mov_read_default
6  avcodec/apedec: Fix undefined integer overflow with 24bit
7  avcodec/loco: Fix integer overflow with large values from loco_get_rice()
8  avformat/smjpegdec: Check the existence of referred streams
9  avcodec/pnmdec: Fix misaligned reads
10  avcodec/scpr3: Fix out of array access with dectab
11  avcodec/dstdec: Replace AC overread check by sample rate check
12  avutil/avsscanf: Add () to avoid integer overflow in scanexp()
13  avformat/utils: reorder duration computation to avoid overflow
14  avcodec/pngdec: Check for fctl after idat
15  avformat/hls: Pass a copy of the URL for probing
16  avformat/hls: check segment duration value of EXTINF
17  avutil/common: Fix integer overflow in av_ceil_log2_c()
18  avcodec/wmalosslessdec: fix overflow with pred in revert_cdlms
19  avformat/mvdec: Fix integer overflow with billions of channels
20  avformat/microdvddec: skip malformed lines without frame number.
21  avformat/mxfdec: free duplicated utf16 strings
22  avformat/4xm: Check that a video stream was created before returning packets for it
23  avcodec/ffwavesynth: Avoid undefined operation on ts overflow
24  avcodec/mpeg4videodec: Fix 2 integer overflows in get_amv()
25  avcodec/lossless_audiodsp: Fix undefined overflows in scalarproduct_and_madd_int16_c()
26  avcodec/sonic: Fix several integer overflows
27  avcodec/mpeg4videodec: avoid invalid values and reinitialize in format changes for studio profile
28  avcodec/pixlet: Fix log(0) check
29  avcodec/iff: Fix off by x error
30  avcodec/wmalosslessdec: Check block_align maximum
31  avcodec/loco: Fix signed integer overflow in loco_get_rice()
32  avformat/thp: Check fps
33  avformat/mpl2dec: Fix integer overflow with duration
34  avcodec/cbs: Allocate more CodedBitstreamUnit at once in cbs_insert_unit()
35  avcodec/mpeg12dec: remove outdated comments
36  avcodec/snowdec: Avoid integer overflow with huge qlog
37  avformat/mov: Check if DTS is AV_NOPTS_VALUE in mov_find_next_sample().
38  avcodec/mpeg12dec: Fix got_output
39  avformat/4xm: Cleanup on GET_LIST_HEADER() failure
40  avcodec/lzf: Consider the needed size in reallocation
41  avformat/mlvdec: fail reading a packet with 0 streams
42  avformat/thp: Check compcount
43  avcodec/adpcm: XA: Check shift similar to filter
44  avcodec/huffyuvdec: Test vertical coordinate more often
45  avformat/rawdec: fix identifier names
46  avcodec/hq_hqa: Check info size
47  avcodec/wmalosslessdec: Fix integer overflow in mclms_predict()
48  avcodec/vp9dsp_template: Fix integer overflow(s) in iadst16_1d()
49  avcodec/h264dec: Disable forced small_padding on flag2 fast
50  avformat/oggparsevorbis: Error out on double init of vp
51  avcodec/h264_metadata_bsf: Fix invalid av_freep
52  avformat/hnm: Check for extradata allocation failure
53  avcodec/bitstream: Don't check for undefined behaviour after it happened
54  avformat/avc, mxfenc: Avoid allocation of H264 SPS structure, fix memleak
55  avcodec/cbs_av1: Fix writing uvlc numbers >= INT_MAX
56  avformat/mov: Fix memleak
57  avformat/mov: fix memleaks
58  libavformat/mov: Fix memleaks when demuxing DV audio
59  avformat/mov: Fix reel_name size check
60  avformat/mov: Fix memleak upon encountering repeating tags
61  avformat/matroskaenc: Don't use NULL for %s format string
62  avformat/webvttdec: Fix memleak upon read header failure
63  avformat/vplayerdec: Fix memleak upon read header failure
64  avformat/tedcaptionsdec: Fix memleak upon read header failure
65  avformat/subviewerdec: Fix memleak upon read header failure
66  avformat/subviewer1dec: Fix memleak upon read header failure
67  avformat/stldec: Fix memleak upon read header failure
68  avformat/srtdec: Fix memleak upon read header failure
69  avformat/sccdec: Fix memleak upon read header failure
70  avformat/samidec: Fix memleak upon read header failure
71  avformat/pjsdec: Fix memleak upon read header failure
72  avformat/mpsubdec: Fix memleak upon read header failure
73  avformat/mpl2dec: Fix memleak upon read header failure
74  avformat/microdvddec: Fix memleak upon read header failure
75  avformat/lrcdec: Fix memleak upon read header failure
76  avformat/jacosubdec: Fix memleak upon read header failure
77  avformat/assdec: Fix memleak upon read header failure
78  avformat/aqtitledec: Fix memleak upon read header failure
79  avformat/mov: Fix memleaks upon read_header failure
80  avformat/omadec: Fix memleaks upon read_header failure
81  avformat/matroskadec: Fix memleaks in WebM DASH manifest demuxer
82  avformat/matroskadec: Use right number of tracks
83  avformat/matroskadec: Fix handling gigantic durations
84  avformat/aviobuf: Don't check for overflow after it happened
85  avformat/apngenc: Add deinit function
86  avcodec/hevc_mp4toannexb_bsf: Check NAL size against available input
87  avcodec/nvenc: honor max bitrate in CQ mode
88  avcodec/nvenc: zero avg and max bitrate in CQ mode
89  libavcodec/libvpxenc: Don't free user-provided AVPacket
90  libavcodec/libmp3lame: Don't free user-provided AVPacket
91  avcodec/libopusenc: Don't free user-provided AVPacket
92
93 version 4.2.3
94 - avcodec/pnmdec: Use unsigned for maxval rescaling
95 - avcodec/ivi: Clear got_p_frame before decoding a new frame using it
96 - avcodec/dsddec: Check channels
97 - avcodec/xvididct: Fix integer overflow in idct_row()
98 - avcodec/wmalosslessdec: Fix integer overflows in revert_inter_ch_decorr()
99 - avcodec/cbs_jpeg: Fix infinite loop in cbs_jpeg_split_fragment()
100 - avformat/mpegenc: Fix integer overflow with AV_NOPTS_VALUE
101 - avformat/swfenc: Fix integer overflow in frame rate handling
102 - avformat/aadec: Check toc_size to contain the minimum to demuxer uses
103 - avcodec/cbs_h265_syntax_template: Limit num_long_term_pics more strictly
104 - ffplay: set stream_index to -1 earlier to prevent segfault
105 - avformat/mov: Free temp buffer upon negative sample_size error.
106 - avformat/matroskadec: Improve forward compability
107 - avformat/matroskadec: Don't discard valid packets
108 - avformat/matroskaenc: Don't segfault when seekability changes
109 - avformat/utils: Fix memleaks
110 - avformat/utils: Fix memleaks in avformat_open_input()
111 - avfilter/vf_dedot: Fix leak of AVFrame if making it writable fails
112 - avfilter/vf_paletteuse: Fix potential double-free of AVFrame
113 - avformat/mov: Don't leak MOVFragmentStreamInfo on error
114 - avformat/mov: Free encryption data on error
115 - fftools/ffmpeg: Free swresample dictionary during cleanup
116 - avcodec/mediacodec_wrapper: fix {input,output}_buffers global reference leak
117 - avformat/webm_chunk: Close IO if writing header fails
118 - avcodec/cavsdsp: Fix undefined left shifts of negative numbers
119 - avcodec/ra144enc: Fix invalid left shift of negative number
120 - avcodec/adxenc: Avoid undefined left shift of negative numbers
121 - avcodec/adpcm: Fix undefined left shifts of negative numbers
122 - avcodec/proresenc_anatoliy: Fix invalid left shift of negative number
123 - avformat/aviobuf: Honor avio_open[2] documentation
124 - avcodec/cinepakenc: Fix invalid shifts
125 - avfilter/vf_xbr: Fix left shift of negative number
126 - avfilter/vf_hqx: Fix undefined left shifts of negative numbers
127 - avcodec/jpeg2000dwt: Fix undefined shifts of negative numbers
128 - avcodec/ituh263dec: Fix undefined left shift of negative number
129 - avcodec/dnxhdenc: Fix undefined left shifts of negative numbers
130 - swscale/utils: Fix invalid left shifts of negative numbers
131 - swscale/x86/swscale: Fix undefined left shifts of negative numbers
132 - fftools/ffmpeg_opt: Fix signed integer overflow
133 - avcodec/exr: Fix undefined left shifts of negative numbers
134 - avformat/movenc: Fix undefined shift
135 - avcodec/pcm: Fix undefined shifts
136 - avcodec/wavpackenc: Fix undefined shifts
137 - avutil/encryption_info: Don't pass NULL to memcpy
138 - avcodec/ac3enc: Fix memleak
139 - avcodec/ac3enc: Fix invalid shift
140 - avcodec/g723_1dec: Fix invalid shift
141 - avcodec/tdsc: Fix undefined shifts
142 - avcodec/ttaenc: Fix undefined shift
143 - avformat/avidec: Fix memleak with embedded GAB2 subtitles
144 - avformat/matroskadec: Don't discard the upper 32bits of TrackNumber
145 - dump_extradata: Insert extradata even for small packets
146 - avformat/segafilmenc: Fix undefined left shift of 1 by 31 places
147 - avformat/wtvdec: Fix memleak when reading header fails
148 - avformat/dashenc: Fix leak of AVFormatContext on error
149 - avformat/fitsdec: Fix potential leak of string in AVBPrint
150 - avformat/matroskadec: Sanitize SeekHead entries
151 - avformat/matroskaenc: Fix memleak upon encountering bogus chapter
152 - avformat/matroskaenc: Make ebml_num_size() more robust
153 - avformat/oggenc: Don't free AVStream's priv_data, fix memleak
154 - avformat/utils: Fix memleak when decoding subtitle in find_stream_info
155 - fftools/ffmpeg_opt: Check attachment filesize
156 - avformat/mpeg: Don't use unintialized value
157 - avformat/webmdashenc: Check codec types
158 - avformat/webmdashenc: Fix memleak upon realloc failure
159 - avformat/subtitles: Don't increment packet counter prematurely
160 - avformat/bethsoftvid: Fix potential memleak upon reallocation failure
161 - avformat/smoothstreaming: Fix memleaks on errors
162 - avformat/matroskaenc: Check BlockAdditional size before use
163 - avformat/matroskaenc: Check functions that can fail
164 - avformat/matroskaenc: Check for reformatting errors
165 - avformat/matroskadec: Check before allocations
166 - avfilter/vf_unsharp: Don't dereference NULL
167 - avcodec/zmbvenc: Correct offset in buffer
168 - avcodec/cbs_h2645: Fix potential out-of-bounds array access
169 - avformat/mov: Don't allow negative sample sizes.
170 - mpeg4videoenc: Don't crash with -fsanitize=bounds
171 - avformat/mpegts: Shuffle avio_seek
172 - avcodec/binkaudio: Fix 2Ghz sample_rate
173 - avcodec/adpcm: Fix integer overflow in ADPCM THP
174 - avcodec/ralf: Check num_blocks before use
175 - avcodec/iff: Test video_size being non zero
176 - avcodec/utvideodec: Fix integer overflow in decode_plane()
177 - avcodec/ttadsp: Fix several integer overflows in tta_filter_process_c()
178 - avcodec/ralf: Fix integer overflow in decode_block()
179 - avcodec/nuv: widen buf_size type
180 - avcodec/iff: Fix several integer overflows
181 - avcodec/g729postfilter: Clip gain before scaling with AGC_FAC1
182 - avcodec/alac: Fix integer overflow with 24/20bps samples
183 - avcodec/dstdec: Check sample rate
184 - avformat/thp: Require a video stream
185 - avformat/mpeg: Decrease score by 1 for files with very little valid data
186 - avcodec/pngdec: Check length in fdAT
187 - avcodec/g2meet: Check tile_width in epic_jb_decode_tile()
188 - avcodec/hapdec: Check tex_size more strictly and before using it
189 - avcodec/vp9dsp_template: Fix integer overflows in idct32_1d()
190 - avcodec/alacdsp: Fix invalid shift in append_extra_bits()
191 - libavcodec/wmalosslessdec: prevent sum of positive numbers from becoming negative
192 - avcodec/dstdec: Fix integer overflow in read_table()
193 - avcodec/txd: Check for input size against the header size.
194 - avcodec/svq1dec: Check that there is data left after the header
195 - avcodec/cbs_h265_syntax_template: Check num_negative/positive_pics when inter_ref_pic_set_prediction_flag is set
196 - avcodec/intrax8: Check for end of bitstream in ff_intrax8_decode_picture()
197 - avcodec/hevc_mp4toannexb_bsf: Check nalu_size
198 - avcodec/iff: Check length before memcpy() in decode_deep_rle32()
199 - avcodec/iff: Fix invalid pointer intermediates in decode_deep_rle32()
200 - avcodec/pngdec: Pass ret from decode_iccp_chunk()
201 - avcodec/rv40dsp: Fix integer overflows in rv40_weight_func_*()
202 - avcodec/ac3dec_fixed: Fix several invalid left shifts in scale_coefs()
203 - avcodec/flac_parser: Do not lose header count in find_headers_search()
204 - avcodec/audiodsp: Fix integer overflow in scalarproduct_int16_c()
205 - avcodec/cbs_jpeg_syntax_template: Check array index in huffman_table()
206 - avcodec/cbs_jpeg_syntax_template: Check table index before use in dht()
207 - avformat/oggdec: Check for EOF after page header
208 - swscale/yuv2rgb: Fix vertical dither offset with slices
209 - avcodec/dpcm: clip exponent into supported range in XAN DPCM
210 - avcodec/flacdsp_template: Fix invalid shifts in decorrelate
211 - avcodec/xvididct: Fix integer overflow in MULT()
212 - avcodec/ffwavesynth: Correct undefined overflow of PINK_UNIT
213 - avcodec/cbs_h264_syntax_template: fix off by 1 error with slice_group_change_cycle
214 - swscale/output: Fix integer overflow in yuv2rgb_write_full() with out of range input
215 - swscale/output: Fix integer overflow in alpha computation in yuv2gbrp16_full_X_c()
216 - libavformat/amr.c: Check return value from avio_read()
217 - libavformat/mov.c: Free aes_decrypt to avoid leaking memory
218 - libavformat/oggdec.c: Check return value from avio_read()
219 - avformat/asfdec_f: Fix overflow check in get_tag()
220 - avformat/nsvdec: Fix memleaks on errors while reading the header
221 - avcodec/ffwavesynth: Fix integer overflow in computation of ddphi
222 - avcodec/cbs_jpeg: Check length for SOS
223 - avcodec/adpcm: Fix invalid shift in AV_CODEC_ID_ADPCM_PSX
224 - avcodec/mpeg12dec: Fix invalid shift in mpeg2_fast_decode_block_intra()
225 - avcodec/cbs_h2645: Treat slices without data as invalid
226 - avcodec/cbs_h2645: Remove dead code to delete trailing zeroes
227 - avcodec/cbs_av1_syntax_template: Set seen_frame_header only after successfull uncompressed_header()
228 - avcodec/mpegaudioenc_template: fix invalid shift of sample
229 - avcodec/motion_est_template: Fix invalid shifts in no_sub_motion_search()
230 - libavformat/avienc: Check bits per sample for PAL8
231 - avformat/mpegts: Improve the position determination for avpriv_mpegts_parse_packet()
232 - avcodec/magicyuv: Check that there are enough lines for interlacing to be possible
233 - avformat/mvdec: Check stream numbers
234 - avcodec/pcm: Fix invalid shift in AV_CODEC_ID_PCM_LXF
235 - avcodec/qdm2: Check fft_coefs_index
236 - avformat/utils: Fix integer overflow with complex time bases in avformat_find_stream_info()
237 - avformat/avidec: Avoid integer overflow in NI switch check
238 - fftools/ffmpeg: Fix integer overflow in duration computation in seek_to_start()
239 - avfilter/vf_aspect: Fix integer overflow in compute_dar()
240 - avcodec/apedec: Fix invalid shift with 24 bps
241 - avformat/utils: Fix undefined behavior in ff_configure_buffers_for_index()
242 - avcodec/dpcm: Fix integer overflow in AV_CODEC_ID_GREMLIN_DPCM
243 - avcodec/wmalosslessdec: Fix integer overflow with sliding in padding bits
244 - avcodec/wmalosslessdec: Fix loop in revert_acfilter()
245 - avcodec/agm: YUV420 without DCT needs even dimensions
246 - avcodec/agm: Test remaining data in decode_raw_intra_rgb()
247 - avcodec/lagarith: Sanity check scale
248 - avcodec/apedec: Fix integer overflows in predictor_decode_mono_3950()
249 - avcodec/ralf: Fix integer overflow in apply_lpc()
250 - avcodec/dca_lbr: Fix some error codes and error passing
251 - avcodec/wmavoice: Fix rounding and integer anomalies in calc_input_response()
252 - avcodec/wmavoice: sanity check block_align
253 - avcodec/pcm: Fix invalid shift in pcm_decode_frame for LXF
254 - avcodec/snappy: Sanity check bytestream2_get_levarint()
255 - avcodec/mlpdsp: Fix a invalid shift in ff_mlp_rematrix_channel()
256 - avcodec/avdct: Clear IDCTDSPContext context
257 - avcodec/x86/diracdsp: Fix high bits on Windows x86_64
258 - tests/fate/lavf-video.mak: fix fate-lavf-gif dependencies
259 - avformat/mov: Check STCO location
260 - avcodec/wmalosslessdec: Fix multiple integer overflows
261 - avcodec/apedec: Fix undefined integer overflow in decode_array_0000()
262 - avcodec/smacker: Check space before decoding type
263 - avcodec/rawdec: Use linesize in b64a
264 - avcodec/iff: Over-allocate ham_palbuf for HAM6 IFF-PBM
265 - avcodec/x86/diracdsp: Fix incorrect src addressing in dequant_subband_32()
266 - avfilter/vf_find_rect: Remove assert
267 - avfilter/vf_find_rect: Increase worst case score
268 - swscale/input: Fix several invalid shifts related to rgb2yuv constants
269 - swscale/output: Fix several invalid shifts in yuv2rgb_full_1_c_template()
270 - swscale/swscale: Fix several invalid shifts related to vChrDrop
271 - avcodec/hevc_mp4toannexb_bsf: check that nalu size doesnt overflow
272 - avcodec/hevc_mp4toannexb_bsf: Avoid NULL memcpy()
273 - avcodec/cbs_av1: Check leb128 values read
274 - avcodec/wmalosslessdec: move channel check up
275 - avcodec/cbs_h2645: Skip all 0 NAL units
276 - avcodec/adpcm: Fix overflow in FFABS() IMA_EA_EACS
277 - avcodec/alac: Fix integer overflow in LPC coefficient adaption
278 - avcodec/g729postfilter: Optimize out overflowing multiplication from apply_tilt_comp()
279 - avcodec/vc1dec: Check field_mode for sprites
280 - avcodec/vc1dec: Limit bits by the actual bitstream size
281 - avcodec/vmdaudio: Check block_align more
282 - configure: bump year
283 - avcodec/pgssubdec: Free subtitle on error
284 - avcodec/nvenc: use framerate if available
285 - avcodec/cbs_h265: fix writing extension_data bits
286 - avcodec/nvenc: offset dts to account for b-frame reordering
287 - Revert "avformat/rtp: Pass sources and block filter addresses via sdp file for rtp"
288 - avformat/matroskadec: Fix default value of BlockAddID
289 - avformat/dashdec: Don't allocate and leak strings that are never used
290 - avformat/matroskaenc: Write level 1 elements in one go
291 - avformat/rtp: Pass sources and block filter addresses via sdp file for rtp
292 - avformat/bintext: avoid division by zero
293
294
295 version 4.2.2
296 - cbs_mpeg2: Fix parsing the last unit
297 - cbs_mpeg2: Rearrange start code search
298 - cbs_mpeg2: Decompose Sequence End
299 - cbs_mpeg2: Fix parsing of picture and slice headers
300 - cbs: Remove useless initializations
301 - mpeg2_metadata, cbs_mpeg2: Fix handling of colour_description
302 - lavc/cbs_h2645_syntax_template: Fix memleak
303 - avcodec/cbs: Fix potential overflow
304 - avcodec/cbs: Factor out common code for writing units
305 - avcodec/ffwavesynth: Fix undefined overflow in wavesynth_synth_sample()
306 - avcodec/ffwavesynth: Fix undefined overflow in wavesynth_synth_sample()
307 - avcodec/cook: Use 3 stage VLC decoding for channel_coupling
308 - avcodec/wmalosslessdec: Fixes undefined overflow in dequantization in decode_subframe()
309 - avcodec/sonic: Check e in get_symbol()
310 - avcodec/twinvqdec: Correct overflow in block align check
311 - avcodec/vc1dec: Fix "return -1" cases
312 - avcodec/vc1dec: Free sprite_output_frame on error
313 - avcodec/atrac9dec: Clamp band_ext_data to max that can be read if skipped.
314 - avcodec/agm: Include block size in the MV check for flags == 3
315 - avcodec/wmadec: Keep track of exponent initialization per channel
316 - avcodec/iff: Check that video_size is large enough for the read parameters
317 - avcodec/cbs_vp9: Check data_size
318 - avcodec/cbs_vp9: Check index_size
319 - avcodec/adpcm: Clip predictor for APC
320 - avcodec/targa: Check colors vs. available space
321 - avcodec/dstdec: Use get_ur_golomb_jpegls()
322 - avcodec/wmavoice: Check remaining input in parse_packet_header()
323 - avcodec/wmalosslessdec: Fix 2 overflows in mclms
324 - avcodec/wmaprodec: Fixes integer overflow with 32bit samples
325 - avcodec/adpcm: Fix invalid shift in xa_decode()
326 - avcodec/wmalosslessdec: Fix several integer issues
327 - avcodec/wmalosslessdec: Check that padding bits is not more than sample bits
328 - avcodec/iff: Skip overflowing runs in decode_delta_d()
329 - avcodec/pnm: Check that the header is not truncated
330 - avcodec/mp3_header_decompress_bsf: Check sample_rate_index
331 - avcodec/cbs_av1_syntax_template: Check num_y_points
332 - avformat/rmdec: Initialize and sanity check offset in ivr_read_header()
333 - avcodec/agm: Do not allow MVs out of the picture area as no edge is allocated
334 - avcodec/apedec: Fix 2 integer overflows
335 - avformat/id3v2: Fix double-free on error
336 - avcodec/wmaprodec: Set packet_loss when we error out on a sanity check
337 - avcodec/wmaprodec: Check offset
338 - avcodec/truemotion2: Fix 2 integer overflows in tm2_low_res_block()
339 - avcodec/wmaprodec: Check if the channel sum of all internal contexts match the external
340 - avcodec/atrac9dec: Check q_unit_cnt more completely before using it to access at9_tab_band_ext_group
341 - avcodec/fitsdec: Use lrint()
342 - avcodec/g729dec: Avoid using buf_size
343 - avcodec/g729dec: Factor block_size out
344 - avcodec/g729dec: require buf_size to be non 0
345 - avcodec/alac: Fix integer overflow in lpc_prediction() with sign
346 - avcodec/wmaprodec: Fix buflen computation in save_bits()
347 - avcodec/vc1_block: Fix integer overflow in AC rescaling in vc1_decode_i_block_adv()
348 - avcodec/vmdaudio: Check chunk counts to avoid integer overflow
349 - avformat/mxfdec: Clear metadata_sets_count in mxf_read_close()
350 - avcodec/nuv: Use ff_set_dimensions()
351 - avformat/vividas: Error out on audio packets in the absence of audio streams
352 - avformat/vividas: Check and require 1 video stream
353 - avcodec/ffwavesynth: Fix integer overflow with pink_ts_cur/next
354 - avcodec/ralf: Fix integer overflows with the filter coefficient in decode_channel()
355 - avcodec/g729dec: Use 64bit and clip in scalar product
356 - avcodec/mxpegdec: Check for multiple SOF
357 - avcodec/nuv: Move comptype check up
358 - avcodec/wmavoice: Fix integer overflow in synth_frame()
359 - avcodec/rawdec: Check bits_per_coded_sample more pedantically for 16bit cases
360 - avutil/lfg: Correct index increment type to avoid undefined behavior
361 - avcodec/cngdec: Remove AV_CODEC_CAP_DELAY
362 - avcodec/iff: Move index use after check in decodeplane8()
363 - avcodec/atrac3: Check for huge block aligns
364 - avcodec/ralf: use multiply instead of shift to avoid undefined behavior in decode_block()
365 - avcodec/wmadec: Require previous exponents for reuse
366 - avcodec/vc1_block: Fix undefined behavior in ac prediction rescaling
367 - avcodec/qdm2: The smallest header seems to have 2 bytes so treat 1 as invalid
368 - avcodec/apedec: Fixes integer overflow of res+*data in do_apply_filter()
369 - avcodec/sonic: Fix integer overflow in predictor_calc_error()
370 - avformat/vividas: Add EOF check in val_1 loop in track_header()
371 - avcodec/atrac9dec: Check precision_fine/coarse
372 - avformat/mp3dec: Check that the frame fits within the probe buffer
373 - vcodec/agm: Alloc based on coded dimensions
374 - avcodec/wmaprodec: get frame during frame decode
375 - avcodec/interplayacm: Fix overflow of last unused value
376 - avcodec/adpcm: Fix undefined behavior with negative predictions in IMA OKI
377 - avcodec/cook: Move up and extend block_align check
378 - avcodec/sbcdec: Fix integer overflows in sbc_synthesize_four()
379 - avcodec/twinvq: Check block_align
380 - avcodec/cook: Enlarge gain table
381 - avcodec/cook: Check samples_per_channel earlier
382 - avcodec/atrac3plus: Check split point in fill mode 3
383 - avcodec/wmavoice: Check sample_rate
384 - avcodec/xsubdec: fix overflow in alpha handling
385 - avcodec/iff: Check available space before entering loop in decode_long_vertical_delta2() / decode_long_vertical_delta()
386 - avcodec/apedec: Fix integer overflow in filter_3800()
387 - avutil/lfg: Document the AVLFG struct
388 - avcodec/ffv1dec: Use a different error message for the slice level CRC
389 - avcodec/apedec: Fix undefined integer overflow in long_filter_ehigh_3830()
390 - avcodec/dstdec: Check that AC probabilities are within range
391 - avcodec/dstdec: Check read_table() for failure
392 - avformat/vividas: Fix n_sb_blocks Check
393 - avcodec/snowenc: Set mb_num to avoid ratecontrol floating point divisions by 0.0
394 - avcodec/snowenc: Fix 2 undefined shifts
395 - avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()
396 - avcodec/aptx: Check the number of channels
397 - avcodec/aacdec_template: Check samplerate
398 - avcodec/truemotion2: Fix several integer overflows in tm2_low_res_block()
399 - avcodec/utils: Check block_align
400 - avcodec/wmalosslessdec: Fix some integer anomalies
401 - avcodec/adpcm: Fix invalid shifts in ADPCM DTK
402 - avcodec/apedec: Only clear the needed buffer space, instead of all
403 - avcodec/libvorbisdec: Fix insufficient input checks leading to out of array reads
404 - avcodec/g723_1dec: fix invalid shift with negative sid_gain
405 - avcodec/vp5: Check render_x/y
406 - avcodec/hcom: Check the root entry and the right entries
407 - avcodec/qdrw: Check input for header/skiped space before get_buffer()
408 - avcodec/ralf: Skip initializing unused filter variables
409 - avcodec/takdec: Fix overflow with large sample rates
410 - avcodec/atrac9dec: Set channels
411 - avcodec/alsdec: Check that input space for header exists in read_diff_float_data()
412 - avformat/pjsdec: Check duration for overflow
413 - avcodec/agm: Check for reference frame earlier
414 - avcodec/ptx: Check that the input contains at least one line
415 - avcodec/alac: Fix integer overflow in LPC
416 - avcodec/smacker: Fix integer overflows in pred[] in smka_decode_frame()
417 - avcodec/aliaspixdec: Check input size against minimal picture size
418 - avcodec/ffwavesynth: Fix integer overflows in pink noise addition
419 - avcodec/vc1_block: Fixes integer overflow in vc1_decode_i_block_adv()
420 - avcodec/wmalosslessdec: Check block_align
421 - avcodec/g729dec: Avoid computing invalid temporary pointers for ff_acelp_weighted_vector_sum()
422 - avcodec/g729postfilter: Fix left shift of negative value
423 - avcodec/binkaudio: Check sample rate
424 - avcodec/sbcdec: Fix integer overflows in sbc_synthesize_eight()
425 - avcodec/adpcm: Check initial predictor for ADPCM_IMA_EA_EACS
426 - avcodec/g723_1dec: Fix overflow in shift
427 - avcodec/apedec: Fix integer overflow in predictor_update_3930()
428 - avcodec/g729postfilter: Fix undefined intermediate pointers
429 - avcodec/g729postfilter: Fix undefined shifts
430 - avcodec/lsp: Fix undefined shifts in lsp2poly()
431 - avcodec/adpcm: Fix left shifts in AV_CODEC_ID_ADPCM_EA
432 - avformat/shortendec: Check k in probe
433 - avfilter/vf_geq: Use av_clipd() instead of av_clipf()
434 - avcodec/wmaprodec: Check that the streams channels do not exceed the overall channels
435 - avcodec/qdmc: Check input space in qdmc_get_vlc()
436 - avcodec/wmaprodec: Fix cleanup on error
437 - avcodec/pcm: Check bits_per_coded_sample
438 - avcodec/exr: Allow duplicate use of channel indexes
439 - avcodec/fitsdec: Fail on 0 naxisn
440 - avcodec/dxv: Subtract 12 earlier in dxv_decompress_cocg()
441 - libavcodec/dxv: Remove redundant seek
442 - avcodec/ituh263dec: Check input for minimal frame size
443 - avcodec/truemotion1: Check that the input has enough space for a minimal index_stream
444 - avformat/mpsubdec: Clear queue on error
445 - avcodec/sunrast: Check that the input is large enough for the maximally compressed image
446 - avcodec/sunrast: Check for availability of maplength before allocating image
447 - avformat/subtitles: Check nb_subs in ff_subtitles_queue_finalize()
448 - avcodec/vc1_block: Fix invalid left shift in vc1_decode_p_mb()
449 - avcodec/wmaprodec: Check if there is a stream
450 - avcodec/g2meet: Check for end of input in jpg_decode_block()
451 - avcodec/g2meet: Check if adjusted pixel was on the stack
452 - avformat/electronicarts: If no packet has been read at the end do not treat it as if theres a packet
453 - avcodec/dxv: Check op_offset in dxv_decompress_yo()
454 - avcodec/utils: Check sample_rate before opening the decoder
455 - avcodec/aptx: Fix multiple shift anomalies
456 - avcodec/fitsdec: fix use of uninitialised values
457 - avcodec/motionpixels: Mark 2 functions as always_inline
458 - avcodec/ituh263dec: Make the condition for the studio slice start code match between ff_h263_resync() and ff_mpeg4_decode_studio_slice_header()
459 - avcodec/ralf: Fix integer overflow in decode_channel()
460 - vcodec/vc1: compute rangex/y only for P/B frames
461 - avcodec/vc1_pred: Fix invalid shifts in scaleforopp()
462 - avcodec/vc1_block: Fix invalid shift with rangeredfrm
463 - avcodec/vc1: Check for excessive resolution
464 - avcodec/vc1: check REFDIST
465 - avcodec/apedec: Fix several integer overflows in predictor_update_filter() and do_apply_filter()
466 - avcodec/hevc_cabac: Tighten the limit on k in ff_hevc_cu_qp_delta_abs()
467 - avcodec/4xm: Check index in decode_i_block() also in the path where its not used.
468 - avcodec/loco: Check for end of input in the first line
469 - avcodec/atrac3: Check block_align
470 - avcodec/alsdec: Avoid dereferencing context pointer in inner interleave loop
471 - avcodec/hcom: Check that there are dictionary entries
472 - avcodec/fitsdec: Prevent division by 0 with huge data_max
473 - avcodec/dstdec: Fix integer overflow in samples_per_frame computation
474 - avcodec/g729_parser: Check block_size
475 - avcodec/sbcdec: Initialize number of channels
476 - avcodec/utils: Optimize ff_color_frame() using memcpy()
477 - avcodec/aacdec: Check if we run out of input in read_stream_mux_config()
478 - avcodec/utils: Use av_memcpy_backptr() in ff_color_frame()
479 - avcodec/smacker: Fix integer overflow in signed int multiply in SMK_BLK_FILL
480 - avcodec/alac: Fix invalid shifts in 20/24 bps
481 - avcodec/alac: fix undefined behavior with INT_MIN in lpc_prediction()
482 - avcodec/ffwavesynth: Fix integer overflow in timestamps
483 - avformat/vividas: Test size and packet numbers a bit more
484 - avformat/vividas: Check n_sb_blocks against input space
485 - avcodec/dxv: Check op_offset in both directions
486 - avcodec/adpcm: Check number of channels for MTAF
487 - avcodec/sunrast: Fix indention
488 - avcodec/sunrast: Fix return type for "unsupported (compression) type"
489 - avcodec/utils: Check channels fully earlier
490 - avformat/mov: Check for EOF in mov_read_meta()
491 - avcodec/hevcdec: Fix memleak of a53_caption
492 - avformat/vividas: Remove align offset which is always masked off
493 - avformat/vividas: remove dead assignment
494 - avformat/cdxl: Fix integer overflow in intermediate
495 - avcodec/hevcdec: repeat character in skiped
496 - repeat an even number of characters in occured
497 - avcodec/gdv: Replace assert() checking bitstream by if()
498 - libavcodec/utils: Free threads on init failure
499 - avcodec/htmlsubtitles: Avoid locale dependant isdigit()
500 - avcodec/alsdec: Check k from being outside what our implementation can handle
501 - avcodec/takdec: Fix integer overflow in decorrelate()
502 - avcodec/aacps: Fix integer overflows in hybrid_synthesis()
503 - avcodec/mpeg4videodec: Fix integer overflow in mpeg4_decode_studio_block()
504 - avcodec/vp56rac: delay signaling an error on truncated input
505 - avcodec/pnm_parser: Use memchr() in pnm_parse()
506 - tests: Fix bash errors in lavf_container tests.
507 - avformat/matroskadec: Fix use-after-free when demuxing ProRes
508 - avformat/matroskadec: Fix demuxing ProRes
509 - avcodec/cbs_av1: fix array size for ar_coeffs_cb_plus_128 and ar_coeffs_cr_plus_128
510 - avcodec/cbs_av1: avoid reading trailing bits when obu type is OBU_TILE_LIST
511 - lavc/cbs_h2645: Fix incorrect max size of nalu unit
512 - avcodec/extract_extradata_bsf: Don't unref uninitialized buffers
513 - avformat/av1: Fix leak of dynamic buffer in case of parsing failure
514 - libavformat/rtsp: return error if rtsp_hd_out is null instead of crash
515 - cbs_h264: Fix missing inferred colour description fields
516 - avcodec/cbs_av1: keep separate reference frame state for reading and writing
517 - avcodec/cbs_av1: fix reading reference order hint in skip_mode_params()
518 - avcodec/amfnec: allocate packets using av_new_packet()
519 - avcodec/nvenc: make sure newly allocated packets are refcounted
520 - lavc/mpeg4audio: add chan_config check to avoid indeterminate channels
521 - aformat/movenc: add missing padding to output track extradata
522 - avcodec/nvenc: add driver version info for SDK 9.1
523 - avcodec/bsf: check that AVBSFInternal was allocated before dereferencing it
524
525 version 4.2.1:
526 - avformat/vividas: check for tiny blocks using alignment
527 - avcodec/vc1_pred: Fix refdist in scaleforopp()
528 - avcodec/vorbisdec: fix FASTDIV usage for vr_type == 2
529 - avcodec/iff: Check for overlap in cmap_read_palette()
530 - avcodec/apedec: Fix 32bit int overflow in do_apply_filter()
531 - lavf/rawenc: Only accept the appropriate stream type for raw muxers.
532 - avformat/matroskadec: use av_fast_realloc to reallocate ebml list arrays
533 - avformat/matroskadec: use proper types for some EbmlSyntax fields
534 - avcodec/ralf: fix undefined shift in extend_code()
535 - avcodec/ralf: fix undefined shift
536 - avcodec/bgmc: Check input space in ff_bgmc_decode_init()
537 - avcodec/vp3: Check for end of input in 2 places of vp4_unpack_macroblocks()
538 - avcodec/truemotion2: Fix multiple integer overflows in tm2_null_res_block()
539 - avcodec/vc1_block: Check the return code from vc1_decode_p_block()
540 - avcodec/vc1dec: Require res_sprite for wmv3images
541 - avcodec/vc1_block: Check for double escapes
542 - avcodec/vorbisdec: Check get_vlc2() failure
543 - avcodec/tta: Fix integer overflow in prediction
544 - avcodec/vb: Check input packet size to be large enough to contain flags
545 - avcodec/cavsdec: Limit the number of access units per packet to 2
546 - avcodec/atrac9dec: Check block_align
547 - avcodec/alac: Check for bps of 0
548 - avcodec/alac: Fix multiple integer overflows in lpc_prediction()
549 - avcodec/rl2: set dimensions
550 - avcodec/aacdec: Add FF_CODEC_CAP_INIT_CLEANUP
551 - avcodec/idcinvideo: Add 320x240 default maximum resolution
552 - avformat/realtextdec: free queue on error
553 - avcodec/vp5/6/8: use vpX_rac_is_end()
554 - avformat/vividas: Check av_xiphlacing() return value before use
555 - avcodec/alsdec: Fix integer overflow in decode_var_block_data()
556 - avcodec/alsdec: Limit maximum channels to 512
557 - avcodec/anm: Check input size for a frame with just a stop code
558 - avcodec/flicvideo: Optimize and Simplify FLI_COPY in flic_decode_frame_24BPP() by using bytestream2_get_buffer()
559 - avcodec/loco: Check left column value
560 - avcodec/ffwavesynth: Fixes invalid shift with pink noise seeking
561 - avcodec/ffwavesynth: Fix integer overflow for some corner case values
562 - avcodec/indeo2: Check remaining input more often
563 - avcodec/diracdec: Check that slices are fewer than pixels
564 - avcodec/vp56: Consider the alpha start as end of the prior header
565 - avcodec/4xm: Check for end of input in decode_p_block()
566 - avcodec/hevcdec: Check delta_luma_weight_l0/1
567 - avcodec/hnm4video: Optimize postprocess_current_frame()
568 - avcodec/hevc_refs: Optimize 16bit generate_missing_ref()
569 - avcodec/scpr: Use av_memcpy_backptr() in type 17 and 33
570 - avcodec/tiff: Enforce increasing offsets
571 - avcodec/dds: Use ff_set_dimensions()
572 - avformat/vividas: Fix another infinite loop
573 - avformat/vividas: Fix infinite loop in header parser
574 - avcodec/mpc8: Fix 32bit mask/enum
575 - avcodec/alsdec: Fix integer overflows of raw_samples in decode_var_block_data()
576 - avcodec/alsdec: Fix integer overflow of raw_samples in decode_blocks()
577 - avcodec/alsdec: fix mantisse shift
578 - avcodec/pngdec: consider chunk size in minimal size check
579 - avcodec/vc1_block: Fix invalid shifts in vc1_decode_i_blocks()
580 - avcodec/vc1_block: fix invalid shift in vc1_decode_p_mb()
581 - avcodec/aacdec_template: fix integer overflow in imdct_and_windowing()
582 - avformat/mpegts: Check if ready on SCTE reception
583 - avcodec/omx: fix xFramerate calculation
584 - avformat/avidec: add support for recognizing HEVC fourcc when demuxing
585 - avformat/mpegts: fix teletext PTS when selecting teletext streams only
586 - avcodec/h2645_parse: zero initialize the rbsp buffer
587 - avcodec/omx: Fix handling of fragmented buffers
588 - avcodec/omx: ensure zerocopy mode can be disabled on rpi builds
589 - avformat/mxfdec: do not ignore bad size errors
590 - avformat/matroskadec: Fix seeking
591 - ffplay: properly detect all window size changes
592
593 version 4.2:
594 - tpad filter
595 - AV1 decoding support through libdav1d
596 - dedot filter
597 - chromashift and rgbashift filters
598 - freezedetect filter
599 - truehd_core bitstream filter
600 - dhav demuxer
601 - PCM-DVD encoder
602 - GIF parser
603 - vividas demuxer
604 - hymt decoder
605 - anlmdn filter
606 - maskfun filter
607 - hcom demuxer and decoder
608 - ARBC decoder
609 - libaribb24 based ARIB STD-B24 caption support (profiles A and C)
610 - Support decoding of HEVC 4:4:4 content in nvdec and cuviddec
611 - removed libndi-newtek
612 - agm decoder
613 - KUX demuxer
614 - AV1 frame split bitstream filter
615 - lscr decoder
616 - lagfun filter
617 - asoftclip filter
618 - Support decoding of HEVC 4:4:4 content in vdpau
619 - colorhold filter
620 - xmedian filter
621 - asr filter
622 - showspatial multimedia filter
623 - VP4 video decoder
624 - IFV demuxer
625 - derain filter
626 - deesser filter
627 - mov muxer writes tracks with unspecified language instead of English by default
628 - add support for using clang to compile CUDA kernels
629
630
631 version 4.1:
632 - deblock filter
633 - tmix filter
634 - amplify filter
635 - fftdnoiz filter
636 - aderivative and aintegral audio filters
637 - pal75bars and pal100bars video filter sources
638 - support mbedTLS based TLS
639 - adeclick filter
640 - adeclip filter
641 - libtensorflow backend for DNN based filters like srcnn
642 - vc1 decoder is now bit-exact
643 - ATRAC9 decoder
644 - lensfun wrapper filter
645 - colorconstancy filter
646 - AVS2 video decoder via libdavs2
647 - IMM4 video decoder
648 - Brooktree ProSumer video decoder
649 - MatchWare Screen Capture Codec decoder
650 - WinCam Motion Video decoder
651 - 1D LUT filter (lut1d)
652 - RemotelyAnywhere Screen Capture decoder
653 - cue and acue filters
654 - support for AV1 in MP4
655 - transpose_npp filter
656 - AVS2 video encoder via libxavs2
657 - amultiply filter
658 - Block-Matching 3d (bm3d) denoising filter
659 - acrossover filter
660 - ilbc decoder
661 - audio denoiser as afftdn filter
662 - AV1 parser
663 - SER demuxer
664 - sinc audio filter source
665 - chromahold filter
666 - setparams filter
667 - vibrance filter
668 - decoding S12M timecode in h264
669 - xstack filter
670 - pcm vidc decoder and encoder
671 - (a)graphmonitor filter
672 - yadif_cuda filter
673
674
675 version 4.0:
676 - Bitstream filters for editing metadata in H.264, HEVC and MPEG-2 streams
677 - Dropped support for OpenJPEG versions 2.0 and below. Using OpenJPEG now
678   requires 2.1 (or later) and pkg-config.
679 - VDA dropped (use VideoToolbox instead)
680 - MagicYUV encoder
681 - Raw AMR-NB and AMR-WB demuxers
682 - TiVo ty/ty+ demuxer
683 - Intel QSV-accelerated MJPEG encoding
684 - PCE support for extended channel layouts in the AAC encoder
685 - native aptX and aptX HD encoder and decoder
686 - Raw aptX and aptX HD muxer and demuxer
687 - NVIDIA NVDEC-accelerated H.264, HEVC, MJPEG, MPEG-1/2/4, VC1, VP8/9 hwaccel decoding
688 - Intel QSV-accelerated overlay filter
689 - mcompand audio filter
690 - acontrast audio filter
691 - OpenCL overlay filter
692 - video mix filter
693 - video normalize filter
694 - audio lv2 wrapper filter
695 - VAAPI MJPEG and VP8 decoding
696 - AMD AMF H.264 and HEVC encoders
697 - video fillborders filter
698 - video setrange filter
699 - nsp demuxer
700 - support LibreSSL (via libtls)
701 - AVX-512/ZMM support added
702 - Dropped support for building for Windows XP. The minimum supported Windows
703   version is Windows Vista.
704 - deconvolve video filter
705 - entropy video filter
706 - hilbert audio filter source
707 - aiir audio filter
708 - aiff: add support for CD-ROM XA ADPCM
709 - Removed the ffserver program
710 - Removed the ffmenc and ffmdec muxer and demuxer
711 - VideoToolbox HEVC encoder and hwaccel
712 - VAAPI-accelerated ProcAmp (color balance), denoise and sharpness filters
713 - Add android_camera indev
714 - codec2 en/decoding via libcodec2
715 - muxer/demuxer for raw codec2 files and .c2 files
716 - Moved nvidia codec headers into an external repository.
717   They can be found at http://git.videolan.org/?p=ffmpeg/nv-codec-headers.git
718 - native SBC encoder and decoder
719 - drmeter audio filter
720 - hapqa_extract bitstream filter
721 - filter_units bitstream filter
722 - AV1 Support through libaom
723 - E-AC-3 dependent frames support
724 - bitstream filter for extracting E-AC-3 core
725 - Haivision SRT protocol via libsrt
726 - segafilm muxer
727 - vfrdet filter
728 - SRCNN filter
729
730
731 version 3.4:
732 - deflicker video filter
733 - doubleweave video filter
734 - lumakey video filter
735 - pixscope video filter
736 - oscilloscope video filter
737 - config.log and other configuration files moved into ffbuild/ directory
738 - update cuvid/nvenc headers to Video Codec SDK 8.0.14
739 - afir audio filter
740 - scale_cuda CUDA based video scale filter
741 - librsvg support for svg rasterization
742 - crossfeed audio filter
743 - spec compliant VP9 muxing support in MP4
744 - remove the libnut muxer/demuxer wrappers
745 - remove the libschroedinger encoder/decoder wrappers
746 - surround audio filter
747 - sofalizer filter switched to libmysofa
748 - Gremlin Digital Video demuxer and decoder
749 - headphone audio filter
750 - superequalizer audio filter
751 - roberts video filter
752 - The x86 assembler default switched from yasm to nasm, pass
753   --x86asmexe=yasm to configure to restore the old behavior.
754 - additional frame format support for Interplay MVE movies
755 - support for decoding through D3D11VA in ffmpeg
756 - limiter video filter
757 - libvmaf video filter
758 - Dolby E decoder and SMPTE 337M demuxer
759 - unpremultiply video filter
760 - tlut2 video filter
761 - floodfill video filter
762 - pseudocolor video filter
763 - raw G.726 muxer and demuxer, left- and right-justified
764 - NewTek NDI input/output device
765 - Some video filters with several inputs now use a common set of options:
766   blend, libvmaf, lut3d, overlay, psnr, ssim.
767   They must always be used by name.
768 - FITS demuxer and decoder
769 - FITS muxer and encoder
770 - add --disable-autodetect build switch
771 - drop deprecated qtkit input device (use avfoundation instead)
772 - despill video filter
773 - haas audio filter
774 - SUP/PGS subtitle muxer
775 - convolve video filter
776 - VP9 tile threading support
777 - KMS screen grabber
778 - CUDA thumbnail filter
779 - V4L2 mem2mem HW assisted codecs
780 - Rockchip MPP hardware decoding
781 - vmafmotion video filter
782 - use MIME type "G726" for little-endian G.726, "AAL2-G726" for big-endian G.726
783
784
785 version 3.3:
786 - CrystalHD decoder moved to new decode API
787 - add internal ebur128 library, remove external libebur128 dependency
788 - Pro-MPEG CoP #3-R2 FEC protocol
789 - premultiply video filter
790 - Support for spherical videos
791 - configure now fails if autodetect-libraries are requested but not found
792 - PSD Decoder
793 - 16.8 floating point pcm decoder
794 - 24.0 floating point pcm decoder
795 - Apple Pixlet decoder
796 - QDMC audio decoder
797 - NewTek SpeedHQ decoder
798 - MIDI Sample Dump Standard demuxer
799 - readeia608 filter
800 - Sample Dump eXchange demuxer
801 - abitscope multimedia filter
802 - Scenarist Closed Captions demuxer and muxer
803 - threshold filter
804 - midequalizer filter
805 - Optimal Huffman tables for (M)JPEG encoding
806 - VAAPI-accelerated MPEG-2 and VP8 encoding
807 - FM Screen Capture Codec decoder
808 - native Opus encoder
809 - ScreenPressor decoder
810 - incomplete ClearVideo decoder
811 - Intel QSV video scaling and deinterlacing filters
812 - Support MOV with multiple sample description tables
813 - XPM decoder
814 - Removed the legacy X11 screen grabber, use XCB instead
815 - MPEG-7 Video Signature filter
816 - Removed asyncts filter (use af_aresample instead)
817 - Intel QSV-accelerated VP8 video decoding
818 - VAAPI-accelerated deinterlacing
819
820
821 version 3.2:
822 - libopenmpt demuxer
823 - tee protocol
824 - Changed metadata print option to accept general urls
825 - Alias muxer for Ogg Video (.ogv)
826 - VP8 in Ogg muxing
827 - curves filter doesn't automatically insert points at x=0 and x=1 anymore
828 - 16-bit support in curves filter and selectivecolor filter
829 - OpenH264 decoder wrapper
830 - MediaCodec H.264/HEVC/MPEG-4/VP8/VP9 hwaccel
831 - True Audio (TTA) muxer
832 - crystalizer audio filter
833 - acrusher audio filter
834 - bitplanenoise video filter
835 - floating point support in als decoder
836 - fifo muxer
837 - maskedclamp filter
838 - hysteresis filter
839 - lut2 filter
840 - yuvtestsrc filter
841 - CUDA CUVID H.263/VP8/VP9/10 bit HEVC (Dithered) Decoding
842 - vaguedenoiser filter
843 - added threads option per filter instance
844 - weave filter
845 - gblur filter
846 - avgblur filter
847 - sobel and prewitt filter
848 - MediaCodec HEVC/MPEG-4/VP8/VP9 decoding
849 - Meridian Lossless Packing (MLP) / TrueHD encoder
850 - Non-Local Means (nlmeans) denoising filter
851 - sdl2 output device and ffplay support
852 - sdl1 output device and sdl1 support removed
853 - extended mov edit list support
854 - libfaac encoder removed
855 - Matroska muxer now writes CRC32 elements by default in all Level 1 elements
856 - sidedata video and asidedata audio filter
857 - Changed mapping of rtp MIME type G726 to codec g726le.
858 - spec compliant VAAPI/DXVA2 VC-1 decoding of slices in frame-coded images
859
860
861 version 3.1:
862 - DXVA2-accelerated HEVC Main10 decoding
863 - fieldhint filter
864 - loop video filter and aloop audio filter
865 - Bob Weaver deinterlacing filter
866 - firequalizer filter
867 - datascope filter
868 - bench and abench filters
869 - ciescope filter
870 - protocol blacklisting API
871 - MediaCodec H264 decoding
872 - VC-2 HQ RTP payload format (draft v1) depacketizer and packetizer
873 - VP9 RTP payload format (draft v2) packetizer
874 - AudioToolbox audio decoders
875 - AudioToolbox audio encoders
876 - coreimage filter (GPU based image filtering on OSX)
877 - libdcadec removed
878 - bitstream filter for extracting DTS core
879 - ADPCM IMA DAT4 decoder
880 - musx demuxer
881 - aix demuxer
882 - remap filter
883 - hash and framehash muxers
884 - colorspace filter
885 - hdcd filter
886 - readvitc filter
887 - VAAPI-accelerated format conversion and scaling
888 - libnpp/CUDA-accelerated format conversion and scaling
889 - Duck TrueMotion 2.0 Real Time decoder
890 - Wideband Single-bit Data (WSD) demuxer
891 - VAAPI-accelerated H.264/HEVC/MJPEG encoding
892 - DTS Express (LBR) decoder
893 - Generic OpenMAX IL encoder with support for Raspberry Pi
894 - IFF ANIM demuxer & decoder
895 - Direct Stream Transfer (DST) decoder
896 - loudnorm filter
897 - MTAF demuxer and decoder
898 - MagicYUV decoder
899 - OpenExr improvements (tile data and B44/B44A support)
900 - BitJazz SheerVideo decoder
901 - CUDA CUVID H264/HEVC decoder
902 - 10-bit depth support in native utvideo decoder
903 - libutvideo wrapper removed
904 - YUY2 Lossless Codec decoder
905 - VideoToolbox H.264 encoder
906
907
908 version 3.0:
909 - Common Encryption (CENC) MP4 encoding and decoding support
910 - DXV decoding
911 - extrastereo filter
912 - ocr filter
913 - alimiter filter
914 - stereowiden filter
915 - stereotools filter
916 - rubberband filter
917 - tremolo filter
918 - agate filter
919 - chromakey filter
920 - maskedmerge filter
921 - Screenpresso SPV1 decoding
922 - chromaprint fingerprinting muxer
923 - ffplay dynamic volume control
924 - displace filter
925 - selectivecolor filter
926 - extensive native AAC encoder improvements and removal of experimental flag
927 - ADPCM PSX decoder
928 - 3dostr, dcstr, fsb, genh, vag, xvag, ads, msf, svag & vpk demuxer
929 - zscale filter
930 - wve demuxer
931 - zero-copy Intel QSV transcoding in ffmpeg
932 - shuffleframes filter
933 - SDX2 DPCM decoder
934 - vibrato filter
935 - innoHeim/Rsupport Screen Capture Codec decoder
936 - ADPCM AICA decoder
937 - Interplay ACM demuxer and audio decoder
938 - XMA1 & XMA2 decoder
939 - realtime filter
940 - anoisesrc audio filter source
941 - IVR demuxer
942 - compensationdelay filter
943 - acompressor filter
944 - support encoding 16-bit RLE SGI images
945 - apulsator filter
946 - sidechaingate audio filter
947 - mipsdspr1 option has been renamed to mipsdsp
948 - aemphasis filter
949 - mips32r5 option has been removed
950 - mips64r6 option has been removed
951 - DXVA2-accelerated VP9 decoding
952 - SOFAlizer: virtual binaural acoustics filter
953 - VAAPI VP9 hwaccel
954 - audio high-order multiband parametric equalizer
955 - automatic bitstream filtering
956 - showspectrumpic filter
957 - libstagefright support removed
958 - spectrumsynth filter
959 - ahistogram filter
960 - only seek with the right mouse button in ffplay
961 - toggle full screen when double-clicking with the left mouse button in ffplay
962 - afftfilt filter
963 - convolution filter
964 - libquvi support removed
965 - support for dvaudio in wav and avi
966 - libaacplus and libvo-aacenc support removed
967 - Cineform HD decoder
968 - new DCA decoder with full support for DTS-HD extensions
969 - significant performance improvements in Windows Television (WTV) demuxer
970 - nnedi deinterlacer
971 - streamselect video and astreamselect audio filter
972 - swaprect filter
973 - metadata video and ametadata audio filter
974 - SMPTE VC-2 HQ profile support for the Dirac decoder
975 - SMPTE VC-2 native encoder supporting the HQ profile
976
977
978 version 2.8:
979 - colorkey video filter
980 - BFSTM/BCSTM demuxer
981 - little-endian ADPCM_THP decoder
982 - Hap decoder and encoder
983 - DirectDraw Surface image/texture decoder
984 - ssim filter
985 - optional new ASF demuxer
986 - showvolume filter
987 - Many improvements to the JPEG 2000 decoder
988 - Go2Meeting decoding support
989 - adrawgraph audio and drawgraph video filter
990 - removegrain video filter
991 - Intel QSV-accelerated MPEG-2 video and HEVC encoding
992 - Intel QSV-accelerated MPEG-2 video and HEVC decoding
993 - Intel QSV-accelerated VC-1 video decoding
994 - libkvazaar HEVC encoder
995 - erosion, dilation, deflate and inflate video filters
996 - Dynamic Audio Normalizer as dynaudnorm filter
997 - Reverse video and areverse audio filter
998 - Random filter
999 - deband filter
1000 - AAC fixed-point decoding
1001 - sidechaincompress audio filter
1002 - bitstream filter for converting HEVC from MP4 to Annex B
1003 - acrossfade audio filter
1004 - allyuv and allrgb video sources
1005 - atadenoise video filter
1006 - OS X VideoToolbox support
1007 - aphasemeter filter
1008 - showfreqs filter
1009 - vectorscope filter
1010 - waveform filter
1011 - hstack and vstack filter
1012 - Support DNx100 (1440x1080@8)
1013 - VAAPI hevc hwaccel
1014 - VDPAU hevc hwaccel
1015 - framerate filter
1016 - Switched default encoders for webm to VP9 and Opus
1017 - Removed experimental flag from the JPEG 2000 encoder
1018
1019
1020 version 2.7:
1021 - FFT video filter
1022 - TDSC decoder
1023 - DTS lossless extension (XLL) decoding (not lossless, disabled by default)
1024 - showwavespic filter
1025 - DTS decoding through libdcadec
1026 - Drop support for nvenc API before 5.0
1027 - nvenc HEVC encoder
1028 - Detelecine filter
1029 - Intel QSV-accelerated H.264 encoding
1030 - MMAL-accelerated H.264 decoding
1031 - basic APNG encoder and muxer with default extension "apng"
1032 - unpack DivX-style packed B-frames in MPEG-4 bitstream filter
1033 - WebM Live Chunk Muxer
1034 - nvenc level and tier options
1035 - chorus filter
1036 - Canopus HQ/HQA decoder
1037 - Automatically rotate videos based on metadata in ffmpeg
1038 - improved Quickdraw compatibility
1039 - VP9 high bit-depth and extended colorspaces decoding support
1040 - WebPAnimEncoder API when available for encoding and muxing WebP
1041 - Direct3D11-accelerated decoding
1042 - Support Secure Transport
1043 - Multipart JPEG demuxer
1044
1045
1046 version 2.6:
1047 - nvenc encoder
1048 - 10bit spp filter
1049 - colorlevels filter
1050 - RIFX format for *.wav files
1051 - RTP/mpegts muxer
1052 - non continuous cache protocol support
1053 - tblend filter
1054 - cropdetect support for non 8bpp, absolute (if limit >= 1) and relative (if limit < 1.0) threshold
1055 - Camellia symmetric block cipher
1056 - OpenH264 encoder wrapper
1057 - VOC seeking support
1058 - Closed caption Decoder
1059 - fspp, uspp, pp7 MPlayer postprocessing filters ported to native filters
1060 - showpalette filter
1061 - Twofish symmetric block cipher
1062 - Support DNx100 (960x720@8)
1063 - eq2 filter ported from libmpcodecs as eq filter
1064 - removed libmpcodecs
1065 - Changed default DNxHD colour range in QuickTime .mov derivatives to mpeg range
1066 - ported softpulldown filter from libmpcodecs as repeatfields filter
1067 - dcshift filter
1068 - RTP depacketizer for loss tolerant payload format for MP3 audio (RFC 5219)
1069 - RTP depacketizer for AC3 payload format (RFC 4184)
1070 - palettegen and paletteuse filters
1071 - VP9 RTP payload format (draft 0) experimental depacketizer
1072 - RTP depacketizer for DV (RFC 6469)
1073 - DXVA2-accelerated HEVC decoding
1074 - AAC ELD 480 decoding
1075 - Intel QSV-accelerated H.264 decoding
1076 - DSS SP decoder and DSS demuxer
1077 - Fix stsd atom corruption in DNxHD QuickTimes
1078 - Canopus HQX decoder
1079 - RTP depacketization of T.140 text (RFC 4103)
1080 - Port MIPS optimizations to 64-bit
1081
1082
1083 version 2.5:
1084 - HEVC/H.265 RTP payload format (draft v6) packetizer
1085 - SUP/PGS subtitle demuxer
1086 - ffprobe -show_pixel_formats option
1087 - CAST128 symmetric block cipher, ECB mode
1088 - STL subtitle demuxer and decoder
1089 - libutvideo YUV 4:2:2 10bit support
1090 - XCB-based screen-grabber
1091 - UDP-Lite support (RFC 3828)
1092 - xBR scaling filter
1093 - AVFoundation screen capturing support
1094 - ffserver supports codec private options
1095 - creating DASH compatible fragmented MP4, MPEG-DASH segmenting muxer
1096 - WebP muxer with animated WebP support
1097 - zygoaudio decoding support
1098 - APNG demuxer
1099 - postproc visualization support
1100
1101
1102 version 2.4:
1103 - Icecast protocol
1104 - ported lenscorrection filter from frei0r filter
1105 - large optimizations in dctdnoiz to make it usable
1106 - ICY metadata are now requested by default with the HTTP protocol
1107 - support for using metadata in stream specifiers in fftools
1108 - LZMA compression support in TIFF decoder
1109 - H.261 RTP payload format (RFC 4587) depacketizer and experimental packetizer
1110 - HEVC/H.265 RTP payload format (draft v6) depacketizer
1111 - added codecview filter to visualize information exported by some codecs
1112 - Matroska 3D support thorugh side data
1113 - HTML generation using texi2html is deprecated in favor of makeinfo/texi2any
1114 - silenceremove filter
1115
1116
1117 version 2.3:
1118 - AC3 fixed-point decoding
1119 - shuffleplanes filter
1120 - subfile protocol
1121 - Phantom Cine demuxer
1122 - replaygain data export
1123 - VP7 video decoder
1124 - Alias PIX image encoder and decoder
1125 - Improvements to the BRender PIX image decoder
1126 - Improvements to the XBM decoder
1127 - QTKit input device
1128 - improvements to OpenEXR image decoder
1129 - support decoding 16-bit RLE SGI images
1130 - GDI screen grabbing for Windows
1131 - alternative rendition support for HTTP Live Streaming
1132 - AVFoundation input device
1133 - Direct Stream Digital (DSD) decoder
1134 - Magic Lantern Video (MLV) demuxer
1135 - On2 AVC (Audio for Video) decoder
1136 - support for decoding through DXVA2 in ffmpeg
1137 - libbs2b-based stereo-to-binaural audio filter
1138 - libx264 reference frames count limiting depending on level
1139 - native Opus decoder
1140 - display matrix export and rotation API
1141 - WebVTT encoder
1142 - showcqt multimedia filter
1143 - zoompan filter
1144 - signalstats filter
1145 - hqx filter (hq2x, hq3x, hq4x)
1146 - flanger filter
1147 - Image format auto-detection
1148 - LRC demuxer and muxer
1149 - Samba protocol (via libsmbclient)
1150 - WebM DASH Manifest muxer
1151 - libfribidi support in drawtext
1152
1153
1154 version 2.2:
1155
1156 - HNM version 4 demuxer and video decoder
1157 - Live HDS muxer
1158 - setsar/setdar filters now support variables in ratio expressions
1159 - elbg filter
1160 - string validation in ffprobe
1161 - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
1162 - complete Voxware MetaSound decoder
1163 - remove mp3_header_compress bitstream filter
1164 - Windows resource files for shared libraries
1165 - aeval filter
1166 - stereoscopic 3d metadata handling
1167 - WebP encoding via libwebp
1168 - ATRAC3+ decoder
1169 - VP8 in Ogg demuxing
1170 - side & metadata support in NUT
1171 - framepack filter
1172 - XYZ12 rawvideo support in NUT
1173 - Exif metadata support in WebP decoder
1174 - OpenGL device
1175 - Use metadata_header_padding to control padding in ID3 tags (currently used in
1176   MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
1177 - Mirillis FIC video decoder
1178 - Support DNx444
1179 - libx265 encoder
1180 - dejudder filter
1181 - Autodetect VDA like all other hardware accelerations
1182 - aliases and defaults for Ogg subtypes (opus, spx)
1183
1184
1185 version 2.1:
1186
1187 - aecho filter
1188 - perspective filter ported from libmpcodecs
1189 - ffprobe -show_programs option
1190 - compand filter
1191 - RTMP seek support
1192 - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
1193   even when used as an input option. Previous behavior can be restored with
1194   the -noaccurate_seek option.
1195 - ffmpeg -t option can now be used for inputs, to limit the duration of
1196   data read from an input file
1197 - incomplete Voxware MetaSound decoder
1198 - read EXIF metadata from JPEG
1199 - DVB teletext decoder
1200 - phase filter ported from libmpcodecs
1201 - w3fdif filter
1202 - Opus support in Matroska
1203 - FFV1 version 1.3 is stable and no longer experimental
1204 - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
1205 - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
1206   more consistent with other muxers.
1207 - adelay filter
1208 - pullup filter ported from libmpcodecs
1209 - ffprobe -read_intervals option
1210 - Lossless and alpha support for WebP decoder
1211 - Error Resilient AAC syntax (ER AAC LC) decoding
1212 - Low Delay AAC (ER AAC LD) decoding
1213 - mux chapters in ASF files
1214 - SFTP protocol (via libssh)
1215 - libx264: add ability to encode in YUVJ422P and YUVJ444P
1216 - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
1217 - make decoding alpha optional for prores, ffv1 and vp6 by setting
1218   the skip_alpha flag.
1219 - ladspa wrapper filter
1220 - native VP9 decoder
1221 - dpx parser
1222 - max_error_rate parameter in ffmpeg
1223 - PulseAudio output device
1224 - ReplayGain scanner
1225 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
1226 - Linux framebuffer output device
1227 - HEVC decoder
1228 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
1229 - mergeplanes filter
1230
1231
1232 version 2.0:
1233
1234 - curves filter
1235 - reference-counting for AVFrame and AVPacket data
1236 - ffmpeg now fails when input options are used for output file
1237   or vice versa
1238 - support for Monkey's Audio versions from 3.93
1239 - perms and aperms filters
1240 - audio filtering support in ffplay
1241 - 10% faster aac encoding on x86 and MIPS
1242 - sine audio filter source
1243 - WebP demuxing and decoding support
1244 - ffmpeg options -filter_script and -filter_complex_script, which allow a
1245   filtergraph description to be read from a file
1246 - OpenCL support
1247 - audio phaser filter
1248 - separatefields filter
1249 - libquvi demuxer
1250 - uniform options syntax across all filters
1251 - telecine filter
1252 - interlace filter
1253 - smptehdbars source
1254 - inverse telecine filters (fieldmatch and decimate)
1255 - colorbalance filter
1256 - colorchannelmixer filter
1257 - The matroska demuxer can now output proper verbatim ASS packets. It will
1258   become the default at the next libavformat major bump.
1259 - decent native animated GIF encoding
1260 - asetrate filter
1261 - interleave filter
1262 - timeline editing with filters
1263 - vidstabdetect and vidstabtransform filters for video stabilization using
1264   the vid.stab library
1265 - astats filter
1266 - trim and atrim filters
1267 - ffmpeg -t and -ss (output-only) options are now sample-accurate when
1268   transcoding audio
1269 - Matroska muxer can now put the index at the beginning of the file.
1270 - extractplanes filter
1271 - avectorscope filter
1272 - ADPCM DTK decoder
1273 - ADP demuxer
1274 - RSD demuxer
1275 - RedSpark demuxer
1276 - ADPCM IMA Radical decoder
1277 - zmq filters
1278 - DCT denoiser filter (dctdnoiz)
1279 - Wavelet denoiser filter ported from libmpcodecs as owdenoise (formerly "ow")
1280 - Apple Intermediate Codec decoder
1281 - Escape 130 video decoder
1282 - FTP protocol support
1283 - V4L2 output device
1284 - 3D LUT filter (lut3d)
1285 - SMPTE 302M audio encoder
1286 - support for slice multithreading in libavfilter
1287 - Hald CLUT support (generation and filtering)
1288 - VC-1 interlaced B-frame support
1289 - support for WavPack muxing (raw and in Matroska)
1290 - XVideo output device
1291 - vignette filter
1292 - True Audio (TTA) encoder
1293 - Go2Webinar decoder
1294 - mcdeint filter ported from libmpcodecs
1295 - sab filter ported from libmpcodecs
1296 - ffprobe -show_chapters option
1297 - WavPack encoding through libwavpack
1298 - rotate filter
1299 - spp filter ported from libmpcodecs
1300 - libgme support
1301 - psnr filter
1302
1303
1304 version 1.2:
1305
1306 - VDPAU hardware acceleration through normal hwaccel
1307 - SRTP support
1308 - Error diffusion dither in Swscale
1309 - Chained Ogg support
1310 - Theora Midstream reconfiguration support
1311 - EVRC decoder
1312 - audio fade filter
1313 - filtering audio with unknown channel layout
1314 - allpass, bass, bandpass, bandreject, biquad, equalizer, highpass, lowpass
1315   and treble audio filter
1316 - improved showspectrum filter, with multichannel support and sox-like colors
1317 - histogram filter
1318 - tee muxer
1319 - il filter ported from libmpcodecs
1320 - support ID3v2 tags in ASF files
1321 - encrypted TTA stream decoding support
1322 - RF64 support in WAV muxer
1323 - noise filter ported from libmpcodecs
1324 - Subtitles character encoding conversion
1325 - blend filter
1326 - stereo3d filter ported from libmpcodecs
1327
1328
1329 version 1.1:
1330
1331 - stream disposition information printing in ffprobe
1332 - filter for loudness analysis following EBU R128
1333 - Opus encoder using libopus
1334 - ffprobe -select_streams option
1335 - Pinnacle TARGA CineWave YUV16 decoder
1336 - TAK demuxer, decoder and parser
1337 - DTS-HD demuxer
1338 - remove -same_quant, it hasn't worked for years
1339 - FFM2 support
1340 - X-Face image encoder and decoder
1341 - 24-bit FLAC encoding
1342 - multi-channel ALAC encoding up to 7.1
1343 - metadata (INFO tag) support in WAV muxer
1344 - subtitles raw text decoder
1345 - support for building DLLs using MSVC
1346 - LVF demuxer
1347 - ffescape tool
1348 - metadata (info chunk) support in CAF muxer
1349 - field filter ported from libmpcodecs
1350 - AVR demuxer
1351 - geq filter ported from libmpcodecs
1352 - remove ffserver daemon mode
1353 - AST muxer/demuxer
1354 - new expansion syntax for drawtext
1355 - BRender PIX image decoder
1356 - ffprobe -show_entries option
1357 - ffprobe -sections option
1358 - ADPCM IMA Dialogic decoder
1359 - BRSTM demuxer
1360 - animated GIF decoder and demuxer
1361 - PVF demuxer
1362 - subtitles filter
1363 - IRCAM muxer/demuxer
1364 - Paris Audio File demuxer
1365 - Virtual concatenation demuxer
1366 - VobSub demuxer
1367 - JSON captions for TED talks decoding support
1368 - SOX Resampler support in libswresample
1369 - aselect filter
1370 - SGI RLE 8-bit / Silicon Graphics RLE 8-bit video decoder
1371 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
1372 - Silicon Graphics Movie demuxer
1373 - apad filter
1374 - Resolution & pixel format change support with multithreading for H.264
1375 - documentation split into per-component manuals
1376 - pp (postproc) filter ported from MPlayer
1377 - NIST Sphere demuxer
1378 - MPL2, VPlayer, MPlayer, AQTitle, PJS and SubViewer v1 subtitles demuxers and decoders
1379 - Sony Wave64 muxer
1380 - adobe and limelight publisher authentication in RTMP
1381 - data: URI scheme
1382 - support building on the Plan 9 operating system
1383 - kerndeint filter ported from MPlayer
1384 - histeq filter ported from VirtualDub
1385 - Megalux Frame demuxer
1386 - 012v decoder
1387 - Improved AVC Intra decoding support
1388
1389
1390 version 1.0:
1391
1392 - INI and flat output in ffprobe
1393 - Scene detection in libavfilter
1394 - Indeo Audio decoder
1395 - channelsplit audio filter
1396 - setnsamples audio filter
1397 - atempo filter
1398 - ffprobe -show_data option
1399 - RTMPT protocol support
1400 - iLBC encoding/decoding via libilbc
1401 - Microsoft Screen 1 decoder
1402 - join audio filter
1403 - audio channel mapping filter
1404 - Microsoft ATC Screen decoder
1405 - RTSP listen mode
1406 - TechSmith Screen Codec 2 decoder
1407 - AAC encoding via libfdk-aac
1408 - Microsoft Expression Encoder Screen decoder
1409 - RTMPS protocol support
1410 - RTMPTS protocol support
1411 - RTMPE protocol support
1412 - RTMPTE protocol support
1413 - showwaves and showspectrum filter
1414 - LucasArts SMUSH SANM playback support
1415 - LucasArts SMUSH VIMA audio decoder (ADPCM)
1416 - LucasArts SMUSH demuxer
1417 - SAMI, RealText and SubViewer demuxers and decoders
1418 - Heart Of Darkness PAF playback support
1419 - iec61883 device
1420 - asettb filter
1421 - new option: -progress
1422 - 3GPP Timed Text encoder/decoder
1423 - GeoTIFF decoder support
1424 - ffmpeg -(no)stdin option
1425 - Opus decoder using libopus
1426 - caca output device using libcaca
1427 - alphaextract and alphamerge filters
1428 - concat filter
1429 - flite filter
1430 - Canopus Lossless Codec decoder
1431 - bitmap subtitles in filters (experimental and temporary)
1432 - MP2 encoding via TwoLAME
1433 - bmp parser
1434 - smptebars source
1435 - asetpts filter
1436 - hue filter
1437 - ICO muxer
1438 - SubRip encoder and decoder without embedded timing
1439 - edge detection filter
1440 - framestep filter
1441 - ffmpeg -shortest option is now per-output file
1442   -pass and -passlogfile are now per-output stream
1443 - volume measurement filter
1444 - Ut Video encoder
1445 - Microsoft Screen 2 decoder
1446 - smartblur filter ported from MPlayer
1447 - CPiA decoder
1448 - decimate filter ported from MPlayer
1449 - RTP depacketization of JPEG
1450 - Smooth Streaming live segmenter muxer
1451 - F4V muxer
1452 - sendcmd and asendcmd filters
1453 - WebVTT demuxer and decoder (simple tags supported)
1454 - RTP packetization of JPEG
1455 - faststart option in the MOV/MP4 muxer
1456 - support for building with MSVC
1457
1458
1459 version 0.11:
1460
1461 - Fixes: CVE-2012-2772, CVE-2012-2774, CVE-2012-2775, CVE-2012-2776, CVE-2012-2777,
1462          CVE-2012-2779, CVE-2012-2782, CVE-2012-2783, CVE-2012-2784, CVE-2012-2785,
1463          CVE-2012-2786, CVE-2012-2787, CVE-2012-2788, CVE-2012-2789, CVE-2012-2790,
1464          CVE-2012-2791, CVE-2012-2792, CVE-2012-2793, CVE-2012-2794, CVE-2012-2795,
1465          CVE-2012-2796, CVE-2012-2797, CVE-2012-2798, CVE-2012-2799, CVE-2012-2800,
1466          CVE-2012-2801, CVE-2012-2802, CVE-2012-2803, CVE-2012-2804,
1467 - v408 Quicktime and Microsoft AYUV Uncompressed 4:4:4:4 encoder and decoder
1468 - setfield filter
1469 - CDXL demuxer and decoder
1470 - Apple ProRes encoder
1471 - ffprobe -count_packets and -count_frames options
1472 - Sun Rasterfile Encoder
1473 - ID3v2 attached pictures reading and writing
1474 - WMA Lossless decoder
1475 - bluray protocol
1476 - blackdetect filter
1477 - libutvideo encoder wrapper (--enable-libutvideo)
1478 - swapuv filter
1479 - bbox filter
1480 - XBM encoder and decoder
1481 - RealAudio Lossless decoder
1482 - ZeroCodec decoder
1483 - tile video filter
1484 - Metal Gear Solid: The Twin Snakes demuxer
1485 - OpenEXR image decoder
1486 - removelogo filter
1487 - drop support for ffmpeg without libavfilter
1488 - drawtext video filter: fontconfig support
1489 - ffmpeg -benchmark_all option
1490 - super2xsai filter ported from libmpcodecs
1491 - add libavresample audio conversion library for compatibility
1492 - MicroDVD decoder
1493 - Avid Meridien (AVUI) encoder and decoder
1494 - accept + prefix to -pix_fmt option to disable automatic conversions.
1495 - complete audio filtering in libavfilter and ffmpeg
1496 - add fps filter
1497 - vorbis parser
1498 - png parser
1499 - audio mix filter
1500 - ffv1: support (draft) version 1.3
1501
1502
1503 version 0.10:
1504
1505 - Fixes: CVE-2011-3929, CVE-2011-3934, CVE-2011-3935, CVE-2011-3936,
1506          CVE-2011-3937, CVE-2011-3940, CVE-2011-3941, CVE-2011-3944,
1507          CVE-2011-3945, CVE-2011-3946, CVE-2011-3947, CVE-2011-3949,
1508          CVE-2011-3950, CVE-2011-3951, CVE-2011-3952
1509 - v410 Quicktime Uncompressed 4:4:4 10-bit encoder and decoder
1510 - SBaGen (SBG) binaural beats script demuxer
1511 - OpenMG Audio muxer
1512 - Timecode extraction in DV and MOV
1513 - thumbnail video filter
1514 - XML output in ffprobe
1515 - asplit audio filter
1516 - tinterlace video filter
1517 - astreamsync audio filter
1518 - amerge audio filter
1519 - ISMV (Smooth Streaming) muxer
1520 - GSM audio parser
1521 - SMJPEG muxer
1522 - XWD encoder and decoder
1523 - Automatic thread count based on detection number of (available) CPU cores
1524 - y41p Brooktree Uncompressed 4:1:1 12-bit encoder and decoder
1525 - ffprobe -show_error option
1526 - Avid 1:1 10-bit RGB Packer codec
1527 - v308 Quicktime Uncompressed 4:4:4 encoder and decoder
1528 - yuv4 libquicktime packed 4:2:0 encoder and decoder
1529 - ffprobe -show_frames option
1530 - silencedetect audio filter
1531 - ffprobe -show_program_version, -show_library_versions, -show_versions options
1532 - rv34: frame-level multi-threading
1533 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
1534 - Improved PGS subtitle decoder
1535 - dumpgraph option to lavfi device
1536 - r210 and r10k encoders
1537 - ffwavesynth decoder
1538 - aviocat tool
1539 - ffeval tool
1540 - support encoding and decoding 4-channel SGI images
1541
1542
1543 version 0.9:
1544
1545 - openal input device added
1546 - boxblur filter added
1547 - BWF muxer
1548 - Flash Screen Video 2 decoder
1549 - lavfi input device added
1550 - added avconv, which is almost the same for now, except
1551 for a few incompatible changes in the options, which will hopefully make them
1552 easier to use. The changes are:
1553     * The options placement is now strictly enforced! While in theory the
1554       options for ffmpeg should be given in [input options] -i INPUT [output
1555       options] OUTPUT order, in practice it was possible to give output options
1556       before the -i and it mostly worked. Except when it didn't - the behavior was
1557       a bit inconsistent. In avconv, it is not possible to mix input and output
1558       options. All non-global options are reset after an input or output filename.
1559     * All per-file options are now truly per-file - they apply only to the next
1560       input or output file and specifying different values for different files
1561       will now work properly (notably -ss and -t options).
1562     * All per-stream options are now truly per-stream - it is possible to
1563       specify which stream(s) should a given option apply to. See the Stream
1564       specifiers section in the avconv manual for details.
1565     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
1566       sense that they're specified after the output filename instead of before,
1567       like all other options. In avconv this irregularity is removed, all options
1568       apply to the next input or output file.
1569     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
1570       irregular and highly confusing, they were also redundant. In avconv the -map
1571       option will create new streams in the output file and map input streams to
1572       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
1573       each stream in the first input file.
1574     * The -map option now has slightly different and more powerful syntax:
1575         + Colons (':') are used to separate file index/stream type/stream index
1576           instead of dots. Comma (',') is used to separate the sync stream instead
1577           of colon.. This is done for consistency with other options.
1578         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
1579           output stream from the third input audio stream.
1580         + Omitting the stream index now maps all the streams of the given type,
1581           not just the first. E.g. -map 0:s creates output streams for all the
1582           subtitle streams in the first input file.
1583         + Since -map can now match multiple streams, negative mappings were
1584           introduced. Negative mappings disable some streams from an already
1585           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
1586           all the stream in the first input file, except for the second audio
1587           stream'.
1588     * There is a new option -c (or -codec) for choosing the decoder/encoder to
1589       use, which makes it possible to precisely specify target stream(s) consistently with
1590       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
1591       libvorbis sets the codec for the first audio stream and -c copy copies all
1592       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
1593       aliases to -c:v/a/s
1594     * It is now possible to precisely specify which stream should an AVOption
1595       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
1596       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
1597       syntax is deprecated and will stop working soon.
1598     * -map_chapters now takes only an input file index and applies to the next
1599       output file. This is consistent with how all the other options work.
1600     * -map_metadata now takes only an input metadata specifier and applies to
1601       the next output file. Output metadata specifier is now part of the option
1602       name, similarly to the AVOptions/map/codec feature above.
1603     * -metadata can now be used to set metadata on streams and chapters, e.g.
1604       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
1605       This made -vlang/-alang/-slang options redundant, so they were removed.
1606     * -qscale option now uses stream specifiers and applies to all streams, not
1607       just video. I.e. plain -qscale number would now apply to all streams. To get
1608       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
1609       and -aq is now an alias for -q:a.
1610     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
1611       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
1612     * -itsscale option now uses stream specifiers, so its argument is only the
1613       scale parameter.
1614     * -intra option was removed, use -g 0 for the same effect.
1615     * -psnr option was removed, use -flags +psnr for the same effect.
1616     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
1617     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
1618     * -vtag/-atag/-stag options are now aliases to the new -tag option.
1619 - XMV demuxer
1620 - LOAS demuxer
1621 - ashowinfo filter added
1622 - Windows Media Image decoder
1623 - amovie source added
1624 - LATM muxer/demuxer
1625 - Speex encoder via libspeex
1626 - JSON output in ffprobe
1627 - WTV muxer
1628 - Optional C++ Support (needed for libstagefright)
1629 - H.264 Decoding on Android via Stagefright
1630 - Prores decoder
1631 - BIN/XBIN/ADF/IDF text file decoder
1632 - aconvert audio filter added
1633 - audio support to lavfi input device added
1634 - libcdio-paranoia input device for audio CD grabbing
1635 - Apple ProRes decoder
1636 - CELT in Ogg demuxing
1637 - G.723.1 demuxer and decoder
1638 - libmodplug support (--enable-libmodplug)
1639 - VC-1 interlaced decoding
1640 - libutvideo wrapper (--enable-libutvideo)
1641 - aevalsrc audio source added
1642 - Ut Video decoder
1643 - Speex encoding via libspeex
1644 - 4:2:2 H.264 decoding support
1645 - 4:2:2 and 4:4:4 H.264 encoding with libx264
1646 - Pulseaudio input device
1647 - Prores encoder
1648 - Video Decoder Acceleration (VDA) HWAccel module.
1649 - replacement Indeo 3 decoder
1650 - new ffmpeg option: -map_channel
1651 - volume audio filter added
1652 - earwax audio filter added
1653 - libv4l2 support (--enable-libv4l2)
1654 - TLS/SSL and HTTPS protocol support
1655 - AVOptions API rewritten and documented
1656 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
1657   AVCodecContext deprecated. Codec private options should be used instead.
1658 - Properly working defaults in libx264 wrapper, support for native presets.
1659 - Encrypted OMA files support
1660 - Discworld II BMV decoding support
1661 - VBLE Decoder
1662 - OS X Video Decoder Acceleration (VDA) support
1663 - compact and csv output in ffprobe
1664 - pan audio filter
1665 - IFF Amiga Continuous Bitmap (ACBM) decoder
1666 - ass filter
1667 - CRI ADX audio format muxer and demuxer
1668 - Playstation Portable PMP format demuxer
1669 - Microsoft Windows ICO demuxer
1670 - life source
1671 - PCM format support in OMA demuxer
1672 - CLJR encoder
1673 - new option: -report
1674 - Dxtory capture format decoder
1675 - cellauto source
1676 - Simple segmenting muxer
1677 - Indeo 4 decoder
1678 - SMJPEG demuxer
1679
1680
1681 version 0.8:
1682
1683 - many many things we forgot because we rather write code than changelogs
1684 - WebM support in Matroska de/muxer
1685 - low overhead Ogg muxing
1686 - MMS-TCP support
1687 - VP8 de/encoding via libvpx
1688 - Demuxer for On2's IVF format
1689 - Pictor/PC Paint decoder
1690 - HE-AAC v2 decoder
1691 - HE-AAC v2 encoding with libaacplus
1692 - libfaad2 wrapper removed
1693 - DTS-ES extension (XCh) decoding support
1694 - native VP8 decoder
1695 - RTSP tunneling over HTTP
1696 - RTP depacketization of SVQ3
1697 - -strict inofficial replaced by -strict unofficial
1698 - ffplay -exitonkeydown and -exitonmousedown options added
1699 - native GSM / GSM MS decoder
1700 - RTP depacketization of QDM2
1701 - ANSI/ASCII art playback system
1702 - Lego Mindstorms RSO de/muxer
1703 - libavcore added (and subsequently removed)
1704 - SubRip subtitle file muxer and demuxer
1705 - Chinese AVS encoding via libxavs
1706 - ffprobe -show_packets option added
1707 - RTP packetization of Theora and Vorbis
1708 - RTP depacketization of MP4A-LATM
1709 - RTP packetization and depacketization of VP8
1710 - hflip filter
1711 - Apple HTTP Live Streaming demuxer
1712 - a64 codec
1713 - MMS-HTTP support
1714 - G.722 ADPCM audio encoder/decoder
1715 - R10k video decoder
1716 - ocv_smooth filter
1717 - frei0r wrapper filter
1718 - change crop filter syntax to width:height:x:y
1719 - make the crop filter accept parametric expressions
1720 - make ffprobe accept AVFormatContext options
1721 - yadif filter
1722 - blackframe filter
1723 - Demuxer for Leitch/Harris' VR native stream format (LXF)
1724 - RTP depacketization of the X-QT QuickTime format
1725 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
1726 - cropdetect filter
1727 - ffmpeg -crop* options removed
1728 - transpose filter added
1729 - ffmpeg -force_key_frames option added
1730 - demuxer for receiving raw rtp:// URLs without an SDP description
1731 - single stream LATM/LOAS decoder
1732 - setpts filter added
1733 - Win64 support for optimized x86 assembly functions
1734 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
1735 - ASS subtitle encoder and decoder
1736 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
1737 - overlay filter added
1738 - rename aspect filter to setdar, and pixelaspect to setsar
1739 - IEC 61937 demuxer
1740 - Mobotix .mxg demuxer
1741 - frei0r source added
1742 - hqdn3d filter added
1743 - RTP depacketization of QCELP
1744 - FLAC parser added
1745 - gradfun filter added
1746 - AMR-WB decoder
1747 - replace the ocv_smooth filter with a more generic ocv filter
1748 - Windows Televison (WTV) demuxer
1749 - FFmpeg metadata format muxer and demuxer
1750 - SubRip (srt) subtitle encoder and decoder
1751 - floating-point AC-3 encoder added
1752 - Lagarith decoder
1753 - ffmpeg -copytb option added
1754 - IVF muxer added
1755 - Wing Commander IV movies decoder added
1756 - movie source added
1757 - Bink version 'b' audio and video decoder
1758 - Bitmap Brothers JV playback system
1759 - Apple HTTP Live Streaming protocol handler
1760 - sndio support for playback and record
1761 - Linux framebuffer input device added
1762 - Chronomaster DFA decoder
1763 - DPX image encoder
1764 - MicroDVD subtitle file muxer and demuxer
1765 - Playstation Portable PMP format demuxer
1766 - fieldorder video filter added
1767 - AAC encoding via libvo-aacenc
1768 - AMR-WB encoding via libvo-amrwbenc
1769 - xWMA demuxer
1770 - Mobotix MxPEG decoder
1771 - VP8 frame-multithreading
1772 - NEON optimizations for VP8
1773 - Lots of deprecated API cruft removed
1774 - fft and imdct optimizations for AVX (Sandy Bridge) processors
1775 - showinfo filter added
1776 - SMPTE 302M AES3 audio decoder
1777 - Apple Core Audio Format muxer
1778 - 9 bits and 10 bits per sample support in the H.264 decoder
1779 - 9 bits and 10 bits FFV1 encoding / decoding
1780 - split filter added
1781 - select filter added
1782 - sdl output device added
1783 - libmpcodecs video filter support (3 times as many filters than before)
1784 - mpeg2 aspect ratio dection fixed
1785 - libxvid aspect pickiness fixed
1786 - Frame multithreaded decoding
1787 - E-AC-3 audio encoder
1788 - ac3enc: add channel coupling support
1789 - floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders.
1790 - H264/MPEG frame-level multi-threading
1791 - All av_metadata_* functions renamed to av_dict_* and moved to libavutil
1792 - 4:4:4 H.264 decoding support
1793 - 10-bit H.264 optimizations for x86
1794 - lut, lutrgb, and lutyuv filters added
1795 - buffersink libavfilter sink added
1796 - Bump libswscale for recently reported ABI break
1797 - New J2K encoder (via OpenJPEG)
1798
1799
1800 version 0.7:
1801
1802 - all the changes for 0.8, but keeping API/ABI compatibility with the 0.6 release
1803
1804
1805 version 0.6:
1806
1807 - PB-frame decoding for H.263
1808 - deprecated vhook subsystem removed
1809 - deprecated old scaler removed
1810 - VQF demuxer
1811 - Alpha channel scaler
1812 - PCX encoder
1813 - RTP packetization of H.263
1814 - RTP packetization of AMR
1815 - RTP depacketization of Vorbis
1816 - CorePNG decoding support
1817 - Cook multichannel decoding support
1818 - introduced avlanguage helpers in libavformat
1819 - 8088flex TMV demuxer and decoder
1820 - per-stream language-tags extraction in asfdec
1821 - V210 decoder and encoder
1822 - remaining GPL parts in AC-3 decoder converted to LGPL
1823 - QCP demuxer
1824 - SoX native format muxer and demuxer
1825 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
1826 - DPX image decoder
1827 - Electronic Arts Madcow decoder
1828 - DivX (XSUB) subtitle encoder
1829 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
1830 - experimental AAC encoder
1831 - RTP depacketization of ASF and RTSP from WMS servers
1832 - RTMP support in libavformat
1833 - noX handling for OPT_BOOL X options
1834 - Wave64 demuxer
1835 - IEC-61937 compatible Muxer
1836 - TwinVQ decoder
1837 - Bluray (PGS) subtitle decoder
1838 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
1839 - WMA Pro decoder
1840 - Core Audio Format demuxer
1841 - ATRAC1 decoder
1842 - MD STUDIO audio demuxer
1843 - RF64 support in WAV demuxer
1844 - MPEG-4 Audio Lossless Coding (ALS) decoder
1845 - -formats option split into -formats, -codecs, -bsfs, and -protocols
1846 - IV8 demuxer
1847 - CDG demuxer and decoder
1848 - R210 decoder
1849 - Auravision Aura 1 and 2 decoders
1850 - Deluxe Paint Animation playback system
1851 - SIPR decoder
1852 - Adobe Filmstrip muxer and demuxer
1853 - RTP depacketization of H.263
1854 - Bink demuxer and audio/video decoders
1855 - enable symbol versioning by default for linkers that support it
1856 - IFF PBM/ILBM bitmap decoder
1857 - concat protocol
1858 - Indeo 5 decoder
1859 - RTP depacketization of AMR
1860 - WMA Voice decoder
1861 - ffprobe tool
1862 - AMR-NB decoder
1863 - RTSP muxer
1864 - HE-AAC v1 decoder
1865 - Kega Game Video (KGV1) decoder
1866 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
1867 - RTP depacketization of Theora
1868 - HTTP Digest authentication
1869 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
1870 - Psygnosis YOP demuxer and video decoder
1871 - spectral extension support in the E-AC-3 decoder
1872 - unsharp video filter
1873 - RTP hinting in the mov/3gp/mp4 muxer
1874 - Dirac in Ogg demuxing
1875 - seek to keyframes in Ogg
1876 - 4:2:2 and 4:4:4 Theora decoding
1877 - 35% faster VP3/Theora decoding
1878 - faster AAC decoding
1879 - faster H.264 decoding
1880 - RealAudio 1.0 (14.4K) encoder
1881
1882
1883 version 0.5:
1884
1885 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
1886 - TechSmith Camtasia (TSCC) video decoder
1887 - IBM Ultimotion (ULTI) video decoder
1888 - Sierra Online audio file demuxer and decoder
1889 - Apple QuickDraw (qdrw) video decoder
1890 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
1891 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
1892 - Miro VideoXL (VIXL) video decoder
1893 - H.261 video encoder
1894 - QPEG video decoder
1895 - Nullsoft Video (NSV) file demuxer
1896 - Shorten audio decoder
1897 - LOCO video decoder
1898 - Apple Lossless Audio Codec (ALAC) decoder
1899 - Winnov WNV1 video decoder
1900 - Autodesk Animator Studio Codec (AASC) decoder
1901 - Indeo 2 video decoder
1902 - Fraps FPS1 video decoder
1903 - Snow video encoder/decoder
1904 - Sonic audio encoder/decoder
1905 - Vorbis audio decoder
1906 - Macromedia ADPCM decoder
1907 - Duck TrueMotion 2 video decoder
1908 - support for decoding FLX and DTA extensions in FLIC files
1909 - H.264 custom quantization matrices support
1910 - ffserver fixed, it should now be usable again
1911 - QDM2 audio decoder
1912 - Real Cooker audio decoder
1913 - TrueSpeech audio decoder
1914 - WMA2 audio decoder fixed, now all files should play correctly
1915 - RealAudio 14.4 and 28.8 decoders fixed
1916 - JPEG-LS decoder
1917 - build system improvements
1918 - tabs and trailing whitespace removed from the codebase
1919 - CamStudio video decoder
1920 - AIFF/AIFF-C audio format, encoding and decoding
1921 - ADTS AAC file reading and writing
1922 - Creative VOC file reading and writing
1923 - American Laser Games multimedia (*.mm) playback system
1924 - Zip Motion Blocks Video decoder
1925 - improved Theora/VP3 decoder
1926 - True Audio (TTA) decoder
1927 - AVS demuxer and video decoder
1928 - JPEG-LS encoder
1929 - Smacker demuxer and decoder
1930 - NuppelVideo/MythTV demuxer and RTjpeg decoder
1931 - KMVC decoder
1932 - MPEG-2 intra VLC support
1933 - MPEG-2 4:2:2 encoder
1934 - Flash Screen Video decoder
1935 - GXF demuxer
1936 - Chinese AVS decoder
1937 - GXF muxer
1938 - MXF demuxer
1939 - VC-1/WMV3/WMV9 video decoder
1940 - MacIntel support
1941 - AviSynth support
1942 - VMware video decoder
1943 - VP5 video decoder
1944 - VP6 video decoder
1945 - WavPack lossless audio decoder
1946 - Targa (.TGA) picture decoder
1947 - Vorbis audio encoder
1948 - Delphine Software .cin demuxer/audio and video decoder
1949 - Tiertex .seq demuxer/video decoder
1950 - MTV demuxer
1951 - TIFF picture encoder and decoder
1952 - GIF picture decoder
1953 - Intel Music Coder decoder
1954 - Zip Motion Blocks Video encoder
1955 - Musepack decoder
1956 - Flash Screen Video encoder
1957 - Theora encoding via libtheora
1958 - BMP encoder
1959 - WMA encoder
1960 - GSM-MS encoder and decoder
1961 - DCA decoder
1962 - DXA demuxer and decoder
1963 - DNxHD decoder
1964 - Gamecube movie (.THP) playback system
1965 - Blackfin optimizations
1966 - Interplay C93 demuxer and video decoder
1967 - Bethsoft VID demuxer and video decoder
1968 - CRYO APC demuxer
1969 - ATRAC3 decoder
1970 - V.Flash PTX decoder
1971 - RoQ muxer, RoQ audio encoder
1972 - Renderware TXD demuxer and decoder
1973 - extern C declarations for C++ removed from headers
1974 - sws_flags command line option
1975 - codebook generator
1976 - RoQ video encoder
1977 - QTRLE encoder
1978 - OS/2 support removed and restored again
1979 - AC-3 decoder
1980 - NUT muxer
1981 - additional SPARC (VIS) optimizations
1982 - Matroska muxer
1983 - slice-based parallel H.264 decoding
1984 - Monkey's Audio demuxer and decoder
1985 - AMV audio and video decoder
1986 - DNxHD encoder
1987 - H.264 PAFF decoding
1988 - Nellymoser ASAO decoder
1989 - Beam Software SIFF demuxer and decoder
1990 - libvorbis Vorbis decoding removed in favor of native decoder
1991 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
1992 - Ogg (Theora, Vorbis and FLAC) muxer
1993 - The "device" muxers and demuxers are now in a new libavdevice library
1994 - PC Paintbrush PCX decoder
1995 - Sun Rasterfile decoder
1996 - TechnoTrend PVA demuxer
1997 - Linux Media Labs MPEG-4 (LMLM4) demuxer
1998 - AVM2 (Flash 9) SWF muxer
1999 - QT variant of IMA ADPCM encoder
2000 - VFW grabber
2001 - iPod/iPhone compatible mp4 muxer
2002 - Mimic decoder
2003 - MSN TCP Webcam stream demuxer
2004 - RL2 demuxer / decoder
2005 - IFF demuxer
2006 - 8SVX audio decoder
2007 - non-recursive Makefiles
2008 - BFI demuxer
2009 - MAXIS EA XA (.xa) demuxer / decoder
2010 - BFI video decoder
2011 - OMA demuxer
2012 - MLP/TrueHD decoder
2013 - Electronic Arts CMV decoder
2014 - Motion Pixels Video decoder
2015 - Motion Pixels MVI demuxer
2016 - removed animated GIF decoder/demuxer
2017 - D-Cinema audio muxer
2018 - Electronic Arts TGV decoder
2019 - Apple Lossless Audio Codec (ALAC) encoder
2020 - AAC decoder
2021 - floating point PCM encoder/decoder
2022 - MXF muxer
2023 - DV100 AKA DVCPRO HD decoder and demuxer
2024 - E-AC-3 support added to AC-3 decoder
2025 - Nellymoser ASAO encoder
2026 - ASS and SSA demuxer and muxer
2027 - liba52 wrapper removed
2028 - SVQ3 watermark decoding support
2029 - Speex decoding via libspeex
2030 - Electronic Arts TGQ decoder
2031 - RV40 decoder
2032 - QCELP / PureVoice decoder
2033 - RV30 decoder
2034 - hybrid WavPack support
2035 - R3D REDCODE demuxer
2036 - ALSA support for playback and record
2037 - Electronic Arts TQI decoder
2038 - OpenJPEG based JPEG 2000 decoder
2039 - NC (NC4600) camera file demuxer
2040 - Gopher client support
2041 - MXF D-10 muxer
2042 - generic metadata API
2043 - flash ScreenVideo2 encoder
2044
2045
2046 version 0.4.9-pre1:
2047
2048 - DV encoder, DV muxer
2049 - Microsoft RLE video decoder
2050 - Microsoft Video-1 decoder
2051 - Apple Animation (RLE) decoder
2052 - Apple Graphics (SMC) decoder
2053 - Apple Video (RPZA) decoder
2054 - Cinepak decoder
2055 - Sega FILM (CPK) file demuxer
2056 - Westwood multimedia support (VQA & AUD files)
2057 - Id Quake II CIN playback support
2058 - 8BPS video decoder
2059 - FLIC playback support
2060 - RealVideo 2.0 (RV20) decoder
2061 - Duck TrueMotion v1 (DUCK) video decoder
2062 - Sierra VMD demuxer and video decoder
2063 - MSZH and ZLIB decoder support
2064 - SVQ1 video encoder
2065 - AMR-WB support
2066 - PPC optimizations
2067 - rate distortion optimal cbp support
2068 - rate distorted optimal ac prediction for MPEG-4
2069 - rate distorted optimal lambda->qp support
2070 - AAC encoding with libfaac
2071 - Sunplus JPEG codec (SP5X) support
2072 - use Lagrange multiplier instead of QP for ratecontrol
2073 - Theora/VP3 decoding support
2074 - XA and ADX ADPCM codecs
2075 - export MPEG-2 active display area / pan scan
2076 - Add support for configuring with IBM XLC
2077 - floating point AAN DCT
2078 - initial support for zygo video (not complete)
2079 - RGB ffv1 support
2080 - new audio/video parser API
2081 - av_log() system
2082 - av_read_frame() and av_seek_frame() support
2083 - missing last frame fixes
2084 - seek by mouse in ffplay
2085 - noise reduction of DCT coefficients
2086 - H.263 OBMC & 4MV support
2087 - H.263 alternative inter vlc support
2088 - H.263 loop filter
2089 - H.263 slice structured mode
2090 - interlaced DCT support for MPEG-2 encoding
2091 - stuffing to stay above min_bitrate
2092 - MB type & QP visualization
2093 - frame stepping for ffplay
2094 - interlaced motion estimation
2095 - alternate scantable support
2096 - SVCD scan offset support
2097 - closed GOP support
2098 - SSE2 FDCT
2099 - quantizer noise shaping
2100 - G.726 ADPCM audio codec
2101 - MS ADPCM encoding
2102 - multithreaded/SMP motion estimation
2103 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
2104 - multithreaded/SMP decoding for MPEG-2
2105 - FLAC decoder
2106 - Metrowerks CodeWarrior suppport
2107 - H.263+ custom pcf support
2108 - nicer output for 'ffmpeg -formats'
2109 - Matroska demuxer
2110 - SGI image format, encoding and decoding
2111 - H.264 loop filter support
2112 - H.264 CABAC support
2113 - nicer looking arrows for the motion vector visualization
2114 - improved VCD support
2115 - audio timestamp drift compensation
2116 - MPEG-2 YUV 422/444 support
2117 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
2118 - better image scaling
2119 - H.261 support
2120 - correctly interleave packets during encoding
2121 - VIS optimized motion compensation
2122 - intra_dc_precision>0 encoding support
2123 - support reuse of motion vectors/MB types/field select values of the source video
2124 - more accurate deblock filter
2125 - padding support
2126 - many optimizations and bugfixes
2127 - FunCom ISS audio file demuxer and according ADPCM decoding
2128
2129
2130 version 0.4.8:
2131
2132 - MPEG-2 video encoding (Michael)
2133 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
2134 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
2135   and Mario Brito)
2136 - Xan DPCM audio decoder (Mario Brito)
2137 - Interplay MVE playback subsystem (Mike Melanson)
2138 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
2139
2140
2141 version 0.4.7:
2142
2143 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
2144   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
2145 - current version now also compiles with older GCC (Fabrice)
2146 - 4X multimedia playback system including 4xm file demuxer (Mike
2147   Melanson), and 4X video and audio codecs (Michael)
2148 - Creative YUV (CYUV) decoder (Mike Melanson)
2149 - FFV1 codec (our very simple lossless intra only codec, compresses much better
2150   than HuffYUV) (Michael)
2151 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
2152 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
2153   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
2154 - ffplay has been replaced with a newer version which uses SDL (optionally)
2155   for multiplatform support (Fabrice)
2156 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
2157   by anonymous
2158 - AMR format has been added (Johannes Carlsson)
2159 - 3GP support has been added (Johannes Carlsson)
2160 - VP3 codec has been added (Mike Melanson)
2161 - more MPEG-1/2 fixes
2162 - better multiplatform support, MS Visual Studio fixes (various)
2163 - AltiVec optimizations (Magnus Damn and others)
2164 - SH4 processor support has been added (BERO)
2165 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
2166 - VOB streaming support (Brian Foley)
2167 - better MP3 autodetection (Andriy Rysin)
2168 - qpel encoding (Michael)
2169 - 4mv+b frames encoding finally fixed (Michael)
2170 - chroma ME (Michael)
2171 - 5 comparison functions for ME (Michael)
2172 - B-frame encoding speedup (Michael)
2173 - WMV2 codec (unfinished - Michael)
2174 - user specified diamond size for EPZS (Michael)
2175 - Playstation STR playback subsystem, still experimental (Mike and Michael)
2176 - ASV2 codec (Michael)
2177 - CLJR decoder (Alex)
2178
2179 .. And lots more new enhancements and fixes.
2180
2181
2182 version 0.4.6:
2183
2184 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
2185   from scratch
2186 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
2187 - fix quantization bug in AC3 encoder
2188 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
2189 - added prototype ffplay program
2190 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
2191 - bug fix on MCBPC tables of H.263 (Juanjo)
2192 - bug fix on DC coefficients of H.263 (Juanjo)
2193 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
2194 - now we can decode H.263 streams found in QuickTime files (Juanjo)
2195 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
2196 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
2197 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
2198 - now H.263 picture size is returned on the first decoded frame (Juanjo)
2199 - added first regression tests
2200 - added MPEG-2 TS demuxer
2201 - new demux API for libav
2202 - more accurate and faster IDCT (Michael)
2203 - faster and entropy-controlled motion search (Michael)
2204 - two pass video encoding (Michael)
2205 - new video rate control (Michael)
2206 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
2207 - great performance improvement of video encoders and decoders (Michael)
2208 - new and faster bit readers and vlc parsers (Michael)
2209 - high quality encoding mode: tries all macroblock/VLC types (Michael)
2210 - added DV video decoder
2211 - preliminary RTP/RTSP support in ffserver and libavformat
2212 - H.263+ AIC decoding/encoding support (Juanjo)
2213 - VCD MPEG-PS mode (Juanjo)
2214 - PSNR stuff (Juanjo)
2215 - simple stats output (Juanjo)
2216 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
2217
2218
2219 version 0.4.5:
2220
2221 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
2222 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
2223 - added configure system (actually a small shell script)
2224 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
2225   Michael Hipp (temporary solution - waiting for integer only
2226   decoder)
2227 - fixed VIDIOCSYNC interrupt
2228 - added Intel H.263 decoding support ('I263' AVI fourCC)
2229 - added Real Video 1.0 decoding (needs further testing)
2230 - simplified image formats again. Added PGM format (=grey
2231   pgm). Renamed old PGM to PGMYUV.
2232 - fixed msmpeg4 slice issues (tell me if you still find problems)
2233 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
2234 - added support for MPlayer interface
2235 - added macroblock skip optimization
2236 - added MJPEG decoder
2237 - added mmx/mmxext IDCT from libmpeg2
2238 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
2239   <celer at shell.scrypt.net>)
2240 - added pixel format conversion layer (e.g. for MJPEG or PPM)
2241 - added deinterlacing option
2242 - MPEG-1/2 fixes
2243 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
2244 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
2245 - Windows porting of file converter
2246 - added MJPEG raw format (input/output)
2247 - added JPEG image format support (input/output)
2248
2249
2250 version 0.4.4:
2251
2252 - fixed some std header definitions (Bjorn Lindgren
2253   <bjorn.e.lindgren at telia.com>).
2254 - added MPEG demuxer (MPEG-1 and 2 compatible).
2255 - added ASF demuxer
2256 - added prototype RM demuxer
2257 - added AC3 decoding (done with libac3 by Aaron Holtzman)
2258 - added decoding codec parameter guessing (.e.g. for MPEG, because the
2259   header does not include them)
2260 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
2261   play them (only tested video)
2262 - fixed H.263 white bug
2263 - fixed phase rounding in img resample filter
2264 - add MMX code for polyphase img resample filter
2265 - added CPU autodetection
2266 - added generic title/author/copyright/comment string handling (ASF and RM
2267   use them)
2268 - added SWF demux to extract MP3 track (not usable yet because no MP3
2269   decoder)
2270 - added fractional frame rate support
2271 - codecs are no longer searched by read_header() (should fix ffserver
2272   segfault)
2273
2274
2275 version 0.4.3:
2276
2277 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
2278 - fixed raw yuv output
2279 - added motion rounding support in MPEG-4
2280 - fixed motion bug rounding in MSMPEG4
2281 - added B-frame handling in video core
2282 - added full MPEG-1 decoding support
2283 - added partial (frame only) MPEG-2 support
2284 - changed the FOURCC code for H.263 to "U263" to be able to see the
2285   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
2286   this +codec ;) (JuanJo).
2287 - Halfpel motion estimation after MB type selection (JuanJo)
2288 - added pgm and .Y.U.V output format
2289 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
2290   output.
2291 - added pgmpipe I/O format (original patch from Martin Aumueller
2292   <lists at reserv.at>, but changed completely since we use a format
2293   instead of a protocol)
2294
2295
2296 version 0.4.2:
2297
2298 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
2299   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
2300   missing. MSMPEG4 support is complete.
2301 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
2302   can decode ffmpeg MPEGs :-)).
2303 - added libavcodec API documentation (see apiexample.c).
2304 - fixed image polyphase bug (the bottom of some images could be
2305   greenish)
2306 - added support for non clipped motion vectors (decoding only)
2307   and image sizes non-multiple of 16
2308 - added support for AC prediction (decoding only)
2309 - added file overwrite confirmation (can be disabled with -y)
2310 - added custom size picture to H.263 using H.263+ (Juanjo)
2311
2312
2313 version 0.4.1:
2314
2315 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
2316   of AVI and ASF to DIV3.
2317 - added -me option to set motion estimation method
2318   (default=log). suppressed redundant -hq option.
2319 - added options -acodec and -vcodec to force a given codec (useful for
2320   AVI for example)
2321 - fixed -an option
2322 - improved dct_quantize speed
2323 - factorized some motion estimation code
2324
2325
2326 version 0.4.0:
2327
2328 - removing grab code from ffserver and moved it to ffmpeg. Added
2329   multistream support to ffmpeg.
2330 - added timeshifting support for live feeds (option ?date=xxx in the
2331   URL)
2332 - added high quality image resize code with polyphase filter (need
2333   mmx/see optimization). Enable multiple image size support in ffserver.
2334 - added multi live feed support in ffserver
2335 - suppressed master feature from ffserver (it should be done with an
2336   external program which opens the .ffm url and writes it to another
2337   ffserver)
2338 - added preliminary support for video stream parsing (WAV and AVI half
2339   done). Added proper support for audio/video file conversion in
2340   ffmpeg.
2341 - added preliminary support for video file sending from ffserver
2342 - redesigning I/O subsystem: now using URL based input and output
2343   (see avio.h)
2344 - added WAV format support
2345 - added "tty user interface" to ffmpeg to stop grabbing gracefully
2346 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
2347   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
2348 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
2349 - added new motion estimation algorithms, log and phods (Juanjo)
2350 - changed directories: libav for format handling, libavcodec for
2351   codecs
2352
2353
2354 version 0.3.4:
2355
2356 - added stereo in MPEG audio encoder
2357
2358
2359 version 0.3.3:
2360
2361 - added 'high quality' mode which use motion vectors. It can be used in
2362   real time at low resolution.
2363 - fixed rounding problems which caused quality problems at high
2364   bitrates and large GOP size
2365
2366
2367 version 0.3.2: small fixes
2368
2369 - ASF fixes
2370 - put_seek bug fix
2371
2372
2373 version 0.3.1: added avi/divx support
2374
2375 - added AVI support
2376 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
2377 - added sound for flash format (not tested)
2378
2379
2380 version 0.3: initial public release