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