avcodec/hevcdsp_template: Fix undefined shift in put_hevc_epel_bi_w_h()
[ffmpeg.git] / Changelog
1 Entries are sorted chronologically from oldest to youngest within each release,
2 releases are sorted from youngest to oldest.
3
4 version 3.0.10
5 - avcodec/snowdec: Check mv_scale
6 - avcodec/pafvideo: Check for bitstream end in decode_0()
7 - avcodec/ffv1dec: Fix out of array read in slice counting
8 - avcodec/dirac_dwt: Fix integer overflow in COMPOSE_53iL0()
9 - avcodec/mpeg_er: Clear mcsel in mpeg_er_decode_mb()
10 - avcodec/mpeg4videodec: Use 64 bit intermediates for sprite delta
11 - avcodec/x86/lossless_videoencdsp: Fix handling of small widths
12 - avcodec/truemotion2: Fix integer overflows in tm2_high_chroma()
13 - avcodec/aacdec_template: Clear tns present flag on error
14 - avcodec/proresdec2: SKIP_BITS() does not work with len=32
15 - avcodec/hevcdsp_template: Fix undefined shift
16 - avcodec/jpeg2000: Check that codsty->log2_prec_widths/heights has been initialized
17 - avcodec/takdec: Fix integer overflow in decode_lpc()
18 - avcodec/proresdec2: Check bits in DECODE_CODEWORD(), fixes invalid shift
19 - avcodec/takdec: Fix integer overflows in decode_subframe()
20 - avcodec/dirac_dwt: Fix integer overflow in COMPOSE_FIDELITYi*()
21 - avcodec/ffv1dec: Fix integer overflow in read_quant_table()
22 - avcodec/svq3: Fix overflow in svq3_add_idct_c()
23 - avcodec/pngdec: Clean up on av_frame_ref() failure
24 - avcodec/hevc_ps: Fix c?_qp_offset_list size
25 - avcodec/jpeg2000dsp: Fix multiple integer overflows in ict_int()
26 - avcodec/hevcdsp_template: Fix undefined shift in put_hevc_pel_bi_w_pixels
27 - avcodec/diracdec: Fix overflow in DC computation
28 - avformat/asfdec: Fix DoS in asf_build_simple_index()
29 - avformat/mov: Fix DoS in read_tfra()
30 - avcodec/dirac_dwt: Fix multiple overflows in 9/7 lifting
31 - avcodec/diracdec: Fix integer overflow in INTRA_DC_PRED()
32 - avformat/mxfdec: Fix Sign error in mxf_read_primer_pack()
33 - avformat/mxfdec: Fix DoS issues in mxf_read_index_entry_array()
34 - avformat/nsvdec: Fix DoS due to lack of eof check in nsvs_file_offset loop.
35 - avcodec/snowdec: Fix integer overflow in decode_subband_slice_buffered()
36 - avcodec/hevc_ps: Fix undefined shift in pcm code
37 - avcodec/sbrdsp_fixed: Fix undefined overflows in autocorrelate()
38 - avformat/mvdec: Fix DoS due to lack of eof check
39 - avformat/rl2: Fix DoS due to lack of eof check
40 - avformat/rmdec: Fix DoS due to lack of eof check
41 - avformat/cinedec: Fix DoS due to lack of eof check
42 - avformat/asfdec: Fix DoS due to lack of eof check
43 - avformat/hls: Fix DoS due to infinite loop
44 - ffprobe: Fix NULL pointer handling in color parameter printing
45 - ffprobe: Fix null pointer dereference with color primaries
46 - avcodec/hevc_ps: Check delta_pocs in ff_hevc_decode_short_term_rps()
47 - avformat/aviobuf: Fix signed integer overflow in avio_seek()
48 - avformat/mov: Fix signed integer overflows with total_size
49 - avcodec/utils: Fix signed integer overflow in rc_initial_buffer_occupancy initialization
50 - avcodec/aacdec_template: Fix running cleanup in decode_ics_info()
51 - avcodec/me_cmp: Fix crashes on ARM due to misalignment
52 - avcodec/dirac_dwt_template: Fix integer overflow in vertical_compose53iL0()
53 - avcodec/fic: Fixes signed integer overflow
54 - avcodec/snowdec: Fix off by 1 error
55 - avcodec/diracdec: Check perspective_exp and zrs_exp.
56 - avcodec/mpeg4videodec: Clear mcsel before decoding an image
57 - avcodec/dirac_dwt: Fixes integer overflows in COMPOSE_DAUB97*
58 - avcodec/aacdec_fixed: fix invalid shift in predict()
59 - avcodec/h264_slice: Fix overflow in slice offset
60 - avformat/utils: fix memory leak in avformat_free_context
61 - avcodec/dirac_dwt: Fix multiple integer overflows in COMPOSE_DD97iH0()
62 - avcodec/diracdec: Fix integer overflow in divide3()
63 - avcodec/takdec: Fix integer overflow in decode_subframe()
64 - avformat/rtmppkt: Convert ff_amf_get_field_value() to bytestream2
65 - avformat/rtmppkt: Convert ff_amf_tag_size() to bytestream2
66 - avcodec/diracdec: Fix integer overflow in signed multiplication in UNPACK_ARITH()
67 - avcodec/dnxhddec: Move mb height check out of non hr branch
68 - avcodec/hevc_ps: fix integer overflow in log2_parallel_merge_level_minus2
69 - avformat/oggparsecelt: Do not re-allocate os->private
70 - avcodec/aacps: Fix multiple integer overflow in map_val_34_to_20()
71 - avcodec/aacdec_fixed: fix: left shift of negative value -1
72 - doc/filters: typo in frei0r
73 - avcodec/cfhd: Fix decoding regression due to height chec
74
75 version 3.0.9
76 - avcodec/aacdec_template: Fix undefined integer overflow in apply_tns()
77 - avcodec/mjpegdec: Clip DC also on the negative side.
78 - avcodec/aacps (fixed point): Fix multiple signed integer overflows
79 - avcodec/sbrdsp_fixed: Fix integer overflow in sbr_hf_apply_noise()
80 - avcodec/wavpack: Fix invalid shift
81 - avcodec/hevc_ps: Fix integer overflow with beta/tc offsets
82 - avcodec/cfhd: Fix invalid left shift of negative value
83 - avcodec/vb: Check vertical GMC component before multiply
84 - avcodec/jpeg2000dwt: Fix integer overflow in dwt_decode97_int()
85 - avcodec/apedec: Fix integer overflow
86 - avcodec/wavpack: Fix integer overflow in wv_unpack_stereo()
87 - avcodec/mpeg4videodec: Fix GMC with videos of dimension 1
88 - avcodec/wavpack: Fix integer overflow
89 - avcodec/takdec: Fix integer overflow
90 - avcodec/tiff: Update pointer only when the result is used
91 - avcodec/cfhd: Check bpc before setting bpc in context
92 - avcodec/cfhd: Fix undefined shift
93 - avcodec/hevc_filter: Fix invalid shift
94 - avcodec/mpeg4videodec: Fix overflow in virtual_ref computation
95 - avcodec/lpc: signed integer overflow in compute_lpc_coefs() (aacdec_fixed)
96 - avcodec/wavpack: Fix undefined integer negation
97 - avcodec/aacdec_fixed: Check s for being too small
98 - avcodec/htmlsubtitles: Replace very slow redundant sscanf() calls by cleaner and faster code
99 - avcodec/h264: Fix mix of lossless and lossy MBs decoding
100 - avcodec/h264_mb: Fix 8x8dct in lossless for new versions of x264
101 - avcodec/h264_cabac: Fix CABAC+8x8dct in 4:4:4
102 - avcodec/takdec: Fixes: integer overflow in AV_SAMPLE_FMT_U8P output
103 - avcodec/jpeg2000dsp: Reorder operations in ict_int() to avoid 2 integer overflows
104 - avcodec/hevcpred_template: Fix left shift of negative value
105 - avcodec/hevcdec: Fix signed integer overflow in decode_lt_rps()
106 - avcodec/jpeg2000dec: Check nonzerobits more completely
107 - avcodec/shorten: Sanity check maxnlpc
108 - avcodec/truemotion2: Move skip computation after checks
109 - avcodec/jpeg2000: Fixes integer overflow in ff_jpeg2000_ceildivpow2()
110 - avcodec/hevcdec: Check nb_sps
111 - avcodec/hevc_refs: Check nb_refs in add_candidate_ref()
112 - avcodec/mpeg4videodec: Check sprite delta upshift against overflowing.
113 - avcodec/mpeg4videodec: Fix integer overflow in num_sprite_warping_points=2 case
114 - avcodec/aacsbr_fixed: Check shift in sbr_hf_assemble()
115 - avcodec/sbrdsp_fixed: Return an error from sbr_hf_apply_noise() if operations are impossible
116 - avcodec/jpeg2000dwt: Fix runtime error: left shift of negative value -123
117 - avcodec/wavpack: Fix runtime error: signed integer overflow: 1886191616 + 277872640 cannot be represented in type 'int'
118 - avcodec/snowdec: Fix runtime error: left shift of negative value -1
119 - avcodec/aacdec_fixed: Fix runtime error: left shift of negative value -1297616
120 - avcodec/tiff: Fix leak of geotags[].val
121 - avcodec/ra144: Fix runtime error: signed integer overflow: -2200 * 1033073 cannot be represented in type 'int'
122 - avcodec/flicvideo: Fix runtime error: signed integer overflow: 4864 * 459296 cannot be represented in type 'int'
123 - avcodec/cfhd: Check band parameters before storing them
124 - avcodec/indeo4: Check remaining data in Pic hdr extension parsing code
125 - avcodec/ac3dec_fixed: Fix multiple runtime error: signed integer overflow: -39271008 * 59 cannot be represented in type 'int'
126 - avcodec/mpeg4videodec: Fix runtime error: signed integer overflow: 53098 * 40448 cannot be represented in type 'int'
127 - avcodec/pafvideo: Fix assertion failure
128 - avcodec/takdec: Fix multiple runtime error: signed integer overflow: 637072 * 4096 cannot be represented in type 'int'
129 - avcodec/mjpegdec: Check that reference frame matches the current frame
130 - avcodec/tiff: Avoid loosing allocated geotag values
131 - avcodec/cavs: Fix runtime error: signed integer overflow: -12648062 * 256 cannot be represented in type 'int'
132 - avformat/hls: Check local file extensions
133 - avcodec/qdrw: Fix null pointer dereference
134 - avutil/softfloat: Fix sign error in and improve documentation of av_int2sf()
135 - avcodec/hevc_ps: Fix runtime error: index 32 out of bounds for type 'uint8_t [32]'
136 - avcodec/dxv: Check remaining bytes in dxv_decompress_raw()
137 - avcodec/pafvideo: Check packet size and frame code before ff_reget_buffer()
138 - avcodec/ac3dec_fixed: Fix runtime error: left shift of 419 by 23 places cannot be represented in type 'int'
139 - avformat/options: log filename on open
140 - avcodec/aacps: Fix runtime error: left shift of 1073741824 by 1 places cannot be represented in type 'INTFLOAT' (aka 'int')
141 - avcodec/wavpack: Fix runtime error: shift exponent 32 is too large for 32-bit type 'int'
142 - avcodec/wavpack: Fix runtime error: signed integer overflow: 2013265955 - -134217694 cannot be represented in type 'int'
143 - avcodec/cinepak: Check input packet size before frame reallocation
144 - avcodec/hevc_ps: Fix runtime error: signed integer overflow: 2147483628 + 256 cannot be represented in type 'int'
145 - avcodec/ra144: Fixes runtime error: signed integer overflow: 7160 * 327138 cannot be represented in type 'int'
146 - avcodec/pnm: Use ff_set_dimensions()
147 - avcodec/cavsdec: Fix runtime error: signed integer overflow: 59 + 2147483600 cannot be represented in type 'int'
148 - avformat/avidec: Limit formats in gab2 to srt and ass/ssa
149 - avcodec/acelp_pitch_delay: Fix runtime error: value 4.83233e+39 is outside the range of representable values of type 'float'
150 - avcodec/wavpack: Check float_shift
151 - avcodec/wavpack: Fix runtime error: signed integer overflow: 24 * -2147483648 cannot be represented in type 'int'
152 - avcodec/ansi: Fix frame memleak
153 - avcodec/jpeg2000dec: Use ff_set_dimensions()
154 - avcodec/truemotion2: Fix passing null pointer to memset()
155 - avcodec/truemotion2: Fix runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
156 - avcodec/ra144: Fix runtime error: signed integer overflow: -2449 * 1398101 cannot be represented in type 'int'
157 - avcodec/ra144: Fix runtime error: signed integer overflow: 11184810 * 404 cannot be represented in type 'int'
158 - avcodec/aac_defines: Add missing () to AAC_HALF_SUM() macro
159 - avcodec/webp: Fixes null pointer dereference
160 - avcodec/aacdec_fixed: Fix runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
161 - avcodec/snow: Fix runtime error: signed integer overflow: 1086573993 + 1086573994 cannot be represented in type 'int'
162 - avcodec/jpeg2000: Fix runtime error: signed integer overflow: 4185 + 2147483394 cannot be represented in type 'int'
163 - avcodec/jpeg2000dec: Check tile offsets more completely
164 - avcodec/aacdec_fixed: Fix multiple runtime error: shift exponent 127 is too large for 32-bit type 'int'
165 - avcodec/wnv1: More strict buffer size check
166 - avcodec/libfdk-aacdec: Correct buffer_size parameter
167 - avcodec/sbrdsp_template: Fix: runtime error: signed integer overflow: 849815297 + 1315389781 cannot be represented in type 'int'
168 - avcodec/ivi_dsp: Fix runtime error: left shift of negative value -2
169 - doc/filters: Clarify scale2ref example
170 - avcodec/mlpdec: Do not leave invalid values in matrix_out_ch[] on error
171 - avcodec/ra144dec: Fix runtime error: left shift of negative value -17
172 - avformat/mux: Fix copy an paste typo
173 - avutil/internal: Do not enable CHECKED with DEBUG
174 - avcodec/aacdec_fixed: Fix runtime error: signed integer overflow: -2147483648 * -1 cannot be represented in type 'int'
175 - avcodec/smc: Check remaining input
176 - avcodec/jpeg2000dec: Fix copy and paste error
177 - avcodec/jpeg2000dec: Check tile offsets
178 - avcodec/sanm: Fix uninitialized reference frames
179 - avcodec/jpeglsdec: Check get_bits_left() before decoding a picture
180 - avcodec/ivi_dsp: Fix multiple runtime error: left shift of negative value -71
181 - avcodec/mjpegdec: Fix runtime error: signed integer overflow: -32767 * 130560 cannot be represented in type 'int'
182 - avcodec/aacdec_fixed: Fix runtime error: shift exponent 34 is too large for 32-bit type 'int'
183 - avcodec/mpeg4videodec: Check for multiple VOL headers
184 - avcodec/vmnc: Check location before use
185 - avcodec/takdec: Fix runtime error: signed integer overflow: 8192 * 524308 cannot be represented in type 'int'
186 - avcodec/aac_defines: Fix: runtime error: left shift of negative value -2
187 - avcodec/takdec: Fix runtime error: left shift of negative value -63
188 - avcodec/mlpdsp: Fix runtime error: signed integer overflow: -24419392 * 128 cannot be represented in type 'int'
189 - avcodec/sbrdsp_fixed: fix runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
190 - avcodec/aacsbr_fixed: Fix multiple runtime error: shift exponent 170 is too large for 32-bit type 'int'
191 - avcodec/mlpdec: Do not leave a invalid num_primitive_matrices in the context
192 - avcodec/aacsbr_fixed: Fix multiple runtime error: shift exponent 150 is too large for 32-bit type 'int'
193 - avcodec/mimic: Use ff_set_dimensions() to set the dimensions
194 - avcodec/fic: Fix multiple runtime error: signed integer overflow: 5793 * 419752 cannot be represented in type 'int'
195
196
197 version 3.0.8
198 - avcodec/aacdec: Fix runtime error: signed integer overflow: 2147483520 + 255 cannot be represented in type 'int'
199 - avcodec/aacdec_template: Fix fixed point scale in decode_cce()
200 - avcodec/flicvideo: Check frame_size before decrementing
201 - avcodec/mlpdec: Fix runtime error: left shift of negative value -1
202 - avcodec/takdec: Fix  runtime error: left shift of negative value -42
203 - avcodec/hq_hqa: Fix: runtime error: signed integer overflow: -255 * 10180917 cannot be represented in type 'int'
204 - avcodec/truemotion1: Fix multiple runtime error: signed integer overflow: 1246906962 * 2 cannot be represented in type 'int'
205 - avcodec/svq3: Fix runtime error: left shift of negative value -6
206 - avcodec/tiff: reset sampling[] if its invalid
207 - avcodec/aacps: Fix undefined behavior
208 - avcodec/opus_silk: Fix integer overflow and out of array read
209 - avcodec/flacdec: Return error code instead of 0 for failures
210 - avcodec/snowdec: Check width
211 - avcodec/webp: Update canvas size in vp8_lossy_decode_frame() as in vp8_lossless_decode_frame()
212 - avcodec/webp: Factor update_canvas_size() out
213 - avcodec/cllc: Check prefix
214 - avcodec/rscc: Check pixel_size for overflow
215 - avcodec/dds: Fix runtime error: left shift of 210 by 24 places cannot be represented in type 'int'
216 - avcodec/mpeg4videodec: Clear sprite wraping on unsupported cases in VOP decode
217 - avcodec/ac3dec: Fix: runtime error: index -1 out of bounds for type 'INTFLOAT [2]'
218 - avcodec/hqxdsp: Fix runtime error: signed integer overflow: -196264 * 11585 cannot be represented in type 'int'
219 - avcodec/g723_1dec: Fix LCG type
220 - libswscale/tests/swscale: Fix uninitialized variables
221 - avcodec/ffv1dec: Fix runtime error: signed integer overflow: 1550964438 + 1550964438 cannot be represented in type 'int'
222 - avcodec/webp: Fix signedness in prefix_code check
223 - avcodec/svq3: Fix runtime error: signed integer overflow: 169 * 12717677 cannot be represented in type 'int'
224 - avcodec/mlpdec: Check that there is enough data for headers
225 - avcodec/ac3dec: Keep track of band structure
226 - avcodec/webp: Add missing input padding
227 - avcodec/aacdec_fixed: Fix runtime error: left shift of negative value -1
228 - avcodec/aacsbr_template: Do not change bs_num_env before its checked
229 - avcodec/mlp: Fix multiple runtime error: left shift of negative value -1
230 - avcodec/vp8dsp: vp7_luma_dc_wht_c: Fix multiple runtime error: signed integer overflow: -1366381240 + -1262413604 cannot be represented in type 'int'
231 - avcodec/avcodec: Limit the number of side data elements per packet
232 - avcodec/texturedsp: Fix runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
233 - avcodec/g723_1dec: Fix runtime error: left shift of negative value -1
234 - avcodec/wmv2dsp: Fix runtime error: signed integer overflow: 181 * -17047030 cannot be represented in type 'int'
235 - avcodec/diracdec: Fix Assertion frame->buf[0] failed at libavcodec/decode.c:610
236 - avcodec/msmpeg4dec: Check for cbpy VLC errors
237 - avcodec/cllc: Check num_bits
238 - avcodec/cllc: Factor VLC_BITS/DEPTH out, do not use repeated literal numbers
239 - avcodec/dvbsubdec: Check entry_id
240 - avcodec/aacdec_fixed: Fix multiple shift exponent 33 is too large for 32-bit type 'int'
241 - avcodec/mpeg12dec: Fixes runtime error: division by zero
242 - avcodec/webp: Always set pix_fmt
243 - avfilter/vf_uspp: Fix currently unused input frame dimensions
244 - avcodec/truemotion1: Fix multiple runtime error: left shift of negative value -1
245 - avcodec/eatqi: Fix runtime error: signed integer overflow: 4466147 * 1075 cannot be represented in type 'int'
246 - avcodec/dss_sp: Fix runtime error: signed integer overflow: 2147481189 + 4096 cannot be represented in type 'int'
247 - avformat/wavdec: Check chunk_size
248 - avcodec/cavs: Check updated MV
249 - avcodec/y41pdec: Fix width in input buffer size check
250 - avcodec/svq3: Fix multiple runtime error: signed integer overflow: -237341 * 24552 cannot be represented in type 'int'
251 - avcodec/texturedsp: Fix runtime error: left shift of 218 by 24 places cannot be represented in type 'int'
252 - avcodec/lagarith: Check scale_factor
253 - avcodec/lagarith: Fix runtime error: left shift of negative value -1
254 - avcodec/takdec: Fix multiple  runtime error: left shift of negative value -1
255 - avcodec/indeo2: Check for invalid VLCs
256 - avcodec/g723_1dec: Fix several integer related cases of undefined behaviour
257 - avcodec/htmlsubtitles: Check for string truncation and return error
258 - avcodec/bmvvideo: Fix runtime error: left shift of 137 by 24 places cannot be represented in type 'int'
259 - avcodec/dss_sp: Fix multiple runtime error: signed integer overflow: -15699 * -164039 cannot be represented in type 'int'
260 - avcodec/dvbsubdec: check region dimensions
261 - avcodec/vp8dsp: Fixes: runtime error: signed integer overflow: 1330143360 - -1023040530 cannot be represented in type 'int'
262 - avcodec/hqxdsp: Fix multiple runtime error: signed integer overflow: 248220 * 21407 cannot be represented in type 'int' in idct_col()
263 - avcodec/cavsdec: Check sym_factor
264 - avcodec/cdxl: Check format for BGR24
265 - avcodec/ffv1dec: Fix copying planes of paletted formats
266 - avcodec/wmv2dsp: Fix runtime error: signed integer overflow: 181 * -12156865 cannot be represented in type 'int'
267 - avcodec/xwddec: Check bpp more completely
268 - avcodec/s302m: Fix left shift of 8 by 28 places cannot be represented in type 'int'
269 - avcodec/eamad: Fix runtime error: signed integer overflow: 49674 * 49858 cannot be represented in type 'int'
270 - avcodec/g726: Fix runtime error: left shift of negative value -2
271 - avcodec/ra144: Fix runtime error: left shift of negative value -798
272 - avcodec/mss34dsp: Fix multiple signed integer overflow
273 - avcodec/targa_y216dec: Fix width type
274 - avcodec/texturedsp: Fix multiple runtime error: left shift of 255 by 24 places cannot be represented in type 'int'
275 - avcodec/ivi_dsp: Fix multiple left shift of negative value -2
276 - avcodec/svq3: Fix multiple runtime error: signed integer overflow: 44161 * 61694 cannot be represented in type 'int'
277 - avcodec/msmpeg4dec: Correct table depth
278 - avcodec/dds: Fix runtime error: left shift of 1 by 31 places cannot be represented in type 'int'
279 - avcodec/cdxl: Check format parameter
280 - avutil/softfloat: Fix overflow in av_div_sf()
281 - avcodec/hq_hqa: Fix runtime error: left shift of negative value -207
282 - avcodec/mss3: Change types in rac_get_model_sym() to match the types they are initialized from
283 - avcodec/shorten: Check k in get_uint()
284 - avcodec/webp: Fix null pointer dereference
285 - avcodec/dfa: Fix signed integer overflow: -2147483648 - 1 cannot be represented in type 'int'
286 - avcodec/g723_1: Fix multiple runtime error: left shift of negative value
287 - avcodec/mimic: Fix runtime error: left shift of negative value -1
288 - avcodec/fic: Fix multiple left shift of negative value -15
289 - avcodec/mlpdec: Fix runtime error: left shift of negative value -22
290 - avcodec/snowdec: Check qbias
291 - avutil/softfloat: Fix multiple runtime error: left shift of negative value -8
292 - avcodec/aacsbr_template: Do not leave bs_num_env invalid
293 - avcodec/mdec: Fix signed integer overflow: 28835400 * 83 cannot be represented in type 'int'
294 - avcodec/dfa: Fix off by 1 error
295 - avcodec/nellymoser: Fix multiple left shift of negative value -8591
296 - avcodec/cdxl: Fix signed integer overflow: 14243456 * 164 cannot be represented in type 'int'
297 - avcodec/g722: Fix multiple runtime error: left shift of negative value -1
298 - avcodec/dss_sp: Fix multiple left shift of negative value -466
299 - avcodec/wnv1: Fix runtime error: left shift of negative value -1
300 - avcodec/tiertexseqv: set the fixed dimenasions, do not depend on the demuxer doing so
301 - avcodec/mjpegdec: Fix runtime error: signed integer overflow: -24543 * 2031616 cannot be represented in type 'int'
302 - avcodec/cavsdec: Fix undefined behavior from integer overflow
303 - avcodec/dvdsubdec: Fix runtime error: left shift of 242 by 24 places cannot be represented in type 'int'
304 - libavcodec/mpeg4videodec: Convert sprite_offset to 64bit
305 - avcodec/pngdec: Use ff_set_dimensions()
306 - avcodec/msvideo1: Check buffer size before re-getting the frame
307 - avcodec/h264_cavlc: Fix undefined behavior on qscale overflow
308 - avcodec/dcadsp: Fix runtime error: signed integer overflow
309 - avcodec/svq3: Increase offsets to prevent integer overflows
310 - avcodec/indeo2: Check remaining bits in ir2_decode_plane()
311 - avcodec/vp3: Check remaining bits in unpack_dct_coeffs()
312 - doc/developer: Add terse documentation of assumed C implementation defined behavior
313 - avcodec/mdec: Fix runtime error: left shift of negative value -127
314 - avcodec/x86/vc1dsp_init: Fix build failure with --disable-optimizations and clang
315 - libavcodec/exr : fix float to uint16 conversion for negative float value
316 - avformat/webmdashenc: Validate the 'streams' adaptation sets parameter
317 - avformat/webmdashenc: Require the 'adaptation_sets' option to be set
318 - avcodec/dvdsubdec: Fixes 2 runtime error: left shift of 170 by 24 places cannot be represented in type 'int'
319 - avformat/oggparsedaala: Do not leave an invalid value in gpshift
320 - avformat/oggparsedaala: Check duration for AV_NOPTS_VALUE
321 - avfilter/af_sofalizer: Fix bad shift
322 - avfilter/avfiltergraph: Add assert to write down in machine readable form what is assumed about sample rates in swap_samplerates_on_filter()
323 - avcodec/tiff: Perform multiply in tiff_unpack_lzma() as 64bit
324 - avcodec/vdpau_hevc: Fix potential out-of-bounds write
325 - avcodec/tiff: Check geotag count for being non zero
326 - avcodec/vp56: Check avctx->error_concealment before enabling EC
327 - avcodec/tiff: Check stripsize strippos for overflow
328 - avcodec/mpegaudiodec_template: Make l3_unscale() work with e=0
329 - avcodec/tiff: Check for multiple geo key directories
330 - avcodec/wavpack: Fix runtime error: shift exponent 32 is too large for 32-bit type 'int'
331 - avcodec/rv34: Fix runtime error: signed integer overflow: 36880 * 66288 cannot be represented in type 'int'
332 - avcodec/amrwbdec: Fix  runtime error: left shift of negative value -1
333 - avcodec/mpeg4videodec: Fix runtime error: signed integer overflow: -135088512 * 16 cannot be represented in type 'int'
334 - avcodec/h264_mvpred: Fix runtime error: left shift of negative value -1
335 - avcodec/mjpegdec: Fix runtime error: left shift of negative value -127
336 - avcodec/wavpack: Fix runtime error: left shift of negative value -5
337 - avcodec/wavpack: Fix runtime error: left shift of negative value -2
338 - avcodec/mpeg4videodec: Fix runtime error: signed integer overflow: 134527392 * 16 cannot be represented in type 'int'
339 - avcodec/mpeg12dec: Fix runtime error: left shift of negative value -13
340 - avcodec/h264_mvpred: Fix multiple runtime error: left shift of negative value
341 - avcodec/adxdec: Fix runtime error: left shift of negative value -1
342 - avcodec/mpeg4videodec: Improve the overflow checks in mpeg4_decode_sprite_trajectory()
343 - avcodec/mjpegdec: Fix runtime error: left shift of negative value -511
344 - avcodec/h264_direct: Fix runtime error: left shift of negative value -14
345 - avcodec/pictordec: Check plane value before doing value/mask computations
346 - avcodec/mpeg4videodec: Fix runtime error: left shift of negative value -2650
347 - avcodec/eac3dec: Fix runtime error: left shift of negative value -3
348 - avcodec/mpeg12dec: Fix runtime error: left shift of negative value -2
349 - avcodec/mpeg4videodec: Check the other 3 sprite points for intermediate overflows
350 - avcodec/mpeg4videodec: Check sprite_offset in addition to shifts
351 - avcodec/mpeg4video: Fix runtime error: left shift of negative value
352 - avcodec/ituh263dec: Fix runtime error: left shift of negative value -22
353 - avcodec/rv40: Fix runtime error: left shift of negative value
354 - avcodec/h264_cabac: runtime error: signed integer overflow: 2147483647 + 14 cannot be represented in type 'int'
355 - avcodec/mpeg4videodec: Fix runtime error: shift exponent -2 is negative
356 - avcodec/mjpegdec: Fix runtime error: left shift of negative value -507
357 - avcodec/eac3dec: Fix runtime error: left shift of negative value
358 - avcodec/htmlsubtitles: Fix reading one byte beyond the array
359 - avcodec/vp6: clear dimensions on failed resolution change in vp6_parse_header()
360 - avcodec/vp56: Reset have_undamaged_frame on resolution changes
361 - avcodec/vp8: Fix hang with slice threads
362 - avcodec/vp8: Check for the bitstream end per MB in decode_mb_row_no_filter()
363 - avcodec/vp568: Check that there is enough data for ff_vp56_init_range_decoder()
364 - avcodec/vp8: remove redundant check
365 - avcodec/vp56: Require a correctly decoded frame before using vp56_conceal_mb()
366 - avcodec/vp3: Do not return random positive values but the buf size
367 - avcodec/vp8: Check for bitsteam end in decode_mb_row_no_filter()
368 - avcodec/vp56: Factorize vp56_render_mb() out
369 - avcodec/vp3dsp: Fix multiple signed integer overflow: 46341 * 47523 cannot be represented in type 'int'
370 - Add CHECK/SUINT code
371 - avcodec/mpeg12dec: Fix runtime error: left shift of negative value -1
372 - avcodec/vp56: Clear dimensions in case of failure in the middle of a resolution change
373 - avcodec/vp56: Implement very basic error concealment
374 - avcodec/amrwbdec: Fix 2 runtime errors: left shift of negative value -1
375 - avcodec/pngdec: Fix runtime error: left shift of 152 by 24 places cannot be represented in type 'int'
376 - avcodec/vp56: Fix sign typo
377 - avcodec/mpegaudiodec_template: Correct return code on id3 tag discarding
378 - avcodec/rv34: Simplify and factor get_slice_offset() code
379 - avcodec/pictordec: Do not read more than nb_planes
380 - avcodec/srtdec: Fix signed integer overflow: 1811992524 * 384 cannot be represented in type 'int'
381 - avcodec/pngdec: Check bit depth for validity
382 - avcodec/mpeg12dec: Fix runtime error: left shift of negative value
383 - avcodec/wavpacl: Fix runtime error: left shift of negative value -1
384 - avformat/http: Check for truncated buffers in http_connect()
385 - avformat/apng: fix setting frame delay when max_fps is set to no limit
386 - swresample/resample: free existing ResampleContext on reinit
387 - swresample/resample: move resample_free() higher in the file
388 - lavf/mpeg: Initialize a stack variable used by memcmp().
389 - lavc/avpacket: Initialize a variable in error path.
390
391 version 3.0.7
392 - avcodec/h264_slice: Clear ref_counts on redundant slices
393 - lavf/mov.c: Avoid heap allocation wrap in mov_read_uuid
394 - lavf/mov.c: Avoid heap allocation wrap in mov_read_hdlr
395 - avcodec/pictordec: Fix logic error
396 - avcodec/movtextdec: Fix decode_styl() cleanup
397 - lavf/matroskadec: fix is_keyframe for early Blocks
398
399 version 3.0.6:
400 - avcodec/pngdec: Check trns more completely
401 - avcodec/interplayvideo: Move parameter change check up
402 - avcodec/mjpegdec: Check for for the bitstream end in mjpeg_decode_scan_progressive_ac()
403 - avformat/flacdec: Check avio_read result when reading flac block header.
404 - avcodec/utils: correct align value for interplay
405 - avcodec/vp56: Check for the bitstream end, pass error codes on
406 - avcodec/mjpegdec: Check remaining bitstream in ljpeg_decode_yuv_scan()
407 - avcodec/pngdec: Fix off by 1 size in decode_zbuf()
408 - avformat/avidec: skip odml master index chunks in avi_sync
409 - avcodec/mjpegdec: Check for rgb before flipping
410 - avutil/random_seed: Reduce the time needed on systems with very low precision clock()
411 - avutil/random_seed: Improve get_generic_seed() with higher precision clock()
412 - avformat/utils: Print verbose error message if stream count exceeds max_streams
413 - avformat/options_table: Set the default maximum number of streams to 1000
414 - pgssubdec: reset rle_data_len/rle_remaining_len on allocation error
415 - avutil: Add av_image_check_size2()
416 - avformat: Add max_streams option
417 - avcodec/ffv1enc: Allocate smaller packet if the worst case size cannot be allocated
418 - avcodec/mpeg4videodec: Fix undefined shifts in mpeg4_decode_sprite_trajectory()
419 - avformat/oggdec: Skip streams in duration correction that did not had their duration set.
420 - avcodec/ffv1enc: Fix size of first slice
421
422
423 version 3.0.5:
424 - configure: check for strtoull on msvc
425 - http: move chunk handling from http_read_stream() to http_buf_read().
426 - http: make length/offset-related variables unsigned.
427 - ffserver: Check chunk size
428 - Avoid using the term "file" and prefer "url" in some docs and comments
429 - avformat/rtmppkt: Check for packet size mismatches
430 - zmqsend: Initialize ret to 0
431 - avcodec/rawdec: check for side data before checking its size
432 - avcodec/flacdec: Fix undefined shift in decode_subframe()
433 - avcodec/get_bits: Fix get_sbits_long(0)
434 - avformat/ffmdec: Check media type for chunks
435 - avcodec/flacdec: Fix signed integer overflow in decode_subframe_fixed()
436 - avcodec/flacdsp_template: Fix undefined shift in flac_decorrelate_indep_c
437 - avformat/oggparsespeex: Check frames_per_packet and packet_size
438 - avformat/utils: Check start/end before computing duration in update_stream_timings()
439 - avcodec/flac_parser: Update nb_headers_buffered
440 - avformat/idroqdec: Check chunk_size for being too large
441 - avformat/mpeg: Adjust vid probe threshold to correct mis-detection
442 - avcodec/rv40: Test remaining space in loop of get_dimension()
443 - avcodec/ituh263dec: Avoid spending a long time in slice sync
444 - avcodec/movtextdec: Add error message for tsmb_size check
445 - avcodec/movtextdec: Fix tsmb_size check==0 check
446 - avcodec/movtextdec: Fix potential integer overflow
447 - avcodec/sunrast: Fix input buffer pointer check
448 - avcodec/tscc:  Check side data size before use
449 - avcodec/rawdec: Check side data size before use
450 - avcodec/msvideo1: Check side data size before use
451 - avcodec/qpeg:  Check side data size before use
452 - avcodec/qtrle:  Check side data size before use
453 - avcodec/msrle:  Check side data size before use
454 - avcodec/kmvc:  Check side data size before use
455 - avcodec/idcinvideo: Check side data size before use
456 - avcodec/cinepak: Check side data size before use
457 - avcodec/8bps: Check side data size before use
458 - avcodec/dvdsubdec: Fix off by 1 error
459 - avcodec/dvdsubdec: Fix buf_size check
460 - vp9: change order of operations in adapt_prob().
461 - avcodec/interplayvideo: Check side data size before use
462 - avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
463 - avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
464 - avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
465 - avformat/icodec: Fix crash probing fuzzed file
466 - dcstr: fix division by zero
467 - rsd: limit number of channels
468 - mss2: only use error correction for matching block counts
469 - softfloat: decrease MIN_EXP to cover full float range
470 - libopusdec: default to stereo for invalid number of channels
471 - pgssubdec: only set w/h/linesize when allocating data
472 - sbgdec: prevent NULL pointer access
473 - smacker: limit recursion depth of smacker_decode_bigtree
474 - mxfdec: fix NULL pointer dereference in mxf_read_packet_old
475 - libschroedingerdec: fix leaking of framewithpts
476 - libschroedingerdec: don't produce empty frames
477 - softfloat: handle -INT_MAX correctly
478 - filmstripdec: correctly check image dimensions
479 - pnmdec: make sure v is capped by maxval
480 - smvjpegdec: make sure cur_frame is not negative
481 - icodec: correctly check avio_read return value
482 - dvbsubdec: fix division by zero in compute_default_clut
483 - proresdec_lgpl: explicitly check coff[3] against slice_data_size
484 - escape124: reject codebook size 0
485 - icodec: add ico_read_close to fix leaking ico->images
486 - icodec: fix leaking pkt on error
487 - mpegts: prevent division by zero
488 - matroskadec: fix NULL pointer dereference in webm_dash_manifest_read_header
489 - mpegaudio_parser: don't return AVERROR_PATCHWELCOME
490 - mxfdec: fix NULL pointer dereference
491 - lzf: update pointer p after realloc
492 - diracdec: check return code of get_buffer_with_edge
493 - ppc: pixblockdsp: do unaligned block accesses correctly again
494 - interplayacm: increase bitstream buffer size by AV_INPUT_BUFFER_PADDING_SIZE
495 - interplayacm: validate number of channels
496 - interplayacm: check for too large b
497 - mpeg12dec: unref discarded picture from extradata
498 - cavsdec: unref frame before referencing again
499 - avformat: prevent triggering request_probe assert in ff_read_packet
500 - avcodec/avpacket: fix leak on realloc in av_packet_add_side_data()
501
502
503 version 3.0.4:
504 - libopenjpegenc: fix out-of-bounds reads when filling the edges
505 - libopenjpegenc: stop reusing image data buffer for openjpeg 2
506 - configure: fix detection of libopenjpeg
507 - cmdutils: fix typos
508 - lavfi: fix typos
509 - lavc: fix typos
510 - tools: fix grammar error
511 - ffmpeg: remove unused and errorneous AVFrame timestamp check
512 - Support for MIPS cpu P6600
513 - avutil/mips/generic_macros_msa: rename macro variable which causes segfault for mips r
514 - avformat/avidec: Check nb_streams in read_gab2_sub()
515 - avformat/avidec: Remove ancient assert
516 - avformat/avidec: Fix memleak with dv in avi
517 - lavc/movtextdec.c: Avoid infinite loop on invalid data.
518 - avcodec/ansi: Check dimensions
519 - avcodec/cavsdsp: use av_clip_uint8() for idct
520 - avformat/movenc: Check packet in mov_write_single_packet() too
521 - avformat/movenc: Factor check_pkt() out
522 - avformat/utils: fix timebase error in avformat_seek_file()
523 - avcodec/g726: Add missing ADDB output mask
524 - avcodec/avpacket: clear side_data_elems
525 - avformat/movenc: Check first DTS similar to dts difference
526 - avcodec/ccaption_dec: Use simple array instead of AVBuffer
527 - avformat/mov: Fix potential integer overflow in mov_read_keys
528 - swscale/swscale_unscaled: Try to fix Rgb16ToPlanarRgb16Wrapper() with slices
529 - swscale/swscale_unscaled: Fix packed_16bpc_bswap() with slices
530 - lavf/utils: Avoid an overflow for huge negative durations.
531
532 version 3.0.3:
533 - avformat/avidec: Fix infinite loop in avi_read_nikon()
534 - avcodec/aacenc: Tighter input checks
535 - avformat/wtvdec: Check pointer before use
536 - libavcodec/wmalosslessdec: Check the remaining bits
537 - avcodec/diracdec: Check numx/y
538 - avcodec/cfhd: Increase minimum band dimension to 3
539 - avcodec/indeo2: check ctab
540 - avformat/swfdec: Fix inflate() error code check
541 - avcodec/rawdec: Fix bits_per_coded_sample checks
542 - lavc/mjpegdec: Do not skip reading quantization tables.
543 - cmdutils: fix implicit declaration of SetDllDirectory function
544 - cmdutils: check for SetDllDirectory() availability
545 - avcodec/h264: Put context_count check back
546 - cmdutils: remove the current working directory from the DLL search path on win32
547 - avcodec/raw: Fix decoding of ilacetest.mov
548 - avcodec/ffv1enc: Fix assertion failure with non zero bits per sample
549 - avformat/oggdec: Fix integer overflow with invalid pts
550 - ffplay: Fix invalid array index
551 - avcodec/vp9_parser: Check the input frame sizes for being consistent
552 - libavformat/rtpdec_asf: zero initialize the AVIOContext struct
553 - libavutil/opt: Small bugfix in example.
554 - libx264: Increase x264 opts character limit to 4096
555 - avformat/mov: Check sample size
556 - avformat/format: Fix registering a format more than once and related races
557 - avformat/flacdec: Fix seeking close to EOF
558 - avcodec/flac_parser: Raise threshold for detecting invalid data
559 - avformat/flvdec: Accept last size if its off by 1
560 - tests/api/api-codec-param-test: Do not directly access caps_internal
561 - avcodec: Add avpriv_codec_get_cap_skip_frame_fill_param()
562 - avfilter/vf_telecine: Make frame writable before writing into it
563 - avformat/mpegts: adjust probe score for low check_count
564 - avcodec/mpc8: Correct end truncation
565 - avformat/mp3dec: Increase probe score slightly when the whole data from begin to end is mp3
566 - avcodec/cfhd: Set dimensions unconditionally
567 - avcodec/mpegvideo: Do not clear the parse context during init
568 - avcodec/h264: Fix off by 1 context count
569 - avcodec/alsdec: Check r to prevent out of array read
570 - avcodec/alsdec: fix max bits in ltp prefix code
571 - avcodec/utils: check skip_samples signedness
572 - avformat/mpegts: Do not trust BSSD descriptor, it is sometimes not an S302M stream
573 - avcodec/bmp_parser: Check fsize
574 - avcodec/bmp_parser: reset state
575 - avcodec/bmp_parser: Fix remaining size
576 - avcodec/bmp_parser: Fix frame_start_found in cross frame cases
577 - avfilter/af_amix: do not fail if there are no samples in output_frame()
578 - avformat/allformats: Making av_register_all() thread-safe.
579 - librtmp: Avoid an infiniloop setting connection arguments
580 - avformat/oggparsevp8: fix pts calculation on pages ending with an invisible frame
581 - Revert "configure: Enable GCC vectorization on ≥4.9 on x86"
582 - avcodec/libopenjpegenc: Set numresolutions by default to a value that is not too large
583 - ffplay: Fix usage of private lavfi API
584 - tests/checkasm/checkasm: Disable checkasm_check_pixblockdsp for ppc64be
585 - avcodec/mpegvideo: Deallocate last/next picture earlier
586 - avcodec/bmp_parser: Fix state
587 - avformat/oggparseopus: Fix Undefined behavior in oggparseopus.c and libavformat/utils.c
588 - avformat/utils: avoid overflow in compute_chapters_end()  with huge durations
589 - avformat/utils: avoid overflow in update_stream_timings() with huge durations
590 - doc/developer.texi: Add a code of conduct
591 - ffserver: fixed deallocation bug in build_feed_streams
592 - avcodec/diracdec: Fix potential integer overflow
593 - avformat/avidec: Detect index with too short entries
594 - avformat/utils: Check negative bps before shifting in ff_get_pcm_codec_id()
595 - avformat/utils: Do not compute the bitrate from duration == 0
596 - ffmpeg: Check that r_frame_rate is set before attempting to use it
597 - swresample/resample: Fix division by 0 with tap_count=1
598 - swresample/rematrix: Use clipping s16 rematrixing if overflows are possible
599 - swresample/rematrix: Use error diffusion to avoid error in the DC component of the matrix
600 - hevc: Fix memory leak related to a53_caption data
601 - libavformat/oggdec: Free stream private when header parsing fails.
602 - avformat/utils: Check bps before using it in a shift in ff_get_pcm_codec_id()
603 - avformat/oggparseopus: Check that granule pos is within the supported range
604 - avcodec/mjpegdec: Do not try to detect last scan but apply idct after all scans for progressive jpeg
605 - avformat/options_table: Add missing identifier for very strict compliance
606 - avformat/ffmdec: Check pix_fmt
607 - doc/general: update supported DCA extensions
608 - avcodec/rscc: check input buffer size for deflate mode
609 - avcodec/dca: fix sync word search error condition
610 - lavf/mpegts: Return small probe score for very short transport streams.
611
612
613 version 3.0.2:
614 - avcodec/ttaenc: Reallocate packet if its too small
615 - configure: build fix for P5600 with mips code restructuring
616 - mips: add support for R6
617 - pgssubdec: fix subpicture output colorspace and range
618 - avcodec/ac3dec: Reset SPX when switching from EAC3 to AC3
619 - avfilter/vf_drawtext: Check return code of load_glyph()
620 - avformat/mux: Check that deinit is set before calling it
621 - avcodec/takdec: add code that got somehow lost in process of REing
622 - avcodec/apedec: fix decoding of stereo files with one channel full of silence
623 - avcodec/avpacket: Fix off by 5 error
624 - avcodec/h264: Fix for H.264 configuration parsing
625 - avcodec/bmp_parser: Ensure remaining_size is not too small in startcode packet crossing corner case
626 - avcodec/pngdec: Fix alpha detection with skip_frame
627 - Changelog: Make formating consistent
628 - avfilter/src_movie: fix how we check for overflows with seek_point
629 - avcodec/j2kenc: Add attribution to OpenJPEG project:
630
631
632 version 3.0.1:
633 - avcodec/libutvideodec: copy frame so it has reference counters when refcounted_frames is set
634 - avformat/rtpdec_jpeg: fix low contrast image on low quality setting
635 - avformat/mpegtsenc: Fix used service
636 - avformat/mpegtsenc: Keep track of the program for each service
637 - avformat/file: Add crypto to default whitelist
638 - avcodec/mjpegenc_common: Store approximate aspect if exact cannot be stored
639 - lavc/hevc: Allow arbitrary garbage in bytestream as long as at least one NAL unit is found.
640 - avcodec/resample: Remove disabled and faulty code
641 - indeo2: Fix banding artefacts
642 - indeo2data: K&R formatting cosmetics
643 - avformat/hlsenc: Fix passing options, regression since bc9a5965c815cf7fd998d8ce14a18b8e861dd9ce
644 - avutil/random_seed: Add the runtime in cycles of the main loop to the entropy pool
645 - avutil/channel_layout: AV_CH_LAYOUT_6POINT1_BACK not reachable in parsing
646 - avformat/concatdec: set safe mode to enabled instead of auto
647 - avformat/utils: fix dts from pts code in compute_pkt_fields() during ascending delay
648 - avformat/rtpenc: Fix integer overflow in NTP_TO_RTP_FORMAT
649 - avcodec/dca: clear X96 channels if nothing was decoded
650 - fate/aac: Increase fuzz from of fate-aac-pns-encode from 72 to 74 for Loongson
651 - avformat/cache: Fix memleak of tree entries
652 - lavf/mov: downgrade sidx errors to non-fatal warnings; fixes trac #5216
653 - lavf/mov: fix sidx with edit lists
654 - avcodec/mjpegdec: Fix decoding slightly odd progressive jpeg
655 - swscale/utils: Fix chrSrcHSubSample for GBRAP16
656 - swscale/input: Fix GBRAP16 input
657 - avutil/pixdesc: Make get_color_type() aware of CIE XYZ formats
658 - avcodec/h264: Execute error concealment before marking the frame as done.
659 - swscale/x86/output: Fix yuv2planeX_16* with unaligned destination
660 - swscale/x86/output: Move code into yuv2planeX_mainloop
661 - MAINTAINERS: add myself as an OS/2 maintainer
662 - libwebpenc_animencoder: print library messages in verbose log levels
663 - libwebpenc_animencoder: zero initialize the WebPAnimEncoderOptions struct
664 - configure: check for SEC_I_CONTEXT_EXPIRED before enabling SChannel
665 - lavf/http: Add httpproxy to the default protocol whitelist.
666 - doc/utils: fix typo for min() description
667 - ffserver&ffm: Fixed issues preventing ffserver write_index and files_size from being set correctly which was breaking ffserver streaming.
668 - postproc: fix unaligned access
669 - vc2enc: fix use of uninitialized variables in the rate control system, correctly zero out coefficient array padding
670 - aacenc: optimize encoding speed
671 - avcodec/diracdec: check bitstream size related fields for overflows
672 - avcodec/h264_slice: Check PPS more extensively when its not copied
673
674
675 version 3.0:
676 - Common Encryption (CENC) MP4 encoding and decoding support
677 - DXV decoding
678 - extrastereo filter
679 - ocr filter
680 - alimiter filter
681 - stereowiden filter
682 - stereotools filter
683 - rubberband filter
684 - tremolo filter
685 - agate filter
686 - chromakey filter
687 - maskedmerge filter
688 - Screenpresso SPV1 decoding
689 - chromaprint fingerprinting muxer
690 - ffplay dynamic volume control
691 - displace filter
692 - selectivecolor filter
693 - extensive native AAC encoder improvements and removal of experimental flag
694 - ADPCM PSX decoder
695 - 3dostr, dcstr, fsb, genh, vag, xvag, ads, msf, svag & vpk demuxer
696 - zscale filter
697 - wve demuxer
698 - zero-copy Intel QSV transcoding in ffmpeg
699 - shuffleframes filter
700 - SDX2 DPCM decoder
701 - vibrato filter
702 - innoHeim/Rsupport Screen Capture Codec decoder
703 - ADPCM AICA decoder
704 - Interplay ACM demuxer and audio decoder
705 - XMA1 & XMA2 decoder
706 - realtime filter
707 - anoisesrc audio filter source
708 - IVR demuxer
709 - compensationdelay filter
710 - acompressor filter
711 - support encoding 16-bit RLE SGI images
712 - apulsator filter
713 - sidechaingate audio filter
714 - mipsdspr1 option has been renamed to mipsdsp
715 - aemphasis filter
716 - mips32r5 option has been removed
717 - mips64r6 option has been removed
718 - DXVA2-accelerated VP9 decoding
719 - SOFAlizer: virtual binaural acoustics filter
720 - VAAPI VP9 hwaccel
721 - audio high-order multiband parametric equalizer
722 - automatic bitstream filtering
723 - showspectrumpic filter
724 - libstagefright support removed
725 - spectrumsynth filter
726 - ahistogram filter
727 - only seek with the right mouse button in ffplay
728 - toggle full screen when double-clicking with the left mouse button in ffplay
729 - afftfilt filter
730 - convolution filter
731 - libquvi support removed
732 - support for dvaudio in wav and avi
733 - libaacplus and libvo-aacenc support removed
734 - Cineform HD decoder
735 - new DCA decoder with full support for DTS-HD extensions
736 - significant performance improvements in Windows Television (WTV) demuxer
737 - nnedi deinterlacer
738 - streamselect video and astreamselect audio filter
739 - swaprect filter
740 - metadata video and ametadata audio filter
741 - SMPTE VC-2 HQ profile support for the Dirac decoder
742 - SMPTE VC-2 native encoder supporting the HQ profile
743
744
745 version 2.8:
746 - colorkey video filter
747 - BFSTM/BCSTM demuxer
748 - little-endian ADPCM_THP decoder
749 - Hap decoder and encoder
750 - DirectDraw Surface image/texture decoder
751 - ssim filter
752 - optional new ASF demuxer
753 - showvolume filter
754 - Many improvements to the JPEG 2000 decoder
755 - Go2Meeting decoding support
756 - adrawgraph audio and drawgraph video filter
757 - removegrain video filter
758 - Intel QSV-accelerated MPEG-2 video and HEVC encoding
759 - Intel QSV-accelerated MPEG-2 video and HEVC decoding
760 - Intel QSV-accelerated VC-1 video decoding
761 - libkvazaar HEVC encoder
762 - erosion, dilation, deflate and inflate video filters
763 - Dynamic Audio Normalizer as dynaudnorm filter
764 - Reverse video and areverse audio filter
765 - Random filter
766 - deband filter
767 - AAC fixed-point decoding
768 - sidechaincompress audio filter
769 - bitstream filter for converting HEVC from MP4 to Annex B
770 - acrossfade audio filter
771 - allyuv and allrgb video sources
772 - atadenoise video filter
773 - OS X VideoToolbox support
774 - aphasemeter filter
775 - showfreqs filter
776 - vectorscope filter
777 - waveform filter
778 - hstack and vstack filter
779 - Support DNx100 (1440x1080@8)
780 - VAAPI hevc hwaccel
781 - VDPAU hevc hwaccel
782 - framerate filter
783 - Switched default encoders for webm to VP9 and Opus
784 - Removed experimental flag from the JPEG 2000 encoder
785
786
787 version 2.7:
788 - FFT video filter
789 - TDSC decoder
790 - DTS lossless extension (XLL) decoding (not lossless, disabled by default)
791 - showwavespic filter
792 - DTS decoding through libdcadec
793 - Drop support for nvenc API before 5.0
794 - nvenc HEVC encoder
795 - Detelecine filter
796 - Intel QSV-accelerated H.264 encoding
797 - MMAL-accelerated H.264 decoding
798 - basic APNG encoder and muxer with default extension "apng"
799 - unpack DivX-style packed B-frames in MPEG-4 bitstream filter
800 - WebM Live Chunk Muxer
801 - nvenc level and tier options
802 - chorus filter
803 - Canopus HQ/HQA decoder
804 - Automatically rotate videos based on metadata in ffmpeg
805 - improved Quickdraw compatibility
806 - VP9 high bit-depth and extended colorspaces decoding support
807 - WebPAnimEncoder API when available for encoding and muxing WebP
808 - Direct3D11-accelerated decoding
809 - Support Secure Transport
810 - Multipart JPEG demuxer
811
812
813 version 2.6:
814 - nvenc encoder
815 - 10bit spp filter
816 - colorlevels filter
817 - RIFX format for *.wav files
818 - RTP/mpegts muxer
819 - non continuous cache protocol support
820 - tblend filter
821 - cropdetect support for non 8bpp, absolute (if limit >= 1) and relative (if limit < 1.0) threshold
822 - Camellia symmetric block cipher
823 - OpenH264 encoder wrapper
824 - VOC seeking support
825 - Closed caption Decoder
826 - fspp, uspp, pp7 MPlayer postprocessing filters ported to native filters
827 - showpalette filter
828 - Twofish symmetric block cipher
829 - Support DNx100 (960x720@8)
830 - eq2 filter ported from libmpcodecs as eq filter
831 - removed libmpcodecs
832 - Changed default DNxHD colour range in QuickTime .mov derivatives to mpeg range
833 - ported softpulldown filter from libmpcodecs as repeatfields filter
834 - dcshift filter
835 - RTP depacketizer for loss tolerant payload format for MP3 audio (RFC 5219)
836 - RTP depacketizer for AC3 payload format (RFC 4184)
837 - palettegen and paletteuse filters
838 - VP9 RTP payload format (draft 0) experimental depacketizer
839 - RTP depacketizer for DV (RFC 6469)
840 - DXVA2-accelerated HEVC decoding
841 - AAC ELD 480 decoding
842 - Intel QSV-accelerated H.264 decoding
843 - DSS SP decoder and DSS demuxer
844 - Fix stsd atom corruption in DNxHD QuickTimes
845 - Canopus HQX decoder
846 - RTP depacketization of T.140 text (RFC 4103)
847 - Port MIPS optimizations to 64-bit
848
849
850 version 2.5:
851 - HEVC/H.265 RTP payload format (draft v6) packetizer
852 - SUP/PGS subtitle demuxer
853 - ffprobe -show_pixel_formats option
854 - CAST128 symmetric block cipher, ECB mode
855 - STL subtitle demuxer and decoder
856 - libutvideo YUV 4:2:2 10bit support
857 - XCB-based screen-grabber
858 - UDP-Lite support (RFC 3828)
859 - xBR scaling filter
860 - AVFoundation screen capturing support
861 - ffserver supports codec private options
862 - creating DASH compatible fragmented MP4, MPEG-DASH segmenting muxer
863 - WebP muxer with animated WebP support
864 - zygoaudio decoding support
865 - APNG demuxer
866 - postproc visualization support
867
868
869 version 2.4:
870 - Icecast protocol
871 - ported lenscorrection filter from frei0r filter
872 - large optimizations in dctdnoiz to make it usable
873 - ICY metadata are now requested by default with the HTTP protocol
874 - support for using metadata in stream specifiers in fftools
875 - LZMA compression support in TIFF decoder
876 - H.261 RTP payload format (RFC 4587) depacketizer and experimental packetizer
877 - HEVC/H.265 RTP payload format (draft v6) depacketizer
878 - added codecview filter to visualize information exported by some codecs
879 - Matroska 3D support thorugh side data
880 - HTML generation using texi2html is deprecated in favor of makeinfo/texi2any
881 - silenceremove filter
882
883
884 version 2.3:
885 - AC3 fixed-point decoding
886 - shuffleplanes filter
887 - subfile protocol
888 - Phantom Cine demuxer
889 - replaygain data export
890 - VP7 video decoder
891 - Alias PIX image encoder and decoder
892 - Improvements to the BRender PIX image decoder
893 - Improvements to the XBM decoder
894 - QTKit input device
895 - improvements to OpenEXR image decoder
896 - support decoding 16-bit RLE SGI images
897 - GDI screen grabbing for Windows
898 - alternative rendition support for HTTP Live Streaming
899 - AVFoundation input device
900 - Direct Stream Digital (DSD) decoder
901 - Magic Lantern Video (MLV) demuxer
902 - On2 AVC (Audio for Video) decoder
903 - support for decoding through DXVA2 in ffmpeg
904 - libbs2b-based stereo-to-binaural audio filter
905 - libx264 reference frames count limiting depending on level
906 - native Opus decoder
907 - display matrix export and rotation API
908 - WebVTT encoder
909 - showcqt multimedia filter
910 - zoompan filter
911 - signalstats filter
912 - hqx filter (hq2x, hq3x, hq4x)
913 - flanger filter
914 - Image format auto-detection
915 - LRC demuxer and muxer
916 - Samba protocol (via libsmbclient)
917 - WebM DASH Manifest muxer
918 - libfribidi support in drawtext
919
920
921 version 2.2:
922
923 - HNM version 4 demuxer and video decoder
924 - Live HDS muxer
925 - setsar/setdar filters now support variables in ratio expressions
926 - elbg filter
927 - string validation in ffprobe
928 - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
929 - complete Voxware MetaSound decoder
930 - remove mp3_header_compress bitstream filter
931 - Windows resource files for shared libraries
932 - aeval filter
933 - stereoscopic 3d metadata handling
934 - WebP encoding via libwebp
935 - ATRAC3+ decoder
936 - VP8 in Ogg demuxing
937 - side & metadata support in NUT
938 - framepack filter
939 - XYZ12 rawvideo support in NUT
940 - Exif metadata support in WebP decoder
941 - OpenGL device
942 - Use metadata_header_padding to control padding in ID3 tags (currently used in
943   MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
944 - Mirillis FIC video decoder
945 - Support DNx444
946 - libx265 encoder
947 - dejudder filter
948 - Autodetect VDA like all other hardware accelerations
949 - aliases and defaults for Ogg subtypes (opus, spx)
950
951
952 version 2.1:
953
954 - aecho filter
955 - perspective filter ported from libmpcodecs
956 - ffprobe -show_programs option
957 - compand filter
958 - RTMP seek support
959 - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
960   even when used as an input option. Previous behavior can be restored with
961   the -noaccurate_seek option.
962 - ffmpeg -t option can now be used for inputs, to limit the duration of
963   data read from an input file
964 - incomplete Voxware MetaSound decoder
965 - read EXIF metadata from JPEG
966 - DVB teletext decoder
967 - phase filter ported from libmpcodecs
968 - w3fdif filter
969 - Opus support in Matroska
970 - FFV1 version 1.3 is stable and no longer experimental
971 - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
972 - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
973   more consistent with other muxers.
974 - adelay filter
975 - pullup filter ported from libmpcodecs
976 - ffprobe -read_intervals option
977 - Lossless and alpha support for WebP decoder
978 - Error Resilient AAC syntax (ER AAC LC) decoding
979 - Low Delay AAC (ER AAC LD) decoding
980 - mux chapters in ASF files
981 - SFTP protocol (via libssh)
982 - libx264: add ability to encode in YUVJ422P and YUVJ444P
983 - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
984 - make decoding alpha optional for prores, ffv1 and vp6 by setting
985   the skip_alpha flag.
986 - ladspa wrapper filter
987 - native VP9 decoder
988 - dpx parser
989 - max_error_rate parameter in ffmpeg
990 - PulseAudio output device
991 - ReplayGain scanner
992 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
993 - Linux framebuffer output device
994 - HEVC decoder
995 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
996 - mergeplanes filter
997
998
999 version 2.0:
1000
1001 - curves filter
1002 - reference-counting for AVFrame and AVPacket data
1003 - ffmpeg now fails when input options are used for output file
1004   or vice versa
1005 - support for Monkey's Audio versions from 3.93
1006 - perms and aperms filters
1007 - audio filtering support in ffplay
1008 - 10% faster aac encoding on x86 and MIPS
1009 - sine audio filter source
1010 - WebP demuxing and decoding support
1011 - ffmpeg options -filter_script and -filter_complex_script, which allow a
1012   filtergraph description to be read from a file
1013 - OpenCL support
1014 - audio phaser filter
1015 - separatefields filter
1016 - libquvi demuxer
1017 - uniform options syntax across all filters
1018 - telecine filter
1019 - interlace filter
1020 - smptehdbars source
1021 - inverse telecine filters (fieldmatch and decimate)
1022 - colorbalance filter
1023 - colorchannelmixer filter
1024 - The matroska demuxer can now output proper verbatim ASS packets. It will
1025   become the default at the next libavformat major bump.
1026 - decent native animated GIF encoding
1027 - asetrate filter
1028 - interleave filter
1029 - timeline editing with filters
1030 - vidstabdetect and vidstabtransform filters for video stabilization using
1031   the vid.stab library
1032 - astats filter
1033 - trim and atrim filters
1034 - ffmpeg -t and -ss (output-only) options are now sample-accurate when
1035   transcoding audio
1036 - Matroska muxer can now put the index at the beginning of the file.
1037 - extractplanes filter
1038 - avectorscope filter
1039 - ADPCM DTK decoder
1040 - ADP demuxer
1041 - RSD demuxer
1042 - RedSpark demuxer
1043 - ADPCM IMA Radical decoder
1044 - zmq filters
1045 - DCT denoiser filter (dctdnoiz)
1046 - Wavelet denoiser filter ported from libmpcodecs as owdenoise (formerly "ow")
1047 - Apple Intermediate Codec decoder
1048 - Escape 130 video decoder
1049 - FTP protocol support
1050 - V4L2 output device
1051 - 3D LUT filter (lut3d)
1052 - SMPTE 302M audio encoder
1053 - support for slice multithreading in libavfilter
1054 - Hald CLUT support (generation and filtering)
1055 - VC-1 interlaced B-frame support
1056 - support for WavPack muxing (raw and in Matroska)
1057 - XVideo output device
1058 - vignette filter
1059 - True Audio (TTA) encoder
1060 - Go2Webinar decoder
1061 - mcdeint filter ported from libmpcodecs
1062 - sab filter ported from libmpcodecs
1063 - ffprobe -show_chapters option
1064 - WavPack encoding through libwavpack
1065 - rotate filter
1066 - spp filter ported from libmpcodecs
1067 - libgme support
1068 - psnr filter
1069
1070
1071 version 1.2:
1072
1073 - VDPAU hardware acceleration through normal hwaccel
1074 - SRTP support
1075 - Error diffusion dither in Swscale
1076 - Chained Ogg support
1077 - Theora Midstream reconfiguration support
1078 - EVRC decoder
1079 - audio fade filter
1080 - filtering audio with unknown channel layout
1081 - allpass, bass, bandpass, bandreject, biquad, equalizer, highpass, lowpass
1082   and treble audio filter
1083 - improved showspectrum filter, with multichannel support and sox-like colors
1084 - histogram filter
1085 - tee muxer
1086 - il filter ported from libmpcodecs
1087 - support ID3v2 tags in ASF files
1088 - encrypted TTA stream decoding support
1089 - RF64 support in WAV muxer
1090 - noise filter ported from libmpcodecs
1091 - Subtitles character encoding conversion
1092 - blend filter
1093 - stereo3d filter ported from libmpcodecs
1094
1095
1096 version 1.1:
1097
1098 - stream disposition information printing in ffprobe
1099 - filter for loudness analysis following EBU R128
1100 - Opus encoder using libopus
1101 - ffprobe -select_streams option
1102 - Pinnacle TARGA CineWave YUV16 decoder
1103 - TAK demuxer, decoder and parser
1104 - DTS-HD demuxer
1105 - remove -same_quant, it hasn't worked for years
1106 - FFM2 support
1107 - X-Face image encoder and decoder
1108 - 24-bit FLAC encoding
1109 - multi-channel ALAC encoding up to 7.1
1110 - metadata (INFO tag) support in WAV muxer
1111 - subtitles raw text decoder
1112 - support for building DLLs using MSVC
1113 - LVF demuxer
1114 - ffescape tool
1115 - metadata (info chunk) support in CAF muxer
1116 - field filter ported from libmpcodecs
1117 - AVR demuxer
1118 - geq filter ported from libmpcodecs
1119 - remove ffserver daemon mode
1120 - AST muxer/demuxer
1121 - new expansion syntax for drawtext
1122 - BRender PIX image decoder
1123 - ffprobe -show_entries option
1124 - ffprobe -sections option
1125 - ADPCM IMA Dialogic decoder
1126 - BRSTM demuxer
1127 - animated GIF decoder and demuxer
1128 - PVF demuxer
1129 - subtitles filter
1130 - IRCAM muxer/demuxer
1131 - Paris Audio File demuxer
1132 - Virtual concatenation demuxer
1133 - VobSub demuxer
1134 - JSON captions for TED talks decoding support
1135 - SOX Resampler support in libswresample
1136 - aselect filter
1137 - SGI RLE 8-bit / Silicon Graphics RLE 8-bit video decoder
1138 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
1139 - Silicon Graphics Movie demuxer
1140 - apad filter
1141 - Resolution & pixel format change support with multithreading for H.264
1142 - documentation split into per-component manuals
1143 - pp (postproc) filter ported from MPlayer
1144 - NIST Sphere demuxer
1145 - MPL2, VPlayer, MPlayer, AQTitle, PJS and SubViewer v1 subtitles demuxers and decoders
1146 - Sony Wave64 muxer
1147 - adobe and limelight publisher authentication in RTMP
1148 - data: URI scheme
1149 - support building on the Plan 9 operating system
1150 - kerndeint filter ported from MPlayer
1151 - histeq filter ported from VirtualDub
1152 - Megalux Frame demuxer
1153 - 012v decoder
1154 - Improved AVC Intra decoding support
1155
1156
1157 version 1.0:
1158
1159 - INI and flat output in ffprobe
1160 - Scene detection in libavfilter
1161 - Indeo Audio decoder
1162 - channelsplit audio filter
1163 - setnsamples audio filter
1164 - atempo filter
1165 - ffprobe -show_data option
1166 - RTMPT protocol support
1167 - iLBC encoding/decoding via libilbc
1168 - Microsoft Screen 1 decoder
1169 - join audio filter
1170 - audio channel mapping filter
1171 - Microsoft ATC Screen decoder
1172 - RTSP listen mode
1173 - TechSmith Screen Codec 2 decoder
1174 - AAC encoding via libfdk-aac
1175 - Microsoft Expression Encoder Screen decoder
1176 - RTMPS protocol support
1177 - RTMPTS protocol support
1178 - RTMPE protocol support
1179 - RTMPTE protocol support
1180 - showwaves and showspectrum filter
1181 - LucasArts SMUSH SANM playback support
1182 - LucasArts SMUSH VIMA audio decoder (ADPCM)
1183 - LucasArts SMUSH demuxer
1184 - SAMI, RealText and SubViewer demuxers and decoders
1185 - Heart Of Darkness PAF playback support
1186 - iec61883 device
1187 - asettb filter
1188 - new option: -progress
1189 - 3GPP Timed Text encoder/decoder
1190 - GeoTIFF decoder support
1191 - ffmpeg -(no)stdin option
1192 - Opus decoder using libopus
1193 - caca output device using libcaca
1194 - alphaextract and alphamerge filters
1195 - concat filter
1196 - flite filter
1197 - Canopus Lossless Codec decoder
1198 - bitmap subtitles in filters (experimental and temporary)
1199 - MP2 encoding via TwoLAME
1200 - bmp parser
1201 - smptebars source
1202 - asetpts filter
1203 - hue filter
1204 - ICO muxer
1205 - SubRip encoder and decoder without embedded timing
1206 - edge detection filter
1207 - framestep filter
1208 - ffmpeg -shortest option is now per-output file
1209   -pass and -passlogfile are now per-output stream
1210 - volume measurement filter
1211 - Ut Video encoder
1212 - Microsoft Screen 2 decoder
1213 - smartblur filter ported from MPlayer
1214 - CPiA decoder
1215 - decimate filter ported from MPlayer
1216 - RTP depacketization of JPEG
1217 - Smooth Streaming live segmenter muxer
1218 - F4V muxer
1219 - sendcmd and asendcmd filters
1220 - WebVTT demuxer and decoder (simple tags supported)
1221 - RTP packetization of JPEG
1222 - faststart option in the MOV/MP4 muxer
1223 - support for building with MSVC
1224
1225
1226 version 0.11:
1227
1228 - Fixes: CVE-2012-2772, CVE-2012-2774, CVE-2012-2775, CVE-2012-2776, CVE-2012-2777,
1229          CVE-2012-2779, CVE-2012-2782, CVE-2012-2783, CVE-2012-2784, CVE-2012-2785,
1230          CVE-2012-2786, CVE-2012-2787, CVE-2012-2788, CVE-2012-2789, CVE-2012-2790,
1231          CVE-2012-2791, CVE-2012-2792, CVE-2012-2793, CVE-2012-2794, CVE-2012-2795,
1232          CVE-2012-2796, CVE-2012-2797, CVE-2012-2798, CVE-2012-2799, CVE-2012-2800,
1233          CVE-2012-2801, CVE-2012-2802, CVE-2012-2803, CVE-2012-2804,
1234 - v408 Quicktime and Microsoft AYUV Uncompressed 4:4:4:4 encoder and decoder
1235 - setfield filter
1236 - CDXL demuxer and decoder
1237 - Apple ProRes encoder
1238 - ffprobe -count_packets and -count_frames options
1239 - Sun Rasterfile Encoder
1240 - ID3v2 attached pictures reading and writing
1241 - WMA Lossless decoder
1242 - bluray protocol
1243 - blackdetect filter
1244 - libutvideo encoder wrapper (--enable-libutvideo)
1245 - swapuv filter
1246 - bbox filter
1247 - XBM encoder and decoder
1248 - RealAudio Lossless decoder
1249 - ZeroCodec decoder
1250 - tile video filter
1251 - Metal Gear Solid: The Twin Snakes demuxer
1252 - OpenEXR image decoder
1253 - removelogo filter
1254 - drop support for ffmpeg without libavfilter
1255 - drawtext video filter: fontconfig support
1256 - ffmpeg -benchmark_all option
1257 - super2xsai filter ported from libmpcodecs
1258 - add libavresample audio conversion library for compatibility
1259 - MicroDVD decoder
1260 - Avid Meridien (AVUI) encoder and decoder
1261 - accept + prefix to -pix_fmt option to disable automatic conversions.
1262 - complete audio filtering in libavfilter and ffmpeg
1263 - add fps filter
1264 - vorbis parser
1265 - png parser
1266 - audio mix filter
1267 - ffv1: support (draft) version 1.3
1268
1269
1270 version 0.10:
1271
1272 - Fixes: CVE-2011-3929, CVE-2011-3934, CVE-2011-3935, CVE-2011-3936,
1273          CVE-2011-3937, CVE-2011-3940, CVE-2011-3941, CVE-2011-3944,
1274          CVE-2011-3945, CVE-2011-3946, CVE-2011-3947, CVE-2011-3949,
1275          CVE-2011-3950, CVE-2011-3951, CVE-2011-3952
1276 - v410 Quicktime Uncompressed 4:4:4 10-bit encoder and decoder
1277 - SBaGen (SBG) binaural beats script demuxer
1278 - OpenMG Audio muxer
1279 - Timecode extraction in DV and MOV
1280 - thumbnail video filter
1281 - XML output in ffprobe
1282 - asplit audio filter
1283 - tinterlace video filter
1284 - astreamsync audio filter
1285 - amerge audio filter
1286 - ISMV (Smooth Streaming) muxer
1287 - GSM audio parser
1288 - SMJPEG muxer
1289 - XWD encoder and decoder
1290 - Automatic thread count based on detection number of (available) CPU cores
1291 - y41p Brooktree Uncompressed 4:1:1 12-bit encoder and decoder
1292 - ffprobe -show_error option
1293 - Avid 1:1 10-bit RGB Packer codec
1294 - v308 Quicktime Uncompressed 4:4:4 encoder and decoder
1295 - yuv4 libquicktime packed 4:2:0 encoder and decoder
1296 - ffprobe -show_frames option
1297 - silencedetect audio filter
1298 - ffprobe -show_program_version, -show_library_versions, -show_versions options
1299 - rv34: frame-level multi-threading
1300 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
1301 - Improved PGS subtitle decoder
1302 - dumpgraph option to lavfi device
1303 - r210 and r10k encoders
1304 - ffwavesynth decoder
1305 - aviocat tool
1306 - ffeval tool
1307 - support encoding and decoding 4-channel SGI images
1308
1309
1310 version 0.9:
1311
1312 - openal input device added
1313 - boxblur filter added
1314 - BWF muxer
1315 - Flash Screen Video 2 decoder
1316 - lavfi input device added
1317 - added avconv, which is almost the same for now, except
1318 for a few incompatible changes in the options, which will hopefully make them
1319 easier to use. The changes are:
1320     * The options placement is now strictly enforced! While in theory the
1321       options for ffmpeg should be given in [input options] -i INPUT [output
1322       options] OUTPUT order, in practice it was possible to give output options
1323       before the -i and it mostly worked. Except when it didn't - the behavior was
1324       a bit inconsistent. In avconv, it is not possible to mix input and output
1325       options. All non-global options are reset after an input or output filename.
1326     * All per-file options are now truly per-file - they apply only to the next
1327       input or output file and specifying different values for different files
1328       will now work properly (notably -ss and -t options).
1329     * All per-stream options are now truly per-stream - it is possible to
1330       specify which stream(s) should a given option apply to. See the Stream
1331       specifiers section in the avconv manual for details.
1332     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
1333       sense that they're specified after the output filename instead of before,
1334       like all other options. In avconv this irregularity is removed, all options
1335       apply to the next input or output file.
1336     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
1337       irregular and highly confusing, they were also redundant. In avconv the -map
1338       option will create new streams in the output file and map input streams to
1339       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
1340       each stream in the first input file.
1341     * The -map option now has slightly different and more powerful syntax:
1342         + Colons (':') are used to separate file index/stream type/stream index
1343           instead of dots. Comma (',') is used to separate the sync stream instead
1344           of colon.. This is done for consistency with other options.
1345         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
1346           output stream from the third input audio stream.
1347         + Omitting the stream index now maps all the streams of the given type,
1348           not just the first. E.g. -map 0:s creates output streams for all the
1349           subtitle streams in the first input file.
1350         + Since -map can now match multiple streams, negative mappings were
1351           introduced. Negative mappings disable some streams from an already
1352           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
1353           all the stream in the first input file, except for the second audio
1354           stream'.
1355     * There is a new option -c (or -codec) for choosing the decoder/encoder to
1356       use, which makes it possible to precisely specify target stream(s) consistently with
1357       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
1358       libvorbis sets the codec for the first audio stream and -c copy copies all
1359       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
1360       aliases to -c:v/a/s
1361     * It is now possible to precisely specify which stream should an AVOption
1362       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
1363       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
1364       syntax is deprecated and will stop working soon.
1365     * -map_chapters now takes only an input file index and applies to the next
1366       output file. This is consistent with how all the other options work.
1367     * -map_metadata now takes only an input metadata specifier and applies to
1368       the next output file. Output metadata specifier is now part of the option
1369       name, similarly to the AVOptions/map/codec feature above.
1370     * -metadata can now be used to set metadata on streams and chapters, e.g.
1371       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
1372       This made -vlang/-alang/-slang options redundant, so they were removed.
1373     * -qscale option now uses stream specifiers and applies to all streams, not
1374       just video. I.e. plain -qscale number would now apply to all streams. To get
1375       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
1376       and -aq is now an alias for -q:a.
1377     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
1378       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
1379     * -itsscale option now uses stream specifiers, so its argument is only the
1380       scale parameter.
1381     * -intra option was removed, use -g 0 for the same effect.
1382     * -psnr option was removed, use -flags +psnr for the same effect.
1383     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
1384     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
1385     * -vtag/-atag/-stag options are now aliases to the new -tag option.
1386 - XMV demuxer
1387 - LOAS demuxer
1388 - ashowinfo filter added
1389 - Windows Media Image decoder
1390 - amovie source added
1391 - LATM muxer/demuxer
1392 - Speex encoder via libspeex
1393 - JSON output in ffprobe
1394 - WTV muxer
1395 - Optional C++ Support (needed for libstagefright)
1396 - H.264 Decoding on Android via Stagefright
1397 - Prores decoder
1398 - BIN/XBIN/ADF/IDF text file decoder
1399 - aconvert audio filter added
1400 - audio support to lavfi input device added
1401 - libcdio-paranoia input device for audio CD grabbing
1402 - Apple ProRes decoder
1403 - CELT in Ogg demuxing
1404 - G.723.1 demuxer and decoder
1405 - libmodplug support (--enable-libmodplug)
1406 - VC-1 interlaced decoding
1407 - libutvideo wrapper (--enable-libutvideo)
1408 - aevalsrc audio source added
1409 - Ut Video decoder
1410 - Speex encoding via libspeex
1411 - 4:2:2 H.264 decoding support
1412 - 4:2:2 and 4:4:4 H.264 encoding with libx264
1413 - Pulseaudio input device
1414 - Prores encoder
1415 - Video Decoder Acceleration (VDA) HWAccel module.
1416 - replacement Indeo 3 decoder
1417 - new ffmpeg option: -map_channel
1418 - volume audio filter added
1419 - earwax audio filter added
1420 - libv4l2 support (--enable-libv4l2)
1421 - TLS/SSL and HTTPS protocol support
1422 - AVOptions API rewritten and documented
1423 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
1424   AVCodecContext deprecated. Codec private options should be used instead.
1425 - Properly working defaults in libx264 wrapper, support for native presets.
1426 - Encrypted OMA files support
1427 - Discworld II BMV decoding support
1428 - VBLE Decoder
1429 - OS X Video Decoder Acceleration (VDA) support
1430 - compact and csv output in ffprobe
1431 - pan audio filter
1432 - IFF Amiga Continuous Bitmap (ACBM) decoder
1433 - ass filter
1434 - CRI ADX audio format muxer and demuxer
1435 - Playstation Portable PMP format demuxer
1436 - Microsoft Windows ICO demuxer
1437 - life source
1438 - PCM format support in OMA demuxer
1439 - CLJR encoder
1440 - new option: -report
1441 - Dxtory capture format decoder
1442 - cellauto source
1443 - Simple segmenting muxer
1444 - Indeo 4 decoder
1445 - SMJPEG demuxer
1446
1447
1448 version 0.8:
1449
1450 - many many things we forgot because we rather write code than changelogs
1451 - WebM support in Matroska de/muxer
1452 - low overhead Ogg muxing
1453 - MMS-TCP support
1454 - VP8 de/encoding via libvpx
1455 - Demuxer for On2's IVF format
1456 - Pictor/PC Paint decoder
1457 - HE-AAC v2 decoder
1458 - HE-AAC v2 encoding with libaacplus
1459 - libfaad2 wrapper removed
1460 - DTS-ES extension (XCh) decoding support
1461 - native VP8 decoder
1462 - RTSP tunneling over HTTP
1463 - RTP depacketization of SVQ3
1464 - -strict inofficial replaced by -strict unofficial
1465 - ffplay -exitonkeydown and -exitonmousedown options added
1466 - native GSM / GSM MS decoder
1467 - RTP depacketization of QDM2
1468 - ANSI/ASCII art playback system
1469 - Lego Mindstorms RSO de/muxer
1470 - libavcore added (and subsequently removed)
1471 - SubRip subtitle file muxer and demuxer
1472 - Chinese AVS encoding via libxavs
1473 - ffprobe -show_packets option added
1474 - RTP packetization of Theora and Vorbis
1475 - RTP depacketization of MP4A-LATM
1476 - RTP packetization and depacketization of VP8
1477 - hflip filter
1478 - Apple HTTP Live Streaming demuxer
1479 - a64 codec
1480 - MMS-HTTP support
1481 - G.722 ADPCM audio encoder/decoder
1482 - R10k video decoder
1483 - ocv_smooth filter
1484 - frei0r wrapper filter
1485 - change crop filter syntax to width:height:x:y
1486 - make the crop filter accept parametric expressions
1487 - make ffprobe accept AVFormatContext options
1488 - yadif filter
1489 - blackframe filter
1490 - Demuxer for Leitch/Harris' VR native stream format (LXF)
1491 - RTP depacketization of the X-QT QuickTime format
1492 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
1493 - cropdetect filter
1494 - ffmpeg -crop* options removed
1495 - transpose filter added
1496 - ffmpeg -force_key_frames option added
1497 - demuxer for receiving raw rtp:// URLs without an SDP description
1498 - single stream LATM/LOAS decoder
1499 - setpts filter added
1500 - Win64 support for optimized x86 assembly functions
1501 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
1502 - ASS subtitle encoder and decoder
1503 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
1504 - overlay filter added
1505 - rename aspect filter to setdar, and pixelaspect to setsar
1506 - IEC 61937 demuxer
1507 - Mobotix .mxg demuxer
1508 - frei0r source added
1509 - hqdn3d filter added
1510 - RTP depacketization of QCELP
1511 - FLAC parser added
1512 - gradfun filter added
1513 - AMR-WB decoder
1514 - replace the ocv_smooth filter with a more generic ocv filter
1515 - Windows Televison (WTV) demuxer
1516 - FFmpeg metadata format muxer and demuxer
1517 - SubRip (srt) subtitle encoder and decoder
1518 - floating-point AC-3 encoder added
1519 - Lagarith decoder
1520 - ffmpeg -copytb option added
1521 - IVF muxer added
1522 - Wing Commander IV movies decoder added
1523 - movie source added
1524 - Bink version 'b' audio and video decoder
1525 - Bitmap Brothers JV playback system
1526 - Apple HTTP Live Streaming protocol handler
1527 - sndio support for playback and record
1528 - Linux framebuffer input device added
1529 - Chronomaster DFA decoder
1530 - DPX image encoder
1531 - MicroDVD subtitle file muxer and demuxer
1532 - Playstation Portable PMP format demuxer
1533 - fieldorder video filter added
1534 - AAC encoding via libvo-aacenc
1535 - AMR-WB encoding via libvo-amrwbenc
1536 - xWMA demuxer
1537 - Mobotix MxPEG decoder
1538 - VP8 frame-multithreading
1539 - NEON optimizations for VP8
1540 - Lots of deprecated API cruft removed
1541 - fft and imdct optimizations for AVX (Sandy Bridge) processors
1542 - showinfo filter added
1543 - SMPTE 302M AES3 audio decoder
1544 - Apple Core Audio Format muxer
1545 - 9bit and 10bit per sample support in the H.264 decoder
1546 - 9bit and 10bit FFV1 encoding / decoding
1547 - split filter added
1548 - select filter added
1549 - sdl output device added
1550 - libmpcodecs video filter support (3 times as many filters than before)
1551 - mpeg2 aspect ratio dection fixed
1552 - libxvid aspect pickiness fixed
1553 - Frame multithreaded decoding
1554 - E-AC-3 audio encoder
1555 - ac3enc: add channel coupling support
1556 - floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders.
1557 - H264/MPEG frame-level multi-threading
1558 - All av_metadata_* functions renamed to av_dict_* and moved to libavutil
1559 - 4:4:4 H.264 decoding support
1560 - 10-bit H.264 optimizations for x86
1561 - lut, lutrgb, and lutyuv filters added
1562 - buffersink libavfilter sink added
1563 - Bump libswscale for recently reported ABI break
1564 - New J2K encoder (via OpenJPEG)
1565
1566
1567 version 0.7:
1568
1569 - all the changes for 0.8, but keeping API/ABI compatibility with the 0.6 release
1570
1571
1572 version 0.6:
1573
1574 - PB-frame decoding for H.263
1575 - deprecated vhook subsystem removed
1576 - deprecated old scaler removed
1577 - VQF demuxer
1578 - Alpha channel scaler
1579 - PCX encoder
1580 - RTP packetization of H.263
1581 - RTP packetization of AMR
1582 - RTP depacketization of Vorbis
1583 - CorePNG decoding support
1584 - Cook multichannel decoding support
1585 - introduced avlanguage helpers in libavformat
1586 - 8088flex TMV demuxer and decoder
1587 - per-stream language-tags extraction in asfdec
1588 - V210 decoder and encoder
1589 - remaining GPL parts in AC-3 decoder converted to LGPL
1590 - QCP demuxer
1591 - SoX native format muxer and demuxer
1592 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
1593 - DPX image decoder
1594 - Electronic Arts Madcow decoder
1595 - DivX (XSUB) subtitle encoder
1596 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
1597 - experimental AAC encoder
1598 - RTP depacketization of ASF and RTSP from WMS servers
1599 - RTMP support in libavformat
1600 - noX handling for OPT_BOOL X options
1601 - Wave64 demuxer
1602 - IEC-61937 compatible Muxer
1603 - TwinVQ decoder
1604 - Bluray (PGS) subtitle decoder
1605 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
1606 - WMA Pro decoder
1607 - Core Audio Format demuxer
1608 - ATRAC1 decoder
1609 - MD STUDIO audio demuxer
1610 - RF64 support in WAV demuxer
1611 - MPEG-4 Audio Lossless Coding (ALS) decoder
1612 - -formats option split into -formats, -codecs, -bsfs, and -protocols
1613 - IV8 demuxer
1614 - CDG demuxer and decoder
1615 - R210 decoder
1616 - Auravision Aura 1 and 2 decoders
1617 - Deluxe Paint Animation playback system
1618 - SIPR decoder
1619 - Adobe Filmstrip muxer and demuxer
1620 - RTP depacketization of H.263
1621 - Bink demuxer and audio/video decoders
1622 - enable symbol versioning by default for linkers that support it
1623 - IFF PBM/ILBM bitmap decoder
1624 - concat protocol
1625 - Indeo 5 decoder
1626 - RTP depacketization of AMR
1627 - WMA Voice decoder
1628 - ffprobe tool
1629 - AMR-NB decoder
1630 - RTSP muxer
1631 - HE-AAC v1 decoder
1632 - Kega Game Video (KGV1) decoder
1633 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
1634 - RTP depacketization of Theora
1635 - HTTP Digest authentication
1636 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
1637 - Psygnosis YOP demuxer and video decoder
1638 - spectral extension support in the E-AC-3 decoder
1639 - unsharp video filter
1640 - RTP hinting in the mov/3gp/mp4 muxer
1641 - Dirac in Ogg demuxing
1642 - seek to keyframes in Ogg
1643 - 4:2:2 and 4:4:4 Theora decoding
1644 - 35% faster VP3/Theora decoding
1645 - faster AAC decoding
1646 - faster H.264 decoding
1647 - RealAudio 1.0 (14.4K) encoder
1648
1649
1650 version 0.5:
1651
1652 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
1653 - TechSmith Camtasia (TSCC) video decoder
1654 - IBM Ultimotion (ULTI) video decoder
1655 - Sierra Online audio file demuxer and decoder
1656 - Apple QuickDraw (qdrw) video decoder
1657 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
1658 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
1659 - Miro VideoXL (VIXL) video decoder
1660 - H.261 video encoder
1661 - QPEG video decoder
1662 - Nullsoft Video (NSV) file demuxer
1663 - Shorten audio decoder
1664 - LOCO video decoder
1665 - Apple Lossless Audio Codec (ALAC) decoder
1666 - Winnov WNV1 video decoder
1667 - Autodesk Animator Studio Codec (AASC) decoder
1668 - Indeo 2 video decoder
1669 - Fraps FPS1 video decoder
1670 - Snow video encoder/decoder
1671 - Sonic audio encoder/decoder
1672 - Vorbis audio decoder
1673 - Macromedia ADPCM decoder
1674 - Duck TrueMotion 2 video decoder
1675 - support for decoding FLX and DTA extensions in FLIC files
1676 - H.264 custom quantization matrices support
1677 - ffserver fixed, it should now be usable again
1678 - QDM2 audio decoder
1679 - Real Cooker audio decoder
1680 - TrueSpeech audio decoder
1681 - WMA2 audio decoder fixed, now all files should play correctly
1682 - RealAudio 14.4 and 28.8 decoders fixed
1683 - JPEG-LS decoder
1684 - build system improvements
1685 - tabs and trailing whitespace removed from the codebase
1686 - CamStudio video decoder
1687 - AIFF/AIFF-C audio format, encoding and decoding
1688 - ADTS AAC file reading and writing
1689 - Creative VOC file reading and writing
1690 - American Laser Games multimedia (*.mm) playback system
1691 - Zip Motion Blocks Video decoder
1692 - improved Theora/VP3 decoder
1693 - True Audio (TTA) decoder
1694 - AVS demuxer and video decoder
1695 - JPEG-LS encoder
1696 - Smacker demuxer and decoder
1697 - NuppelVideo/MythTV demuxer and RTjpeg decoder
1698 - KMVC decoder
1699 - MPEG-2 intra VLC support
1700 - MPEG-2 4:2:2 encoder
1701 - Flash Screen Video decoder
1702 - GXF demuxer
1703 - Chinese AVS decoder
1704 - GXF muxer
1705 - MXF demuxer
1706 - VC-1/WMV3/WMV9 video decoder
1707 - MacIntel support
1708 - AviSynth support
1709 - VMware video decoder
1710 - VP5 video decoder
1711 - VP6 video decoder
1712 - WavPack lossless audio decoder
1713 - Targa (.TGA) picture decoder
1714 - Vorbis audio encoder
1715 - Delphine Software .cin demuxer/audio and video decoder
1716 - Tiertex .seq demuxer/video decoder
1717 - MTV demuxer
1718 - TIFF picture encoder and decoder
1719 - GIF picture decoder
1720 - Intel Music Coder decoder
1721 - Zip Motion Blocks Video encoder
1722 - Musepack decoder
1723 - Flash Screen Video encoder
1724 - Theora encoding via libtheora
1725 - BMP encoder
1726 - WMA encoder
1727 - GSM-MS encoder and decoder
1728 - DCA decoder
1729 - DXA demuxer and decoder
1730 - DNxHD decoder
1731 - Gamecube movie (.THP) playback system
1732 - Blackfin optimizations
1733 - Interplay C93 demuxer and video decoder
1734 - Bethsoft VID demuxer and video decoder
1735 - CRYO APC demuxer
1736 - ATRAC3 decoder
1737 - V.Flash PTX decoder
1738 - RoQ muxer, RoQ audio encoder
1739 - Renderware TXD demuxer and decoder
1740 - extern C declarations for C++ removed from headers
1741 - sws_flags command line option
1742 - codebook generator
1743 - RoQ video encoder
1744 - QTRLE encoder
1745 - OS/2 support removed and restored again
1746 - AC-3 decoder
1747 - NUT muxer
1748 - additional SPARC (VIS) optimizations
1749 - Matroska muxer
1750 - slice-based parallel H.264 decoding
1751 - Monkey's Audio demuxer and decoder
1752 - AMV audio and video decoder
1753 - DNxHD encoder
1754 - H.264 PAFF decoding
1755 - Nellymoser ASAO decoder
1756 - Beam Software SIFF demuxer and decoder
1757 - libvorbis Vorbis decoding removed in favor of native decoder
1758 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
1759 - Ogg (Theora, Vorbis and FLAC) muxer
1760 - The "device" muxers and demuxers are now in a new libavdevice library
1761 - PC Paintbrush PCX decoder
1762 - Sun Rasterfile decoder
1763 - TechnoTrend PVA demuxer
1764 - Linux Media Labs MPEG-4 (LMLM4) demuxer
1765 - AVM2 (Flash 9) SWF muxer
1766 - QT variant of IMA ADPCM encoder
1767 - VFW grabber
1768 - iPod/iPhone compatible mp4 muxer
1769 - Mimic decoder
1770 - MSN TCP Webcam stream demuxer
1771 - RL2 demuxer / decoder
1772 - IFF demuxer
1773 - 8SVX audio decoder
1774 - non-recursive Makefiles
1775 - BFI demuxer
1776 - MAXIS EA XA (.xa) demuxer / decoder
1777 - BFI video decoder
1778 - OMA demuxer
1779 - MLP/TrueHD decoder
1780 - Electronic Arts CMV decoder
1781 - Motion Pixels Video decoder
1782 - Motion Pixels MVI demuxer
1783 - removed animated GIF decoder/demuxer
1784 - D-Cinema audio muxer
1785 - Electronic Arts TGV decoder
1786 - Apple Lossless Audio Codec (ALAC) encoder
1787 - AAC decoder
1788 - floating point PCM encoder/decoder
1789 - MXF muxer
1790 - DV100 AKA DVCPRO HD decoder and demuxer
1791 - E-AC-3 support added to AC-3 decoder
1792 - Nellymoser ASAO encoder
1793 - ASS and SSA demuxer and muxer
1794 - liba52 wrapper removed
1795 - SVQ3 watermark decoding support
1796 - Speex decoding via libspeex
1797 - Electronic Arts TGQ decoder
1798 - RV40 decoder
1799 - QCELP / PureVoice decoder
1800 - RV30 decoder
1801 - hybrid WavPack support
1802 - R3D REDCODE demuxer
1803 - ALSA support for playback and record
1804 - Electronic Arts TQI decoder
1805 - OpenJPEG based JPEG 2000 decoder
1806 - NC (NC4600) camera file demuxer
1807 - Gopher client support
1808 - MXF D-10 muxer
1809 - generic metadata API
1810 - flash ScreenVideo2 encoder
1811
1812
1813 version 0.4.9-pre1:
1814
1815 - DV encoder, DV muxer
1816 - Microsoft RLE video decoder
1817 - Microsoft Video-1 decoder
1818 - Apple Animation (RLE) decoder
1819 - Apple Graphics (SMC) decoder
1820 - Apple Video (RPZA) decoder
1821 - Cinepak decoder
1822 - Sega FILM (CPK) file demuxer
1823 - Westwood multimedia support (VQA & AUD files)
1824 - Id Quake II CIN playback support
1825 - 8BPS video decoder
1826 - FLIC playback support
1827 - RealVideo 2.0 (RV20) decoder
1828 - Duck TrueMotion v1 (DUCK) video decoder
1829 - Sierra VMD demuxer and video decoder
1830 - MSZH and ZLIB decoder support
1831 - SVQ1 video encoder
1832 - AMR-WB support
1833 - PPC optimizations
1834 - rate distortion optimal cbp support
1835 - rate distorted optimal ac prediction for MPEG-4
1836 - rate distorted optimal lambda->qp support
1837 - AAC encoding with libfaac
1838 - Sunplus JPEG codec (SP5X) support
1839 - use Lagrange multipler instead of QP for ratecontrol
1840 - Theora/VP3 decoding support
1841 - XA and ADX ADPCM codecs
1842 - export MPEG-2 active display area / pan scan
1843 - Add support for configuring with IBM XLC
1844 - floating point AAN DCT
1845 - initial support for zygo video (not complete)
1846 - RGB ffv1 support
1847 - new audio/video parser API
1848 - av_log() system
1849 - av_read_frame() and av_seek_frame() support
1850 - missing last frame fixes
1851 - seek by mouse in ffplay
1852 - noise reduction of DCT coefficients
1853 - H.263 OBMC & 4MV support
1854 - H.263 alternative inter vlc support
1855 - H.263 loop filter
1856 - H.263 slice structured mode
1857 - interlaced DCT support for MPEG-2 encoding
1858 - stuffing to stay above min_bitrate
1859 - MB type & QP visualization
1860 - frame stepping for ffplay
1861 - interlaced motion estimation
1862 - alternate scantable support
1863 - SVCD scan offset support
1864 - closed GOP support
1865 - SSE2 FDCT
1866 - quantizer noise shaping
1867 - G.726 ADPCM audio codec
1868 - MS ADPCM encoding
1869 - multithreaded/SMP motion estimation
1870 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
1871 - multithreaded/SMP decoding for MPEG-2
1872 - FLAC decoder
1873 - Metrowerks CodeWarrior suppport
1874 - H.263+ custom pcf support
1875 - nicer output for 'ffmpeg -formats'
1876 - Matroska demuxer
1877 - SGI image format, encoding and decoding
1878 - H.264 loop filter support
1879 - H.264 CABAC support
1880 - nicer looking arrows for the motion vector visualization
1881 - improved VCD support
1882 - audio timestamp drift compensation
1883 - MPEG-2 YUV 422/444 support
1884 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
1885 - better image scaling
1886 - H.261 support
1887 - correctly interleave packets during encoding
1888 - VIS optimized motion compensation
1889 - intra_dc_precision>0 encoding support
1890 - support reuse of motion vectors/MB types/field select values of the source video
1891 - more accurate deblock filter
1892 - padding support
1893 - many optimizations and bugfixes
1894 - FunCom ISS audio file demuxer and according ADPCM decoding
1895
1896
1897 version 0.4.8:
1898
1899 - MPEG-2 video encoding (Michael)
1900 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
1901 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
1902   and Mario Brito)
1903 - Xan DPCM audio decoder (Mario Brito)
1904 - Interplay MVE playback subsystem (Mike Melanson)
1905 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
1906
1907
1908 version 0.4.7:
1909
1910 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
1911   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
1912 - current version now also compiles with older GCC (Fabrice)
1913 - 4X multimedia playback system including 4xm file demuxer (Mike
1914   Melanson), and 4X video and audio codecs (Michael)
1915 - Creative YUV (CYUV) decoder (Mike Melanson)
1916 - FFV1 codec (our very simple lossless intra only codec, compresses much better
1917   than HuffYUV) (Michael)
1918 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
1919 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
1920   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
1921 - ffplay has been replaced with a newer version which uses SDL (optionally)
1922   for multiplatform support (Fabrice)
1923 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
1924   by anonymous
1925 - AMR format has been added (Johannes Carlsson)
1926 - 3GP support has been added (Johannes Carlsson)
1927 - VP3 codec has been added (Mike Melanson)
1928 - more MPEG-1/2 fixes
1929 - better multiplatform support, MS Visual Studio fixes (various)
1930 - AltiVec optimizations (Magnus Damn and others)
1931 - SH4 processor support has been added (BERO)
1932 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
1933 - VOB streaming support (Brian Foley)
1934 - better MP3 autodetection (Andriy Rysin)
1935 - qpel encoding (Michael)
1936 - 4mv+b frames encoding finally fixed (Michael)
1937 - chroma ME (Michael)
1938 - 5 comparison functions for ME (Michael)
1939 - B-frame encoding speedup (Michael)
1940 - WMV2 codec (unfinished - Michael)
1941 - user specified diamond size for EPZS (Michael)
1942 - Playstation STR playback subsystem, still experimental (Mike and Michael)
1943 - ASV2 codec (Michael)
1944 - CLJR decoder (Alex)
1945
1946 .. And lots more new enhancements and fixes.
1947
1948
1949 version 0.4.6:
1950
1951 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
1952   from scratch
1953 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
1954 - fix quantization bug in AC3 encoder
1955 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
1956 - added prototype ffplay program
1957 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
1958 - bug fix on MCBPC tables of H.263 (Juanjo)
1959 - bug fix on DC coefficients of H.263 (Juanjo)
1960 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
1961 - now we can decode H.263 streams found in QuickTime files (Juanjo)
1962 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
1963 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
1964 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
1965 - now H.263 picture size is returned on the first decoded frame (Juanjo)
1966 - added first regression tests
1967 - added MPEG-2 TS demuxer
1968 - new demux API for libav
1969 - more accurate and faster IDCT (Michael)
1970 - faster and entropy-controlled motion search (Michael)
1971 - two pass video encoding (Michael)
1972 - new video rate control (Michael)
1973 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
1974 - great performance improvement of video encoders and decoders (Michael)
1975 - new and faster bit readers and vlc parsers (Michael)
1976 - high quality encoding mode: tries all macroblock/VLC types (Michael)
1977 - added DV video decoder
1978 - preliminary RTP/RTSP support in ffserver and libavformat
1979 - H.263+ AIC decoding/encoding support (Juanjo)
1980 - VCD MPEG-PS mode (Juanjo)
1981 - PSNR stuff (Juanjo)
1982 - simple stats output (Juanjo)
1983 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
1984
1985
1986 version 0.4.5:
1987
1988 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
1989 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
1990 - added configure system (actually a small shell script)
1991 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
1992   Michael Hipp (temporary solution - waiting for integer only
1993   decoder)
1994 - fixed VIDIOCSYNC interrupt
1995 - added Intel H.263 decoding support ('I263' AVI fourCC)
1996 - added Real Video 1.0 decoding (needs further testing)
1997 - simplified image formats again. Added PGM format (=grey
1998   pgm). Renamed old PGM to PGMYUV.
1999 - fixed msmpeg4 slice issues (tell me if you still find problems)
2000 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
2001 - added support for MPlayer interface
2002 - added macroblock skip optimization
2003 - added MJPEG decoder
2004 - added mmx/mmxext IDCT from libmpeg2
2005 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
2006   <celer at shell.scrypt.net>)
2007 - added pixel format conversion layer (e.g. for MJPEG or PPM)
2008 - added deinterlacing option
2009 - MPEG-1/2 fixes
2010 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
2011 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
2012 - Windows porting of file converter
2013 - added MJPEG raw format (input/output)
2014 - added JPEG image format support (input/output)
2015
2016
2017 version 0.4.4:
2018
2019 - fixed some std header definitions (Bjorn Lindgren
2020   <bjorn.e.lindgren at telia.com>).
2021 - added MPEG demuxer (MPEG-1 and 2 compatible).
2022 - added ASF demuxer
2023 - added prototype RM demuxer
2024 - added AC3 decoding (done with libac3 by Aaron Holtzman)
2025 - added decoding codec parameter guessing (.e.g. for MPEG, because the
2026   header does not include them)
2027 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
2028   play them (only tested video)
2029 - fixed H.263 white bug
2030 - fixed phase rounding in img resample filter
2031 - add MMX code for polyphase img resample filter
2032 - added CPU autodetection
2033 - added generic title/author/copyright/comment string handling (ASF and RM
2034   use them)
2035 - added SWF demux to extract MP3 track (not usable yet because no MP3
2036   decoder)
2037 - added fractional frame rate support
2038 - codecs are no longer searched by read_header() (should fix ffserver
2039   segfault)
2040
2041
2042 version 0.4.3:
2043
2044 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
2045 - fixed raw yuv output
2046 - added motion rounding support in MPEG-4
2047 - fixed motion bug rounding in MSMPEG4
2048 - added B-frame handling in video core
2049 - added full MPEG-1 decoding support
2050 - added partial (frame only) MPEG-2 support
2051 - changed the FOURCC code for H.263 to "U263" to be able to see the
2052   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
2053   this +codec ;) (JuanJo).
2054 - Halfpel motion estimation after MB type selection (JuanJo)
2055 - added pgm and .Y.U.V output format
2056 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
2057   output.
2058 - added pgmpipe I/O format (original patch from Martin Aumueller
2059   <lists at reserv.at>, but changed completely since we use a format
2060   instead of a protocol)
2061
2062
2063 version 0.4.2:
2064
2065 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
2066   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
2067   missing. MSMPEG4 support is complete.
2068 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
2069   can decode ffmpeg MPEGs :-)).
2070 - added libavcodec API documentation (see apiexample.c).
2071 - fixed image polyphase bug (the bottom of some images could be
2072   greenish)
2073 - added support for non clipped motion vectors (decoding only)
2074   and image sizes non-multiple of 16
2075 - added support for AC prediction (decoding only)
2076 - added file overwrite confirmation (can be disabled with -y)
2077 - added custom size picture to H.263 using H.263+ (Juanjo)
2078
2079
2080 version 0.4.1:
2081
2082 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
2083   of AVI and ASF to DIV3.
2084 - added -me option to set motion estimation method
2085   (default=log). suppressed redundant -hq option.
2086 - added options -acodec and -vcodec to force a given codec (useful for
2087   AVI for example)
2088 - fixed -an option
2089 - improved dct_quantize speed
2090 - factorized some motion estimation code
2091
2092
2093 version 0.4.0:
2094
2095 - removing grab code from ffserver and moved it to ffmpeg. Added
2096   multistream support to ffmpeg.
2097 - added timeshifting support for live feeds (option ?date=xxx in the
2098   URL)
2099 - added high quality image resize code with polyphase filter (need
2100   mmx/see optimization). Enable multiple image size support in ffserver.
2101 - added multi live feed support in ffserver
2102 - suppressed master feature from ffserver (it should be done with an
2103   external program which opens the .ffm url and writes it to another
2104   ffserver)
2105 - added preliminary support for video stream parsing (WAV and AVI half
2106   done). Added proper support for audio/video file conversion in
2107   ffmpeg.
2108 - added preliminary support for video file sending from ffserver
2109 - redesigning I/O subsystem: now using URL based input and output
2110   (see avio.h)
2111 - added WAV format support
2112 - added "tty user interface" to ffmpeg to stop grabbing gracefully
2113 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
2114   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
2115 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
2116 - added new motion estimation algorithms, log and phods (Juanjo)
2117 - changed directories: libav for format handling, libavcodec for
2118   codecs
2119
2120
2121 version 0.3.4:
2122
2123 - added stereo in MPEG audio encoder
2124
2125
2126 version 0.3.3:
2127
2128 - added 'high quality' mode which use motion vectors. It can be used in
2129   real time at low resolution.
2130 - fixed rounding problems which caused quality problems at high
2131   bitrates and large GOP size
2132
2133
2134 version 0.3.2: small fixes
2135
2136 - ASF fixes
2137 - put_seek bug fix
2138
2139
2140 version 0.3.1: added avi/divx support
2141
2142 - added AVI support
2143 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
2144 - added sound for flash format (not tested)
2145
2146
2147 version 0.3: initial public release