avformat/concatdec: fix the h264 annexb extradata check
[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 2.8.11
5 - avcodec/h264_slice: Clear ref_counts on redundant slices
6 - lavf/mov.c: Avoid heap allocation wrap in mov_read_uuid
7 - lavf/mov.c: Avoid heap allocation wrap in mov_read_hdlr
8 - avcodec/pictordec: Fix logic error
9 - avcodec/movtextdec: Fix decode_styl() cleanup
10 - lavf/matroskadec: fix is_keyframe for early Blocks
11 - configure: bump year
12 - avcodec/pngdec: Check trns more completely
13 - avcodec/interplayvideo: Move parameter change check up
14 - avcodec/mjpegdec: Check for for the bitstream end in mjpeg_decode_scan_progressive_ac()
15 - avformat/flacdec: Check avio_read result when reading flac block header.
16 - avcodec/utils: correct align value for interplay
17 - avcodec/vp56: Check for the bitstream end, pass error codes on
18 - avcodec/mjpegdec: Check remaining bitstream in ljpeg_decode_yuv_scan()
19 - avcodec/pngdec: Fix off by 1 size in decode_zbuf()
20 - avformat/avidec: skip odml master index chunks in avi_sync
21 - avcodec/mjpegdec: Check for rgb before flipping
22 - avutil/random_seed: Reduce the time needed on systems with very low precision clock()
23 - avutil/random_seed: Improve get_generic_seed() with higher precision clock()
24 - avformat/utils: Print verbose error message if stream count exceeds max_streams
25 - avformat/options_table: Set the default maximum number of streams to 1000
26 - avutil: Add av_image_check_size2()
27 - avformat: Add max_streams option
28 - avcodec/ffv1enc: Allocate smaller packet if the worst case size cannot be allocated
29 - avcodec/mpeg4videodec: Fix undefined shifts in mpeg4_decode_sprite_trajectory()
30 - avformat/oggdec: Skip streams in duration correction that did not had their duration set.
31 - avcodec/ffv1enc: Fix size of first slice
32 - pgssubdec: reset rle_data_len/rle_remaining_len on allocation error
33
34 version 2.8.10
35 - avformat/http: Match chunksize checks to master..3.0
36 - Changelog: fix typos
37 - ffserver: Check chunk size
38 - Avoid using the term "file" and prefer "url" in some docs and comments
39 - avformat/rtmppkt: Check for packet size mismatches
40 - zmqsend: Initialize ret to 0
41 - configure: check for strtoull on msvc
42 - http: move chunk handling from http_read_stream() to http_buf_read().
43 - http: make length/offset-related variables unsigned.
44
45 version 2.8.9
46 - avcodec/flacdec: Fix undefined shift in decode_subframe()
47 - avcodec/get_bits: Fix get_sbits_long(0)
48 - avformat/ffmdec: Check media type for chunks
49 - avcodec/flacdec: Fix signed integer overflow in decode_subframe_fixed()
50 - avcodec/flacdsp_template: Fix undefined shift in flac_decorrelate_indep_c
51 - avformat/oggparsespeex: Check frames_per_packet and packet_size
52 - avformat/utils: Check start/end before computing duration in update_stream_timings()
53 - avcodec/flac_parser: Update nb_headers_buffered
54 - avformat/idroqdec: Check chunk_size for being too large
55 - filmstripdec: correctly check image dimensions
56 - mss2: only use error correction for matching block counts
57 - softfloat: decrease MIN_EXP to cover full float range
58 - libopusdec: default to stereo for invalid number of channels
59 - sbgdec: prevent NULL pointer access
60 - smacker: limit recursion depth of smacker_decode_bigtree
61 - mxfdec: fix NULL pointer dereference in mxf_read_packet_old
62 - libschroedingerdec: fix leaking of framewithpts
63 - libschroedingerdec: don't produce empty frames
64 - softfloat: handle -INT_MAX correctly
65 - pnmdec: make sure v is capped by maxval
66 - smvjpegdec: make sure cur_frame is not negative
67 - icodec: correctly check avio_read return value
68 - icodec: fix leaking pkt on error
69 - dvbsubdec: fix division by zero in compute_default_clut
70 - proresdec_lgpl: explicitly check coff[3] against slice_data_size
71 - escape124: reject codebook size 0
72 - mpegts: prevent division by zero
73 - matroskadec: fix NULL pointer dereference in webm_dash_manifest_read_header
74 - mpegaudio_parser: don't return AVERROR_PATCHWELCOME
75 - mxfdec: fix NULL pointer dereference
76 - diracdec: check return code of get_buffer_with_edge
77 - ppc: pixblockdsp: do unaligned block accesses correctly again
78 - mpeg12dec: unref discarded picture from extradata
79 - cavsdec: unref frame before referencing again
80 - avformat: prevent triggering request_probe assert in ff_read_packet
81 - avformat/mpeg: Adjust vid probe threshold to correct mis-detection
82 - avcodec/rv40: Test remaining space in loop of get_dimension()
83 - avcodec/ituh263dec: Avoid spending a long time in slice sync
84 - avcodec/movtextdec: Add error message for tsmb_size check
85 - avcodec/movtextdec: Fix tsmb_size check==0 check
86 - avcodec/movtextdec: Fix potential integer overflow
87 - avcodec/sunrast: Fix input buffer pointer check
88 - avcodec/tscc:  Check side data size before use
89 - avcodec/rawdec: Check side data size before use
90 - avcodec/msvideo1: Check side data size before use
91 - avcodec/qpeg:  Check side data size before use
92 - avcodec/qtrle:  Check side data size before use
93 - avcodec/msrle:  Check side data size before use
94 - avcodec/kmvc:  Check side data size before use
95 - avcodec/idcinvideo: Check side data size before use
96 - avcodec/cinepak: Check side data size before use
97 - avcodec/8bps: Check side data size before use
98 - avcodec/dvdsubdec: Fix off by 1 error
99 - avcodec/dvdsubdec: Fix buf_size check
100 - vp9: change order of operations in adapt_prob().
101 - avcodec/interplayvideo: Check side data size before use
102 - avformat/mxfdec: Check size to avoid integer overflow in mxf_read_utf16_string()
103 - avcodec/mpegvideo_enc: Clear mmx state in ff_mpv_reallocate_putbitbuffer()
104 - avcodec/utils: Clear MMX state before returning from avcodec_default_execute*()
105 - cmdutils: fix typos
106 - lavfi: fix typos
107 - lavc: fix typos
108 - tools: fix grammar error
109 - avutil/mips/generic_macros_msa: rename macro variable which causes segfault for mips r6
110 - videodsp: fix 1-byte overread in top/bottom READ_NUM_BYTES iterations.
111 - avformat/avidec: Check nb_streams in read_gab2_sub()
112 - avformat/avidec: Remove ancient assert
113 - lavc/movtextdec.c: Avoid infinite loop on invalid data.
114 - avcodec/ansi: Check dimensions
115 - avcodec/cavsdsp: use av_clip_uint8() for idct
116
117 version 2.8.8
118 - avformat/movenc: Check packet in mov_write_single_packet() too
119 - avformat/movenc: Factor check_pkt() out
120 - avformat/utils: fix timebase error in avformat_seek_file()
121 - avcodec/g726: Add missing ADDB output mask
122 - avcodec/avpacket: clear side_data_elems
123 - avcodec/ccaption_dec: Use simple array instead of AVBuffer
124 - swscale/swscale_unscaled: Try to fix Rgb16ToPlanarRgb16Wrapper() with slices
125 - swscale/swscale_unscaled: Fix packed_16bpc_bswap() with slices
126 - avformat/avidec: Fix infinite loop in avi_read_nikon()
127 - cmdutils: fix implicit declaration of SetDllDirectory function
128 - cmdutils: check for SetDllDirectory() availability
129 - avcodec/aacenc: Tighter input checks
130 - libavcodec/wmalosslessdec: Check the remaining bits
131 - avcodec/diracdec: Check numx/y
132 - avcodec/indeo2: check ctab
133 - avformat/swfdec: Fix inflate() error code check
134 - avcodec/h264: Put context_count check back
135 - cmdutils: remove the current working directory from the DLL search path on win32
136 - avcodec/raw: Fix decoding of ilacetest.mov
137 - avcodec/ffv1enc: Fix assertion failure with non zero bits per sample
138 - avformat/oggdec: Fix integer overflow with invalid pts
139 - ffplay: Fix invalid array index
140 - avcodec/vp9_parser: Check the input frame sizes for being consistent
141 - libavformat/rtpdec_asf: zero initialize the AVIOContext struct
142 - libavutil/opt: Small bugfix in example.
143 - libx264: Increase x264 opts character limit to 4096
144 - avformat/mov: Check sample size
145 - avformat/format: Fix registering a format more than once and related races
146 - avcodec/flac_parser: Raise threshold for detecting invalid data
147 - avfilter/vf_telecine: Make frame writable before writing into it
148 - avcodec/mpc8: Correct end truncation
149 - avcodec/mpegvideo: Do not clear the parse context during init
150 - MAINTAINERs cleanup (remove myself from things i de facto do not maintain)
151 - avcodec/h264: Fix off by 1 context count
152 - avcodec/alsdec: Check r to prevent out of array read
153 - avcodec/alsdec: fix max bits in ltp prefix code
154 - avcodec/utils: check skip_samples signedness
155 - avformat/mpegts: Do not trust BSSD descriptor, it is sometimes not an S302M stream
156 - avcodec/bmp_parser: Check fsize
157 - avcodec/bmp_parser: reset state
158 - avcodec/bmp_parser: Fix remaining size
159 - avcodec/bmp_parser: Fix frame_start_found in cross frame cases
160 - avfilter/af_amix: do not fail if there are no samples in output_frame()
161 - avformat/allformats: Making av_register_all() thread-safe.
162 - avcodec/mpegvideo: Deallocate last/next picture earlier
163 - avcodec/bmp_parser: Fix state
164 - avformat/oggparseopus: Fix Undefined behavior in oggparseopus.c and libavformat/utils.c
165 - doc/developer.texi: Add a code of conduct
166 - avformat/avidec: Detect index with too short entries
167 - avformat/utils: Check negative bps before shifting in ff_get_pcm_codec_id()
168 - avformat/utils: Do not compute the bitrate from duration == 0
169 - ffmpeg: Check that r_frame_rate is set before attempting to use it
170 - swresample/rematrix: Use clipping s16 rematrixing if overflows are possible
171 - swresample/rematrix: Use error diffusion to avoid error in the DC component of the matrix
172 - libavformat/oggdec: Free stream private when header parsing fails.
173 - avformat/utils: Check bps before using it in a shift in ff_get_pcm_codec_id()
174 - avformat/oggparseopus: Check that granule pos is within the supported range
175 - avcodec/mjpegdec: Do not try to detect last scan but apply idct after all scans for progressive jpeg
176 - avformat/options_table: Add missing identifier for very strict compliance
177 - librtmp: Avoid an infiniloop setting connection arguments
178 - avformat/oggparsevp8: fix pts calculation on pages ending with an invisible frame
179
180
181 version 2.8.7
182 - avcodec/motion_est: Attempt to fix "short data segment overflowed" on IA64
183 - avformat/ffmdec: Check pix_fmt
184 - avcodec/ttaenc: Reallocate packet if its too small
185 - pgssubdec: fix subpicture output colorspace and range
186 - avcodec/ac3dec: Reset SPX when switching from EAC3 to AC3
187 - avfilter/vf_drawtext: Check return code of load_glyph()
188 - avcodec/takdec: add code that got somehow lost in process of REing
189 - avcodec/apedec: fix decoding of stereo files with one channel full of silence
190 - avcodec/avpacket: Fix off by 5 error
191 - avcodec/h264: Fix for H.264 configuration parsing
192 - avcodec/bmp_parser: Ensure remaining_size is not too small in startcode packet crossing corner case
193 - avfilter/src_movie: fix how we check for overflows with seek_point
194 - avcodec/j2kenc: Add attribution to OpenJPEG project:
195 - avcodec/h264_slice: Check PPS more extensively when its not copied
196 - avcodec/libutvideodec: copy frame so it has reference counters when refcounted_frames is set
197 - avformat/rtpdec_jpeg: fix low contrast image on low quality setting
198 - avcodec/mjpegenc_common: Store approximate aspect if exact cannot be stored
199 - lavc/hevc: Allow arbitrary garbage in bytestream as long as at least one NAL unit is found.
200 - avcodec/resample: Remove disabled and faulty code
201 - indeo2: Fix banding artefacts
202 - indeo2data: K&R formatting cosmetics
203 - avcodec/imgconvert: Support non-planar colorspaces while padding
204 - avutil/random_seed: Add the runtime in cycles of the main loop to the entropy pool
205 - avutil/channel_layout: AV_CH_LAYOUT_6POINT1_BACK not reachable in parsing
206 - avformat/concatdec: set safe mode to enabled instead of auto
207 - avformat/utils: fix dts from pts code in compute_pkt_fields() during ascending delay
208 - avformat/rtpenc: Fix integer overflow in NTP_TO_RTP_FORMAT
209 - avformat/cache: Fix memleak of tree entries
210 - lavf/mov: downgrade sidx errors to non-fatal warnings; fixes trac #5216 (cherry picked from commit 22dbc1caaf13e4bb17c9e0164a5b1ccaf490e428)
211 - lavf/mov: fix sidx with edit lists (cherry picked from commit 3617e69d50dd9dd07b5011dfb9477a9d1a630354)
212 - avcodec/mjpegdec: Fix decoding slightly odd progressive jpeg
213 - libwebpenc_animencoder: print library messages in verbose log levels
214 - libwebpenc_animencoder: zero initialize the WebPAnimEncoderOptions struct
215 - doc/utils: fix typo for min() description
216 - avcodec/avpacket: clear priv in av_init_packet()
217 - swscale/utils: Fix chrSrcHSubSample for GBRAP16
218 - swscale/input: Fix GBRAP16 input
219 - postproc: fix unaligned access
220 - avutil/pixdesc: Make get_color_type() aware of CIE XYZ formats
221 - avcodec/h264: Execute error concealment before marking the frame as done.
222 - swscale/x86/output: Fix yuv2planeX_16* with unaligned destination
223 - swscale/x86/output: Move code into yuv2planeX_mainloop
224 - avutil/frame: Free destination qp_table_buf in frame_copy_props()
225
226
227 version 2.8.6
228 - avcodec/jpeg2000dec: More completely check cdef
229 - avutil/opt: check for and handle errors in av_opt_set_dict2()
230 - avcodec/flacenc: fix calculation of bits required in case of custom sample rate
231 - avformat: Document urls a bit
232 - avformat/libquvi: Set default demuxer and protocol limitations
233 - avformat/concat: Check protocol prefix
234 - doc/demuxers: Document enable_drefs and use_absolute_path
235 - avcodec/mjpegdec: Check for end for both bytes in unescaping
236 - avcodec/mpegvideo_enc: Check for integer overflow in ff_mpv_reallocate_putbitbuffer()
237 - avformat/avformat: Replace some references to filenames by urls
238 - avcodec/wmaenc: Check ff_wma_init() for failure
239 - avcodec/mpeg12enc: Move high resolution thread check to before initializing threads
240 - avformat/img2dec: Use AVOpenCallback
241 - avformat/avio: Limit url option parsing to the documented cases
242 - avformat/img2dec: do not interpret the filename by default if a IO context has been opened
243 - avcodec/ass_split: Fix null pointer dereference in ff_ass_style_get()
244 - mov: Add an option to toggle dref opening
245 - avcodec/gif: Fix lzw buffer size
246 - avcodec/put_bits: Assert buf_ptr in flush_put_bits()
247 - avcodec/tiff: Check subsample & rps values more completely
248 - swscale/swscale: Add some sanity checks for srcSlice* parameters
249 - swscale/x86/rgb2rgb_template: Fix planar2x() for short width
250 - swscale/swscale_unscaled: Fix odd height inputs for bayer_to_yv12_wrapper()
251 - swscale/swscale_unscaled: Fix odd height inputs for bayer_to_rgb24_wrapper()
252 - avcodec/aacenc: Check both channels for finiteness
253 - asfdec_o: check for too small size in asf_read_unknown
254 - asfdec_o: break if EOF is reached after asf_read_packet_header
255 - asfdec_o: make sure packet_size is non-zero before seeking
256 - asfdec_o: prevent overflow causing seekback
257 - asfdec_o: check avio_skip in asf_read_simple_index
258 - asfdec_o: reject size > INT64_MAX in asf_read_unknown
259 - asfdec_o: only set asf_pkt->data_size after sanity checks
260 - Merge commit '8375dc1dd101d51baa430f34c0bcadfa37873896'
261 - dca: fix misaligned access in avpriv_dca_convert_bitstream
262 - brstm: fix missing closing brace
263 - brstm: also allocate b->table in read_packet
264 - brstm: make sure an ADPC chunk was read for adpcm_thp
265 - vorbisdec: reject rangebits 0 with non-0 partitions
266 - vorbisdec: reject channel mapping with less than two channels
267 - ffmdec: reset packet_end in case of failure
268 - avformat/ipmovie: put video decoding_map_size into packet and use it in decoder
269 - avformat/brstm: fix overflow
270
271
272 version 2.8.5
273 - avformat/hls: Even stricter URL checks
274 - avformat/hls: More strict url checks
275 - avcodec/pngenc: Fix mixed up linesizes
276 - avcodec/pngenc: Replace memcpy by av_image_copy()
277 - swscale/vscale: Check that 2 tap filters are bilinear before using bilinear code
278 - swscale: Move VScalerContext into vscale.c
279 - swscale/utils: Detect and skip unneeded sws_setColorspaceDetails() calls
280 - swscale/yuv2rgb: Increase YUV2RGB table headroom
281 - swscale/yuv2rgb: Factor YUVRGB_TABLE_LUMA_HEADROOM out
282 - avformat/hls: forbid all protocols except http(s) & file
283 - avformat/aviobuf: Fix end check in put_str16()
284 - avformat/asfenc: Check pts
285 - avcodec/mpeg4video: Check time_incr
286 - avcodec/wavpackenc: Check the number of channels
287 - avcodec/wavpackenc: Headers are per channel
288 - avcodec/aacdec_template: Check id_map
289 - avcodec/dvdec: Fix "left shift of negative value -254"
290 - avcodec/g2meet: Check for ff_els_decode_bit() failure in epic_decode_run_length()
291 - avcodec/mjpegdec: Fix negative shift
292 - avcodec/mss2: Check for repeat overflow
293 - avformat: Add integer fps from 31 to 60 to get_std_framerate()
294 - avformat/ivfenc: fix division by zero
295 - avcodec/mpegvideo_enc: Clip bits_per_raw_sample within valid range
296 - avfilter/vf_scale: set proper out frame color range
297 - avcodec/motion_est: Fix mv_penalty table size
298 - avcodec/h264_slice: Fix integer overflow in implicit weight computation
299 - swscale/utils: Use normal bilinear scaler if fast cannot be used due to tiny dimensions
300 - avcodec/put_bits: Always check buffer end before writing
301 - mjpegdec: extend check for incompatible values of s->rgb and s->ls
302 - swscale/utils: Fix intermediate format for cascaded alpha downscaling
303 - avformat/mov: Update handbrake_version threshold for full mp3 parsing
304 - x86/float_dsp: zero extend offset from ff_scalarproduct_float_sse
305 - avfilter/vf_zoompan: do not free frame we pushed to lavfi
306 - nuv: sanitize negative fps rate
307 - nutdec: reject negative value_len in read_sm_data
308 - xwddec: prevent overflow of lsize * avctx->height
309 - nutdec: only copy the header if it exists
310 - exr: fix out of bounds read in get_code
311 - on2avc: limit number of bits to 30 in get_egolomb
312
313
314 version 2.8.4
315 - rawdec: only exempt BIT0 with need_copy from buffer sanity check
316 - mlvdec: check that index_entries exist
317 - avcodec/mpeg4videodec: also for empty partitioned slices
318 - avcodec/h264_refs: Fix long_idx check
319 - avcodec/h264_mc_template: prefetch list1 only if it is used in the MB
320 - avcodec/h264_slice: Simplify ref2frm indexing
321 - avfilter/vf_mpdecimate: Add missing emms_c()
322 - sonic: make sure num_taps * channels is not larger than frame_size
323 - opus_silk: fix typo causing overflow in silk_stabilize_lsf
324 - ffm: reject invalid codec_id and codec_type
325 - golomb: always check for invalid UE golomb codes in get_ue_golomb
326 - sbr_qmf_analysis: sanitize input for 32-bit imdct
327 - sbrdsp_fixed: assert that input values are in the valid range
328 - aacsbr: ensure strictly monotone time borders
329 - aacenc: update max_sfb when num_swb changes
330 - aaccoder: prevent crash of anmr coder
331 - ffmdec: reject zero-sized chunks
332 - swscale/x86/rgb2rgb_template: Fallback to mmx in interleaveBytes() if the alignment is insufficient for SSE*
333 - swscale/x86/rgb2rgb_template: Do not crash on misaligend stride
334 - avformat/mxfenc: Do not crash if there is no packet in the first stream
335 - lavf/tee: fix side data double free.
336 - avformat/hlsenc: Check the return code of avformat_write_header()
337 - avformat/mov: Enable parser for mp3s by old HandBrake
338 - avformat/mxfenc: Fix integer overflow in length computation
339 - avformat/utils: estimate_timings_from_pts - increase retry counter, fixes invalid duration for ts files with hevc codec
340 - avformat/matroskaenc: Check codecdelay before use
341 - avutil/mathematics: Fix division by 0
342 - mjpegdec: consider chroma subsampling in size check
343 - libvpxenc: remove some unused ctrl id mappings
344 - avcodec/vp3: ensure header is parsed successfully before tables
345 - avcodec/jpeg2000dec: Check bpno in decode_cblk()
346 - avcodec/pgssubdec: Fix left shift of 255 by 24 places cannot be represented in type int
347 - swscale/utils: Fix for runtime error: left shift of negative value -1
348 - avcodec/hevc: Fix integer overflow of entry_point_offset
349 - avcodec/dirac_parser: Check that there is a previous PU before accessing it
350 - avcodec/dirac_parser: Add basic validity checks for next_pu_offset and prev_pu_offset
351 - avcodec/dirac_parser: Fix potential overflows in pointer checks
352 - avcodec/wmaprodec: Check bits per sample to be within the range not causing integer overflows
353 - avcodec/wmaprodec: Fix overflow of cutoff
354 - avformat/smacker: fix integer overflow with pts_inc
355 - avcodec/vp3: Fix "runtime error: left shift of negative value"
356 - avformat/riffdec: Initialize bitrate
357 - mpegencts: Fix overflow in cbr mode period calculations
358 - avutil/timecode: Fix fps check
359 - avutil/mathematics: return INT64_MIN (=AV_NOPTS_VALUE) from av_rescale_rnd() for overflows
360 - avcodec/apedec: Check length in long_filter_high_3800()
361 - avcodec/vp3: always set pix_fmt in theora_decode_header()
362 - avcodec/mpeg4videodec: Check available data before reading custom matrix
363 - avutil/mathematics: Do not treat INT64_MIN as positive in av_rescale_rnd
364 - avutil/integer: Fix av_mod_i() with negative dividend
365 - avformat/dump: Fix integer overflow in av_dump_format()
366 - avcodec/h264_refs: Check that long references match before use
367 - avcodec/utils: Clear dimensions in ff_get_buffer() on failure
368 - avcodec/utils: Use 64bit for aspect ratio calculation in avcodec_string()
369 - avcodec/hevc: Check max ctb addresses for WPP
370 - avcodec/vp3: Clear context on reinitialization failure
371 - avcodec/hevc: allocate entries unconditionally
372 - avcodec/hevc_cabac: Fix multiple integer overflows
373 - avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_encode*()
374 - avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_decode*()
375 - avcodec/hevc: Check entry_point_offsets
376 - lavf/rtpenc_jpeg: Less strict check for standard Huffman tables.
377 - avcodec/ffv1dec: Clear quant_table_count if its invalid
378 - avcodec/ffv1dec: Print an error if the quant table count is invalid
379 - doc/filters/drawtext: fix centering example
380
381
382 version 2.8.3
383 - avcodec/cabac: Check initial cabac decoder state
384 - avcodec/cabac_functions: Fix "left shift of negative value -31767"
385 - avcodec/h264_slice: Limit max_contexts when slice_context_count is initialized
386 - rtmpcrypt: Do the xtea decryption in little endian mode
387 - avformat/matroskadec: Check subtitle stream before dereferencing
388 - avcodec/pngdec: Replace assert by request for sample for unsupported TRNS cases
389 - avformat/utils: Do not init parser if probing is unfinished
390 - avcodec/jpeg2000dec: Fix potential integer overflow with tile dimensions
391 - avcodec/jpeg2000: Use av_image_check_size() in ff_jpeg2000_init_component()
392 - avcodec/wmaprodec: Check for overread in decode_packet()
393 - avcodec/smacker: Check that the data size is a multiple of a sample vector
394 - avcodec/takdec: Skip last p2 sample (which is unused)
395 - avcodec/dxtory: Fix input size check in dxtory_decode_v1_410()
396 - avcodec/dxtory: Fix input size check in dxtory_decode_v1_420()
397 - avcodec/error_resilience: avoid accessing previous or next frames tables beyond height
398 - avcodec/dpx: Move need_align to act per line
399 - avcodec/flashsv: Check size before updating it
400 - avcodec/ivi: Check image dimensions
401 - avcodec/utils: Better check for channels in av_get_audio_frame_duration()
402 - avcodec/jpeg2000dec: Check for duplicate SIZ marker
403 - aacsbr: don't call sbr_dequant twice without intermediate read_sbr_data
404 - hqx: correct type and size check of info_offset
405 - mxfdec: check edit_rate also for physical_track
406 - avcodec/jpeg2000: Change coord to 32bit to support larger than 32k width or height
407 - avcodec/jpeg2000dec: Check SIZ dimensions to be within the supported range
408 - avcodec/jpeg2000: Check comp coords to be within the supported size
409 - mpegvideo: clear overread in clear_context
410 - avcodec/avrndec: Use the AVFrame format instead of the context
411 - dds: disable palette flag for compressed images
412 - dds: validate compressed source buffer size
413 - dds: validate source buffer size before copying
414 - dvdsubdec: validate offset2 similar to offset1
415 - brstm: reject negative sample rate
416 - aacps: avoid division by zero in stereo_processing
417 - softfloat: assert when the argument of av_sqrt_sf is negative
418
419 version 2.8.2
420 - various fixes in the aac_fixed decoder
421 - various fixes in softfloat
422 - swresample/resample: increase precision for compensation
423 - lavf/mov: add support for sidx fragment indexes
424 - avformat/mxfenc: Only store user comment related tags when needed
425 - tests/fate/avformat: Fix fate-lavf
426 - doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.
427 - ffmpeg: Don't try and write sdp info if none of the outputs had an rtp format.
428 - apng: use correct size for output buffer
429 - jvdec: avoid unsigned overflow in comparison
430 - avcodec/jpeg2000dec: Clip all tile coordinates
431 - avcodec/microdvddec: Check for string end in 'P' case
432 - avcodec/dirac_parser: Fix undefined memcpy() use
433 - avformat/xmv: Discard remainder of packet on error
434 - avformat/xmv: factor return check out of if/else
435 - avcodec/mpeg12dec: Do not call show_bits() with invalid bits
436 - avcodec/faxcompr: Add missing runs check in decode_uncompressed()
437 - libavutil/channel_layout: Check strtol*() for failure
438 - avformat/mpegts: Only start probing data streams within probe_packets
439 - avcodec/hevc_ps: Check chroma_format_idc
440 - avcodec/ffv1dec: Check for 0 quant tables
441 - avcodec/mjpegdec: Reinitialize IDCT on BPP changes
442 - avcodec/mjpegdec: Check index in ljpeg_decode_yuv_scan() before using it
443 - avutil/file_open: avoid file handle inheritance on Windows
444 - avcodec/h264_slice: Disable slice threads if there are multiple access units in a packet
445 - avformat/hls: update cookies on setcookie response
446 - opusdec: Don't run vector_fmul_scalar on zero length arrays
447 - avcodec/opusdec: Fix extra samples read index
448 - avcodec/ffv1: Initialize vlc_state on allocation
449 - avcodec/ffv1dec: update progress in case of broken pointer chains
450 - avcodec/ffv1dec: Clear slice coordinates if they are invalid or slice header decoding fails for other reasons
451 - rtsp: Allow $ as interleaved packet indicator before a complete response header
452 - videodsp: don't overread edges in vfix3 emu_edge.
453 - avformat/mp3dec: improve junk skipping heuristic
454 - concatdec: fix file_start_time calculation regression
455 - avcodec: loongson optimize h264dsp idct and loop filter with mmi
456 - avcodec/jpeg2000dec: Clear properties in jpeg2000_dec_cleanup() too
457 - avformat/hls: add support for EXT-X-MAP
458 - avformat/hls: fix segment selection regression on track changes of live streams
459 - configure: Require libkvazaar < 0.7.
460 - avcodec/vp8: Do not use num_coeff_partitions in thread/buffer setup
461
462
463 version 2.8.1:
464 - swscale: fix ticket #4881
465 - doc: fix spelling errors
466 - hls: only seek if there is an offset
467 - asfdec: add more checks for size left in asf packet buffer
468 - asfdec: alloc enough space for storing name in asf_read_metadata_obj
469 - avcodec/pngdec: Check blend_op.
470 - h264_mp4toannexb: fix pps offfset fault when there are more than one sps in avcc
471 - avcodec/h264_mp4toannexb_bsf: Use av_freep() to free spspps_buf
472 - avformat/avidec: Workaround broken initial frame
473 - avformat/hls: fix some cases of HLS streams which require cookies
474 - avcodec/pngdec: reset has_trns after every decode_frame_png()
475 - lavf/img2dec: Fix memory leak
476 - avcodec/mp3: fix skipping zeros
477 - avformat/srtdec: make sure we probe a number
478 - configure: check for ID3D11VideoContext
479 - avformat/vobsub: compare correct packet stream IDs
480 - avformat/srtdec: more lenient first line probing
481 - avformat/srtdec: fix number check for the first character
482 - avcodec/mips: build fix for MSA 64bit
483 - avcodec/mips: build fix for MSA
484 - avformat/httpauth: Add space after commas in HTTP/RTSP auth header
485 - libavformat/hlsenc: Use of uninitialized memory unlinking old files
486 - avcodec/x86/sbrdsp: Fix using uninitialized upper 32bit of noise
487 - avcodec/ffv1dec: Fix off by 1 error in quant_table_count check
488 - avcodec/ffv1dec: Explicitly check read_quant_table() return value
489 - dnxhddata: correct weight tables
490 - dnxhddec: decode and use interlace mb flag
491 - swscale: fix ticket #4877
492 - avcodec/rangecoder: Check e
493 - avcodec/ffv1: separate slice_count from max_slice_count
494 - swscale: fix ticket 4850
495 - cmdutils: Filter dst/srcw/h
496 - avutil/log: fix zero length gnu_printf format string warning
497 - lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.
498 - swscale/swscale: Fix "unused variable" warning
499 - avcodec/mjpegdec: Fix decoding RGBA RCT LJPEG
500 - MAINTAINERS: add 2.8, drop 2.2
501 - doc: mention libavcodec can decode Opus natively
502 - hevc: properly handle no_rasl_output_flag when removing pictures from the DPB
503 - avfilter/af_ladspa: process all channels for nb_handles > 1
504 - configure: add libsoxr to swresample's pkgconfig
505 - lavc: Fix compilation with --disable-everything --enable-parser=mpeg4video.
506
507 version 2.8:
508 - colorkey video filter
509 - BFSTM/BCSTM demuxer
510 - little-endian ADPCM_THP decoder
511 - Hap decoder and encoder
512 - DirectDraw Surface image/texture decoder
513 - ssim filter
514 - optional new ASF demuxer
515 - showvolume filter
516 - Many improvements to the JPEG 2000 decoder
517 - Go2Meeting decoding support
518 - adrawgraph audio and drawgraph video filter
519 - removegrain video filter
520 - Intel QSV-accelerated MPEG-2 video and HEVC encoding
521 - Intel QSV-accelerated MPEG-2 video and HEVC decoding
522 - Intel QSV-accelerated VC-1 video decoding
523 - libkvazaar HEVC encoder
524 - erosion, dilation, deflate and inflate video filters
525 - Dynamic Audio Normalizer as dynaudnorm filter
526 - Reverse video and areverse audio filter
527 - Random filter
528 - deband filter
529 - AAC fixed-point decoding
530 - sidechaincompress audio filter
531 - bitstream filter for converting HEVC from MP4 to Annex B
532 - acrossfade audio filter
533 - allyuv and allrgb video sources
534 - atadenoise video filter
535 - OS X VideoToolbox support
536 - aphasemeter filter
537 - showfreqs filter
538 - vectorscope filter
539 - waveform filter
540 - hstack and vstack filter
541 - Support DNx100 (1440x1080@8)
542 - VAAPI hevc hwaccel
543 - VDPAU hevc hwaccel
544 - framerate filter
545 - Switched default encoders for webm to VP9 and Opus
546 - Removed experimental flag from the JPEG 2000 encoder
547
548
549 version 2.7:
550 - FFT video filter
551 - TDSC decoder
552 - DTS lossless extension (XLL) decoding (not lossless, disabled by default)
553 - showwavespic filter
554 - DTS decoding through libdcadec
555 - Drop support for nvenc API before 5.0
556 - nvenc HEVC encoder
557 - Detelecine filter
558 - Intel QSV-accelerated H.264 encoding
559 - MMAL-accelerated H.264 decoding
560 - basic APNG encoder and muxer with default extension "apng"
561 - unpack DivX-style packed B-frames in MPEG-4 bitstream filter
562 - WebM Live Chunk Muxer
563 - nvenc level and tier options
564 - chorus filter
565 - Canopus HQ/HQA decoder
566 - Automatically rotate videos based on metadata in ffmpeg
567 - improved Quickdraw compatibility
568 - VP9 high bit-depth and extended colorspaces decoding support
569 - WebPAnimEncoder API when available for encoding and muxing WebP
570 - Direct3D11-accelerated decoding
571 - Support Secure Transport
572 - Multipart JPEG demuxer
573
574
575 version 2.6:
576 - nvenc encoder
577 - 10bit spp filter
578 - colorlevels filter
579 - RIFX format for *.wav files
580 - RTP/mpegts muxer
581 - non continuous cache protocol support
582 - tblend filter
583 - cropdetect support for non 8bpp, absolute (if limit >= 1) and relative (if limit < 1.0) threshold
584 - Camellia symmetric block cipher
585 - OpenH264 encoder wrapper
586 - VOC seeking support
587 - Closed caption Decoder
588 - fspp, uspp, pp7 MPlayer postprocessing filters ported to native filters
589 - showpalette filter
590 - Twofish symmetric block cipher
591 - Support DNx100 (960x720@8)
592 - eq2 filter ported from libmpcodecs as eq filter
593 - removed libmpcodecs
594 - Changed default DNxHD colour range in QuickTime .mov derivatives to mpeg range
595 - ported softpulldown filter from libmpcodecs as repeatfields filter
596 - dcshift filter
597 - RTP depacketizer for loss tolerant payload format for MP3 audio (RFC 5219)
598 - RTP depacketizer for AC3 payload format (RFC 4184)
599 - palettegen and paletteuse filters
600 - VP9 RTP payload format (draft 0) experimental depacketizer
601 - RTP depacketizer for DV (RFC 6469)
602 - DXVA2-accelerated HEVC decoding
603 - AAC ELD 480 decoding
604 - Intel QSV-accelerated H.264 decoding
605 - DSS SP decoder and DSS demuxer
606 - Fix stsd atom corruption in DNxHD QuickTimes
607 - Canopus HQX decoder
608 - RTP depacketization of T.140 text (RFC 4103)
609 - Port MIPS optimizations to 64-bit
610
611
612 version 2.5:
613 - HEVC/H.265 RTP payload format (draft v6) packetizer
614 - SUP/PGS subtitle demuxer
615 - ffprobe -show_pixel_formats option
616 - CAST128 symmetric block cipher, ECB mode
617 - STL subtitle demuxer and decoder
618 - libutvideo YUV 4:2:2 10bit support
619 - XCB-based screen-grabber
620 - UDP-Lite support (RFC 3828)
621 - xBR scaling filter
622 - AVFoundation screen capturing support
623 - ffserver supports codec private options
624 - creating DASH compatible fragmented MP4, MPEG-DASH segmenting muxer
625 - WebP muxer with animated WebP support
626 - zygoaudio decoding support
627 - APNG demuxer
628 - postproc visualization support
629
630
631 version 2.4:
632 - Icecast protocol
633 - ported lenscorrection filter from frei0r filter
634 - large optimizations in dctdnoiz to make it usable
635 - ICY metadata are now requested by default with the HTTP protocol
636 - support for using metadata in stream specifiers in fftools
637 - LZMA compression support in TIFF decoder
638 - H.261 RTP payload format (RFC 4587) depacketizer and experimental packetizer
639 - HEVC/H.265 RTP payload format (draft v6) depacketizer
640 - added codecview filter to visualize information exported by some codecs
641 - Matroska 3D support thorugh side data
642 - HTML generation using texi2html is deprecated in favor of makeinfo/texi2any
643 - silenceremove filter
644
645
646 version 2.3:
647 - AC3 fixed-point decoding
648 - shuffleplanes filter
649 - subfile protocol
650 - Phantom Cine demuxer
651 - replaygain data export
652 - VP7 video decoder
653 - Alias PIX image encoder and decoder
654 - Improvements to the BRender PIX image decoder
655 - Improvements to the XBM decoder
656 - QTKit input device
657 - improvements to OpenEXR image decoder
658 - support decoding 16-bit RLE SGI images
659 - GDI screen grabbing for Windows
660 - alternative rendition support for HTTP Live Streaming
661 - AVFoundation input device
662 - Direct Stream Digital (DSD) decoder
663 - Magic Lantern Video (MLV) demuxer
664 - On2 AVC (Audio for Video) decoder
665 - support for decoding through DXVA2 in ffmpeg
666 - libbs2b-based stereo-to-binaural audio filter
667 - libx264 reference frames count limiting depending on level
668 - native Opus decoder
669 - display matrix export and rotation API
670 - WebVTT encoder
671 - showcqt multimedia filter
672 - zoompan filter
673 - signalstats filter
674 - hqx filter (hq2x, hq3x, hq4x)
675 - flanger filter
676 - Image format auto-detection
677 - LRC demuxer and muxer
678 - Samba protocol (via libsmbclient)
679 - WebM DASH Manifest muxer
680 - libfribidi support in drawtext
681
682
683 version 2.2:
684
685 - HNM version 4 demuxer and video decoder
686 - Live HDS muxer
687 - setsar/setdar filters now support variables in ratio expressions
688 - elbg filter
689 - string validation in ffprobe
690 - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
691 - complete Voxware MetaSound decoder
692 - remove mp3_header_compress bitstream filter
693 - Windows resource files for shared libraries
694 - aeval filter
695 - stereoscopic 3d metadata handling
696 - WebP encoding via libwebp
697 - ATRAC3+ decoder
698 - VP8 in Ogg demuxing
699 - side & metadata support in NUT
700 - framepack filter
701 - XYZ12 rawvideo support in NUT
702 - Exif metadata support in WebP decoder
703 - OpenGL device
704 - Use metadata_header_padding to control padding in ID3 tags (currently used in
705   MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
706 - Mirillis FIC video decoder
707 - Support DNx444
708 - libx265 encoder
709 - dejudder filter
710 - Autodetect VDA like all other hardware accelerations
711 - aliases and defaults for Ogg subtypes (opus, spx)
712
713
714 version 2.1:
715
716 - aecho filter
717 - perspective filter ported from libmpcodecs
718 - ffprobe -show_programs option
719 - compand filter
720 - RTMP seek support
721 - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
722   even when used as an input option. Previous behavior can be restored with
723   the -noaccurate_seek option.
724 - ffmpeg -t option can now be used for inputs, to limit the duration of
725   data read from an input file
726 - incomplete Voxware MetaSound decoder
727 - read EXIF metadata from JPEG
728 - DVB teletext decoder
729 - phase filter ported from libmpcodecs
730 - w3fdif filter
731 - Opus support in Matroska
732 - FFV1 version 1.3 is stable and no longer experimental
733 - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
734 - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
735   more consistent with other muxers.
736 - adelay filter
737 - pullup filter ported from libmpcodecs
738 - ffprobe -read_intervals option
739 - Lossless and alpha support for WebP decoder
740 - Error Resilient AAC syntax (ER AAC LC) decoding
741 - Low Delay AAC (ER AAC LD) decoding
742 - mux chapters in ASF files
743 - SFTP protocol (via libssh)
744 - libx264: add ability to encode in YUVJ422P and YUVJ444P
745 - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
746 - make decoding alpha optional for prores, ffv1 and vp6 by setting
747   the skip_alpha flag.
748 - ladspa wrapper filter
749 - native VP9 decoder
750 - dpx parser
751 - max_error_rate parameter in ffmpeg
752 - PulseAudio output device
753 - ReplayGain scanner
754 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
755 - Linux framebuffer output device
756 - HEVC decoder
757 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
758 - mergeplanes filter
759
760
761 version 2.0:
762
763 - curves filter
764 - reference-counting for AVFrame and AVPacket data
765 - ffmpeg now fails when input options are used for output file
766   or vice versa
767 - support for Monkey's Audio versions from 3.93
768 - perms and aperms filters
769 - audio filtering support in ffplay
770 - 10% faster aac encoding on x86 and MIPS
771 - sine audio filter source
772 - WebP demuxing and decoding support
773 - ffmpeg options -filter_script and -filter_complex_script, which allow a
774   filtergraph description to be read from a file
775 - OpenCL support
776 - audio phaser filter
777 - separatefields filter
778 - libquvi demuxer
779 - uniform options syntax across all filters
780 - telecine filter
781 - interlace filter
782 - smptehdbars source
783 - inverse telecine filters (fieldmatch and decimate)
784 - colorbalance filter
785 - colorchannelmixer filter
786 - The matroska demuxer can now output proper verbatim ASS packets. It will
787   become the default at the next libavformat major bump.
788 - decent native animated GIF encoding
789 - asetrate filter
790 - interleave filter
791 - timeline editing with filters
792 - vidstabdetect and vidstabtransform filters for video stabilization using
793   the vid.stab library
794 - astats filter
795 - trim and atrim filters
796 - ffmpeg -t and -ss (output-only) options are now sample-accurate when
797   transcoding audio
798 - Matroska muxer can now put the index at the beginning of the file.
799 - extractplanes filter
800 - avectorscope filter
801 - ADPCM DTK decoder
802 - ADP demuxer
803 - RSD demuxer
804 - RedSpark demuxer
805 - ADPCM IMA Radical decoder
806 - zmq filters
807 - DCT denoiser filter (dctdnoiz)
808 - Wavelet denoiser filter ported from libmpcodecs as owdenoise (formerly "ow")
809 - Apple Intermediate Codec decoder
810 - Escape 130 video decoder
811 - FTP protocol support
812 - V4L2 output device
813 - 3D LUT filter (lut3d)
814 - SMPTE 302M audio encoder
815 - support for slice multithreading in libavfilter
816 - Hald CLUT support (generation and filtering)
817 - VC-1 interlaced B-frame support
818 - support for WavPack muxing (raw and in Matroska)
819 - XVideo output device
820 - vignette filter
821 - True Audio (TTA) encoder
822 - Go2Webinar decoder
823 - mcdeint filter ported from libmpcodecs
824 - sab filter ported from libmpcodecs
825 - ffprobe -show_chapters option
826 - WavPack encoding through libwavpack
827 - rotate filter
828 - spp filter ported from libmpcodecs
829 - libgme support
830 - psnr filter
831
832
833 version 1.2:
834
835 - VDPAU hardware acceleration through normal hwaccel
836 - SRTP support
837 - Error diffusion dither in Swscale
838 - Chained Ogg support
839 - Theora Midstream reconfiguration support
840 - EVRC decoder
841 - audio fade filter
842 - filtering audio with unknown channel layout
843 - allpass, bass, bandpass, bandreject, biquad, equalizer, highpass, lowpass
844   and treble audio filter
845 - improved showspectrum filter, with multichannel support and sox-like colors
846 - histogram filter
847 - tee muxer
848 - il filter ported from libmpcodecs
849 - support ID3v2 tags in ASF files
850 - encrypted TTA stream decoding support
851 - RF64 support in WAV muxer
852 - noise filter ported from libmpcodecs
853 - Subtitles character encoding conversion
854 - blend filter
855 - stereo3d filter ported from libmpcodecs
856
857
858 version 1.1:
859
860 - stream disposition information printing in ffprobe
861 - filter for loudness analysis following EBU R128
862 - Opus encoder using libopus
863 - ffprobe -select_streams option
864 - Pinnacle TARGA CineWave YUV16 decoder
865 - TAK demuxer, decoder and parser
866 - DTS-HD demuxer
867 - remove -same_quant, it hasn't worked for years
868 - FFM2 support
869 - X-Face image encoder and decoder
870 - 24-bit FLAC encoding
871 - multi-channel ALAC encoding up to 7.1
872 - metadata (INFO tag) support in WAV muxer
873 - subtitles raw text decoder
874 - support for building DLLs using MSVC
875 - LVF demuxer
876 - ffescape tool
877 - metadata (info chunk) support in CAF muxer
878 - field filter ported from libmpcodecs
879 - AVR demuxer
880 - geq filter ported from libmpcodecs
881 - remove ffserver daemon mode
882 - AST muxer/demuxer
883 - new expansion syntax for drawtext
884 - BRender PIX image decoder
885 - ffprobe -show_entries option
886 - ffprobe -sections option
887 - ADPCM IMA Dialogic decoder
888 - BRSTM demuxer
889 - animated GIF decoder and demuxer
890 - PVF demuxer
891 - subtitles filter
892 - IRCAM muxer/demuxer
893 - Paris Audio File demuxer
894 - Virtual concatenation demuxer
895 - VobSub demuxer
896 - JSON captions for TED talks decoding support
897 - SOX Resampler support in libswresample
898 - aselect filter
899 - SGI RLE 8-bit / Silicon Graphics RLE 8-bit video decoder
900 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
901 - Silicon Graphics Movie demuxer
902 - apad filter
903 - Resolution & pixel format change support with multithreading for H.264
904 - documentation split into per-component manuals
905 - pp (postproc) filter ported from MPlayer
906 - NIST Sphere demuxer
907 - MPL2, VPlayer, MPlayer, AQTitle, PJS and SubViewer v1 subtitles demuxers and decoders
908 - Sony Wave64 muxer
909 - adobe and limelight publisher authentication in RTMP
910 - data: URI scheme
911 - support building on the Plan 9 operating system
912 - kerndeint filter ported from MPlayer
913 - histeq filter ported from VirtualDub
914 - Megalux Frame demuxer
915 - 012v decoder
916 - Improved AVC Intra decoding support
917
918
919 version 1.0:
920
921 - INI and flat output in ffprobe
922 - Scene detection in libavfilter
923 - Indeo Audio decoder
924 - channelsplit audio filter
925 - setnsamples audio filter
926 - atempo filter
927 - ffprobe -show_data option
928 - RTMPT protocol support
929 - iLBC encoding/decoding via libilbc
930 - Microsoft Screen 1 decoder
931 - join audio filter
932 - audio channel mapping filter
933 - Microsoft ATC Screen decoder
934 - RTSP listen mode
935 - TechSmith Screen Codec 2 decoder
936 - AAC encoding via libfdk-aac
937 - Microsoft Expression Encoder Screen decoder
938 - RTMPS protocol support
939 - RTMPTS protocol support
940 - RTMPE protocol support
941 - RTMPTE protocol support
942 - showwaves and showspectrum filter
943 - LucasArts SMUSH SANM playback support
944 - LucasArts SMUSH VIMA audio decoder (ADPCM)
945 - LucasArts SMUSH demuxer
946 - SAMI, RealText and SubViewer demuxers and decoders
947 - Heart Of Darkness PAF playback support
948 - iec61883 device
949 - asettb filter
950 - new option: -progress
951 - 3GPP Timed Text encoder/decoder
952 - GeoTIFF decoder support
953 - ffmpeg -(no)stdin option
954 - Opus decoder using libopus
955 - caca output device using libcaca
956 - alphaextract and alphamerge filters
957 - concat filter
958 - flite filter
959 - Canopus Lossless Codec decoder
960 - bitmap subtitles in filters (experimental and temporary)
961 - MP2 encoding via TwoLAME
962 - bmp parser
963 - smptebars source
964 - asetpts filter
965 - hue filter
966 - ICO muxer
967 - SubRip encoder and decoder without embedded timing
968 - edge detection filter
969 - framestep filter
970 - ffmpeg -shortest option is now per-output file
971   -pass and -passlogfile are now per-output stream
972 - volume measurement filter
973 - Ut Video encoder
974 - Microsoft Screen 2 decoder
975 - smartblur filter ported from MPlayer
976 - CPiA decoder
977 - decimate filter ported from MPlayer
978 - RTP depacketization of JPEG
979 - Smooth Streaming live segmenter muxer
980 - F4V muxer
981 - sendcmd and asendcmd filters
982 - WebVTT demuxer and decoder (simple tags supported)
983 - RTP packetization of JPEG
984 - faststart option in the MOV/MP4 muxer
985 - support for building with MSVC
986
987
988 version 0.11:
989
990 - Fixes: CVE-2012-2772, CVE-2012-2774, CVE-2012-2775, CVE-2012-2776, CVE-2012-2777,
991          CVE-2012-2779, CVE-2012-2782, CVE-2012-2783, CVE-2012-2784, CVE-2012-2785,
992          CVE-2012-2786, CVE-2012-2787, CVE-2012-2788, CVE-2012-2789, CVE-2012-2790,
993          CVE-2012-2791, CVE-2012-2792, CVE-2012-2793, CVE-2012-2794, CVE-2012-2795,
994          CVE-2012-2796, CVE-2012-2797, CVE-2012-2798, CVE-2012-2799, CVE-2012-2800,
995          CVE-2012-2801, CVE-2012-2802, CVE-2012-2803, CVE-2012-2804,
996 - v408 Quicktime and Microsoft AYUV Uncompressed 4:4:4:4 encoder and decoder
997 - setfield filter
998 - CDXL demuxer and decoder
999 - Apple ProRes encoder
1000 - ffprobe -count_packets and -count_frames options
1001 - Sun Rasterfile Encoder
1002 - ID3v2 attached pictures reading and writing
1003 - WMA Lossless decoder
1004 - bluray protocol
1005 - blackdetect filter
1006 - libutvideo encoder wrapper (--enable-libutvideo)
1007 - swapuv filter
1008 - bbox filter
1009 - XBM encoder and decoder
1010 - RealAudio Lossless decoder
1011 - ZeroCodec decoder
1012 - tile video filter
1013 - Metal Gear Solid: The Twin Snakes demuxer
1014 - OpenEXR image decoder
1015 - removelogo filter
1016 - drop support for ffmpeg without libavfilter
1017 - drawtext video filter: fontconfig support
1018 - ffmpeg -benchmark_all option
1019 - super2xsai filter ported from libmpcodecs
1020 - add libavresample audio conversion library for compatibility
1021 - MicroDVD decoder
1022 - Avid Meridien (AVUI) encoder and decoder
1023 - accept + prefix to -pix_fmt option to disable automatic conversions.
1024 - complete audio filtering in libavfilter and ffmpeg
1025 - add fps filter
1026 - vorbis parser
1027 - png parser
1028 - audio mix filter
1029 - ffv1: support (draft) version 1.3
1030
1031
1032 version 0.10:
1033
1034 - Fixes: CVE-2011-3929, CVE-2011-3934, CVE-2011-3935, CVE-2011-3936,
1035          CVE-2011-3937, CVE-2011-3940, CVE-2011-3941, CVE-2011-3944,
1036          CVE-2011-3945, CVE-2011-3946, CVE-2011-3947, CVE-2011-3949,
1037          CVE-2011-3950, CVE-2011-3951, CVE-2011-3952
1038 - v410 Quicktime Uncompressed 4:4:4 10-bit encoder and decoder
1039 - SBaGen (SBG) binaural beats script demuxer
1040 - OpenMG Audio muxer
1041 - Timecode extraction in DV and MOV
1042 - thumbnail video filter
1043 - XML output in ffprobe
1044 - asplit audio filter
1045 - tinterlace video filter
1046 - astreamsync audio filter
1047 - amerge audio filter
1048 - ISMV (Smooth Streaming) muxer
1049 - GSM audio parser
1050 - SMJPEG muxer
1051 - XWD encoder and decoder
1052 - Automatic thread count based on detection number of (available) CPU cores
1053 - y41p Brooktree Uncompressed 4:1:1 12-bit encoder and decoder
1054 - ffprobe -show_error option
1055 - Avid 1:1 10-bit RGB Packer codec
1056 - v308 Quicktime Uncompressed 4:4:4 encoder and decoder
1057 - yuv4 libquicktime packed 4:2:0 encoder and decoder
1058 - ffprobe -show_frames option
1059 - silencedetect audio filter
1060 - ffprobe -show_program_version, -show_library_versions, -show_versions options
1061 - rv34: frame-level multi-threading
1062 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
1063 - Improved PGS subtitle decoder
1064 - dumpgraph option to lavfi device
1065 - r210 and r10k encoders
1066 - ffwavesynth decoder
1067 - aviocat tool
1068 - ffeval tool
1069 - support encoding and decoding 4-channel SGI images
1070
1071
1072 version 0.9:
1073
1074 - openal input device added
1075 - boxblur filter added
1076 - BWF muxer
1077 - Flash Screen Video 2 decoder
1078 - lavfi input device added
1079 - added avconv, which is almost the same for now, except
1080 for a few incompatible changes in the options, which will hopefully make them
1081 easier to use. The changes are:
1082     * The options placement is now strictly enforced! While in theory the
1083       options for ffmpeg should be given in [input options] -i INPUT [output
1084       options] OUTPUT order, in practice it was possible to give output options
1085       before the -i and it mostly worked. Except when it didn't - the behavior was
1086       a bit inconsistent. In avconv, it is not possible to mix input and output
1087       options. All non-global options are reset after an input or output filename.
1088     * All per-file options are now truly per-file - they apply only to the next
1089       input or output file and specifying different values for different files
1090       will now work properly (notably -ss and -t options).
1091     * All per-stream options are now truly per-stream - it is possible to
1092       specify which stream(s) should a given option apply to. See the Stream
1093       specifiers section in the avconv manual for details.
1094     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
1095       sense that they're specified after the output filename instead of before,
1096       like all other options. In avconv this irregularity is removed, all options
1097       apply to the next input or output file.
1098     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
1099       irregular and highly confusing, they were also redundant. In avconv the -map
1100       option will create new streams in the output file and map input streams to
1101       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
1102       each stream in the first input file.
1103     * The -map option now has slightly different and more powerful syntax:
1104         + Colons (':') are used to separate file index/stream type/stream index
1105           instead of dots. Comma (',') is used to separate the sync stream instead
1106           of colon.. This is done for consistency with other options.
1107         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
1108           output stream from the third input audio stream.
1109         + Omitting the stream index now maps all the streams of the given type,
1110           not just the first. E.g. -map 0:s creates output streams for all the
1111           subtitle streams in the first input file.
1112         + Since -map can now match multiple streams, negative mappings were
1113           introduced. Negative mappings disable some streams from an already
1114           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
1115           all the stream in the first input file, except for the second audio
1116           stream'.
1117     * There is a new option -c (or -codec) for choosing the decoder/encoder to
1118       use, which makes it possible to precisely specify target stream(s) consistently with
1119       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
1120       libvorbis sets the codec for the first audio stream and -c copy copies all
1121       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
1122       aliases to -c:v/a/s
1123     * It is now possible to precisely specify which stream should an AVOption
1124       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
1125       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
1126       syntax is deprecated and will stop working soon.
1127     * -map_chapters now takes only an input file index and applies to the next
1128       output file. This is consistent with how all the other options work.
1129     * -map_metadata now takes only an input metadata specifier and applies to
1130       the next output file. Output metadata specifier is now part of the option
1131       name, similarly to the AVOptions/map/codec feature above.
1132     * -metadata can now be used to set metadata on streams and chapters, e.g.
1133       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
1134       This made -vlang/-alang/-slang options redundant, so they were removed.
1135     * -qscale option now uses stream specifiers and applies to all streams, not
1136       just video. I.e. plain -qscale number would now apply to all streams. To get
1137       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
1138       and -aq is now an alias for -q:a.
1139     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
1140       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
1141     * -itsscale option now uses stream specifiers, so its argument is only the
1142       scale parameter.
1143     * -intra option was removed, use -g 0 for the same effect.
1144     * -psnr option was removed, use -flags +psnr for the same effect.
1145     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
1146     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
1147     * -vtag/-atag/-stag options are now aliases to the new -tag option.
1148 - XMV demuxer
1149 - LOAS demuxer
1150 - ashowinfo filter added
1151 - Windows Media Image decoder
1152 - amovie source added
1153 - LATM muxer/demuxer
1154 - Speex encoder via libspeex
1155 - JSON output in ffprobe
1156 - WTV muxer
1157 - Optional C++ Support (needed for libstagefright)
1158 - H.264 Decoding on Android via Stagefright
1159 - Prores decoder
1160 - BIN/XBIN/ADF/IDF text file decoder
1161 - aconvert audio filter added
1162 - audio support to lavfi input device added
1163 - libcdio-paranoia input device for audio CD grabbing
1164 - Apple ProRes decoder
1165 - CELT in Ogg demuxing
1166 - G.723.1 demuxer and decoder
1167 - libmodplug support (--enable-libmodplug)
1168 - VC-1 interlaced decoding
1169 - libutvideo wrapper (--enable-libutvideo)
1170 - aevalsrc audio source added
1171 - Ut Video decoder
1172 - Speex encoding via libspeex
1173 - 4:2:2 H.264 decoding support
1174 - 4:2:2 and 4:4:4 H.264 encoding with libx264
1175 - Pulseaudio input device
1176 - Prores encoder
1177 - Video Decoder Acceleration (VDA) HWAccel module.
1178 - replacement Indeo 3 decoder
1179 - new ffmpeg option: -map_channel
1180 - volume audio filter added
1181 - earwax audio filter added
1182 - libv4l2 support (--enable-libv4l2)
1183 - TLS/SSL and HTTPS protocol support
1184 - AVOptions API rewritten and documented
1185 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
1186   AVCodecContext deprecated. Codec private options should be used instead.
1187 - Properly working defaults in libx264 wrapper, support for native presets.
1188 - Encrypted OMA files support
1189 - Discworld II BMV decoding support
1190 - VBLE Decoder
1191 - OS X Video Decoder Acceleration (VDA) support
1192 - compact and csv output in ffprobe
1193 - pan audio filter
1194 - IFF Amiga Continuous Bitmap (ACBM) decoder
1195 - ass filter
1196 - CRI ADX audio format muxer and demuxer
1197 - Playstation Portable PMP format demuxer
1198 - Microsoft Windows ICO demuxer
1199 - life source
1200 - PCM format support in OMA demuxer
1201 - CLJR encoder
1202 - new option: -report
1203 - Dxtory capture format decoder
1204 - cellauto source
1205 - Simple segmenting muxer
1206 - Indeo 4 decoder
1207 - SMJPEG demuxer
1208
1209
1210 version 0.8:
1211
1212 - many many things we forgot because we rather write code than changelogs
1213 - WebM support in Matroska de/muxer
1214 - low overhead Ogg muxing
1215 - MMS-TCP support
1216 - VP8 de/encoding via libvpx
1217 - Demuxer for On2's IVF format
1218 - Pictor/PC Paint decoder
1219 - HE-AAC v2 decoder
1220 - HE-AAC v2 encoding with libaacplus
1221 - libfaad2 wrapper removed
1222 - DTS-ES extension (XCh) decoding support
1223 - native VP8 decoder
1224 - RTSP tunneling over HTTP
1225 - RTP depacketization of SVQ3
1226 - -strict inofficial replaced by -strict unofficial
1227 - ffplay -exitonkeydown and -exitonmousedown options added
1228 - native GSM / GSM MS decoder
1229 - RTP depacketization of QDM2
1230 - ANSI/ASCII art playback system
1231 - Lego Mindstorms RSO de/muxer
1232 - libavcore added (and subsequently removed)
1233 - SubRip subtitle file muxer and demuxer
1234 - Chinese AVS encoding via libxavs
1235 - ffprobe -show_packets option added
1236 - RTP packetization of Theora and Vorbis
1237 - RTP depacketization of MP4A-LATM
1238 - RTP packetization and depacketization of VP8
1239 - hflip filter
1240 - Apple HTTP Live Streaming demuxer
1241 - a64 codec
1242 - MMS-HTTP support
1243 - G.722 ADPCM audio encoder/decoder
1244 - R10k video decoder
1245 - ocv_smooth filter
1246 - frei0r wrapper filter
1247 - change crop filter syntax to width:height:x:y
1248 - make the crop filter accept parametric expressions
1249 - make ffprobe accept AVFormatContext options
1250 - yadif filter
1251 - blackframe filter
1252 - Demuxer for Leitch/Harris' VR native stream format (LXF)
1253 - RTP depacketization of the X-QT QuickTime format
1254 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
1255 - cropdetect filter
1256 - ffmpeg -crop* options removed
1257 - transpose filter added
1258 - ffmpeg -force_key_frames option added
1259 - demuxer for receiving raw rtp:// URLs without an SDP description
1260 - single stream LATM/LOAS decoder
1261 - setpts filter added
1262 - Win64 support for optimized x86 assembly functions
1263 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
1264 - ASS subtitle encoder and decoder
1265 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
1266 - overlay filter added
1267 - rename aspect filter to setdar, and pixelaspect to setsar
1268 - IEC 61937 demuxer
1269 - Mobotix .mxg demuxer
1270 - frei0r source added
1271 - hqdn3d filter added
1272 - RTP depacketization of QCELP
1273 - FLAC parser added
1274 - gradfun filter added
1275 - AMR-WB decoder
1276 - replace the ocv_smooth filter with a more generic ocv filter
1277 - Windows Televison (WTV) demuxer
1278 - FFmpeg metadata format muxer and demuxer
1279 - SubRip (srt) subtitle encoder and decoder
1280 - floating-point AC-3 encoder added
1281 - Lagarith decoder
1282 - ffmpeg -copytb option added
1283 - IVF muxer added
1284 - Wing Commander IV movies decoder added
1285 - movie source added
1286 - Bink version 'b' audio and video decoder
1287 - Bitmap Brothers JV playback system
1288 - Apple HTTP Live Streaming protocol handler
1289 - sndio support for playback and record
1290 - Linux framebuffer input device added
1291 - Chronomaster DFA decoder
1292 - DPX image encoder
1293 - MicroDVD subtitle file muxer and demuxer
1294 - Playstation Portable PMP format demuxer
1295 - fieldorder video filter added
1296 - AAC encoding via libvo-aacenc
1297 - AMR-WB encoding via libvo-amrwbenc
1298 - xWMA demuxer
1299 - Mobotix MxPEG decoder
1300 - VP8 frame-multithreading
1301 - NEON optimizations for VP8
1302 - Lots of deprecated API cruft removed
1303 - fft and imdct optimizations for AVX (Sandy Bridge) processors
1304 - showinfo filter added
1305 - SMPTE 302M AES3 audio decoder
1306 - Apple Core Audio Format muxer
1307 - 9bit and 10bit per sample support in the H.264 decoder
1308 - 9bit and 10bit FFV1 encoding / decoding
1309 - split filter added
1310 - select filter added
1311 - sdl output device added
1312 - libmpcodecs video filter support (3 times as many filters than before)
1313 - mpeg2 aspect ratio dection fixed
1314 - libxvid aspect pickiness fixed
1315 - Frame multithreaded decoding
1316 - E-AC-3 audio encoder
1317 - ac3enc: add channel coupling support
1318 - floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders.
1319 - H264/MPEG frame-level multi-threading
1320 - All av_metadata_* functions renamed to av_dict_* and moved to libavutil
1321 - 4:4:4 H.264 decoding support
1322 - 10-bit H.264 optimizations for x86
1323 - lut, lutrgb, and lutyuv filters added
1324 - buffersink libavfilter sink added
1325 - Bump libswscale for recently reported ABI break
1326 - New J2K encoder (via OpenJPEG)
1327
1328
1329 version 0.7:
1330
1331 - all the changes for 0.8, but keeping API/ABI compatibility with the 0.6 release
1332
1333
1334 version 0.6:
1335
1336 - PB-frame decoding for H.263
1337 - deprecated vhook subsystem removed
1338 - deprecated old scaler removed
1339 - VQF demuxer
1340 - Alpha channel scaler
1341 - PCX encoder
1342 - RTP packetization of H.263
1343 - RTP packetization of AMR
1344 - RTP depacketization of Vorbis
1345 - CorePNG decoding support
1346 - Cook multichannel decoding support
1347 - introduced avlanguage helpers in libavformat
1348 - 8088flex TMV demuxer and decoder
1349 - per-stream language-tags extraction in asfdec
1350 - V210 decoder and encoder
1351 - remaining GPL parts in AC-3 decoder converted to LGPL
1352 - QCP demuxer
1353 - SoX native format muxer and demuxer
1354 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
1355 - DPX image decoder
1356 - Electronic Arts Madcow decoder
1357 - DivX (XSUB) subtitle encoder
1358 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
1359 - experimental AAC encoder
1360 - RTP depacketization of ASF and RTSP from WMS servers
1361 - RTMP support in libavformat
1362 - noX handling for OPT_BOOL X options
1363 - Wave64 demuxer
1364 - IEC-61937 compatible Muxer
1365 - TwinVQ decoder
1366 - Bluray (PGS) subtitle decoder
1367 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
1368 - WMA Pro decoder
1369 - Core Audio Format demuxer
1370 - ATRAC1 decoder
1371 - MD STUDIO audio demuxer
1372 - RF64 support in WAV demuxer
1373 - MPEG-4 Audio Lossless Coding (ALS) decoder
1374 - -formats option split into -formats, -codecs, -bsfs, and -protocols
1375 - IV8 demuxer
1376 - CDG demuxer and decoder
1377 - R210 decoder
1378 - Auravision Aura 1 and 2 decoders
1379 - Deluxe Paint Animation playback system
1380 - SIPR decoder
1381 - Adobe Filmstrip muxer and demuxer
1382 - RTP depacketization of H.263
1383 - Bink demuxer and audio/video decoders
1384 - enable symbol versioning by default for linkers that support it
1385 - IFF PBM/ILBM bitmap decoder
1386 - concat protocol
1387 - Indeo 5 decoder
1388 - RTP depacketization of AMR
1389 - WMA Voice decoder
1390 - ffprobe tool
1391 - AMR-NB decoder
1392 - RTSP muxer
1393 - HE-AAC v1 decoder
1394 - Kega Game Video (KGV1) decoder
1395 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
1396 - RTP depacketization of Theora
1397 - HTTP Digest authentication
1398 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
1399 - Psygnosis YOP demuxer and video decoder
1400 - spectral extension support in the E-AC-3 decoder
1401 - unsharp video filter
1402 - RTP hinting in the mov/3gp/mp4 muxer
1403 - Dirac in Ogg demuxing
1404 - seek to keyframes in Ogg
1405 - 4:2:2 and 4:4:4 Theora decoding
1406 - 35% faster VP3/Theora decoding
1407 - faster AAC decoding
1408 - faster H.264 decoding
1409 - RealAudio 1.0 (14.4K) encoder
1410
1411
1412 version 0.5:
1413
1414 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
1415 - TechSmith Camtasia (TSCC) video decoder
1416 - IBM Ultimotion (ULTI) video decoder
1417 - Sierra Online audio file demuxer and decoder
1418 - Apple QuickDraw (qdrw) video decoder
1419 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
1420 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
1421 - Miro VideoXL (VIXL) video decoder
1422 - H.261 video encoder
1423 - QPEG video decoder
1424 - Nullsoft Video (NSV) file demuxer
1425 - Shorten audio decoder
1426 - LOCO video decoder
1427 - Apple Lossless Audio Codec (ALAC) decoder
1428 - Winnov WNV1 video decoder
1429 - Autodesk Animator Studio Codec (AASC) decoder
1430 - Indeo 2 video decoder
1431 - Fraps FPS1 video decoder
1432 - Snow video encoder/decoder
1433 - Sonic audio encoder/decoder
1434 - Vorbis audio decoder
1435 - Macromedia ADPCM decoder
1436 - Duck TrueMotion 2 video decoder
1437 - support for decoding FLX and DTA extensions in FLIC files
1438 - H.264 custom quantization matrices support
1439 - ffserver fixed, it should now be usable again
1440 - QDM2 audio decoder
1441 - Real Cooker audio decoder
1442 - TrueSpeech audio decoder
1443 - WMA2 audio decoder fixed, now all files should play correctly
1444 - RealAudio 14.4 and 28.8 decoders fixed
1445 - JPEG-LS decoder
1446 - build system improvements
1447 - tabs and trailing whitespace removed from the codebase
1448 - CamStudio video decoder
1449 - AIFF/AIFF-C audio format, encoding and decoding
1450 - ADTS AAC file reading and writing
1451 - Creative VOC file reading and writing
1452 - American Laser Games multimedia (*.mm) playback system
1453 - Zip Motion Blocks Video decoder
1454 - improved Theora/VP3 decoder
1455 - True Audio (TTA) decoder
1456 - AVS demuxer and video decoder
1457 - JPEG-LS encoder
1458 - Smacker demuxer and decoder
1459 - NuppelVideo/MythTV demuxer and RTjpeg decoder
1460 - KMVC decoder
1461 - MPEG-2 intra VLC support
1462 - MPEG-2 4:2:2 encoder
1463 - Flash Screen Video decoder
1464 - GXF demuxer
1465 - Chinese AVS decoder
1466 - GXF muxer
1467 - MXF demuxer
1468 - VC-1/WMV3/WMV9 video decoder
1469 - MacIntel support
1470 - AviSynth support
1471 - VMware video decoder
1472 - VP5 video decoder
1473 - VP6 video decoder
1474 - WavPack lossless audio decoder
1475 - Targa (.TGA) picture decoder
1476 - Vorbis audio encoder
1477 - Delphine Software .cin demuxer/audio and video decoder
1478 - Tiertex .seq demuxer/video decoder
1479 - MTV demuxer
1480 - TIFF picture encoder and decoder
1481 - GIF picture decoder
1482 - Intel Music Coder decoder
1483 - Zip Motion Blocks Video encoder
1484 - Musepack decoder
1485 - Flash Screen Video encoder
1486 - Theora encoding via libtheora
1487 - BMP encoder
1488 - WMA encoder
1489 - GSM-MS encoder and decoder
1490 - DCA decoder
1491 - DXA demuxer and decoder
1492 - DNxHD decoder
1493 - Gamecube movie (.THP) playback system
1494 - Blackfin optimizations
1495 - Interplay C93 demuxer and video decoder
1496 - Bethsoft VID demuxer and video decoder
1497 - CRYO APC demuxer
1498 - ATRAC3 decoder
1499 - V.Flash PTX decoder
1500 - RoQ muxer, RoQ audio encoder
1501 - Renderware TXD demuxer and decoder
1502 - extern C declarations for C++ removed from headers
1503 - sws_flags command line option
1504 - codebook generator
1505 - RoQ video encoder
1506 - QTRLE encoder
1507 - OS/2 support removed and restored again
1508 - AC-3 decoder
1509 - NUT muxer
1510 - additional SPARC (VIS) optimizations
1511 - Matroska muxer
1512 - slice-based parallel H.264 decoding
1513 - Monkey's Audio demuxer and decoder
1514 - AMV audio and video decoder
1515 - DNxHD encoder
1516 - H.264 PAFF decoding
1517 - Nellymoser ASAO decoder
1518 - Beam Software SIFF demuxer and decoder
1519 - libvorbis Vorbis decoding removed in favor of native decoder
1520 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
1521 - Ogg (Theora, Vorbis and FLAC) muxer
1522 - The "device" muxers and demuxers are now in a new libavdevice library
1523 - PC Paintbrush PCX decoder
1524 - Sun Rasterfile decoder
1525 - TechnoTrend PVA demuxer
1526 - Linux Media Labs MPEG-4 (LMLM4) demuxer
1527 - AVM2 (Flash 9) SWF muxer
1528 - QT variant of IMA ADPCM encoder
1529 - VFW grabber
1530 - iPod/iPhone compatible mp4 muxer
1531 - Mimic decoder
1532 - MSN TCP Webcam stream demuxer
1533 - RL2 demuxer / decoder
1534 - IFF demuxer
1535 - 8SVX audio decoder
1536 - non-recursive Makefiles
1537 - BFI demuxer
1538 - MAXIS EA XA (.xa) demuxer / decoder
1539 - BFI video decoder
1540 - OMA demuxer
1541 - MLP/TrueHD decoder
1542 - Electronic Arts CMV decoder
1543 - Motion Pixels Video decoder
1544 - Motion Pixels MVI demuxer
1545 - removed animated GIF decoder/demuxer
1546 - D-Cinema audio muxer
1547 - Electronic Arts TGV decoder
1548 - Apple Lossless Audio Codec (ALAC) encoder
1549 - AAC decoder
1550 - floating point PCM encoder/decoder
1551 - MXF muxer
1552 - DV100 AKA DVCPRO HD decoder and demuxer
1553 - E-AC-3 support added to AC-3 decoder
1554 - Nellymoser ASAO encoder
1555 - ASS and SSA demuxer and muxer
1556 - liba52 wrapper removed
1557 - SVQ3 watermark decoding support
1558 - Speex decoding via libspeex
1559 - Electronic Arts TGQ decoder
1560 - RV40 decoder
1561 - QCELP / PureVoice decoder
1562 - RV30 decoder
1563 - hybrid WavPack support
1564 - R3D REDCODE demuxer
1565 - ALSA support for playback and record
1566 - Electronic Arts TQI decoder
1567 - OpenJPEG based JPEG 2000 decoder
1568 - NC (NC4600) camera file demuxer
1569 - Gopher client support
1570 - MXF D-10 muxer
1571 - generic metadata API
1572 - flash ScreenVideo2 encoder
1573
1574
1575 version 0.4.9-pre1:
1576
1577 - DV encoder, DV muxer
1578 - Microsoft RLE video decoder
1579 - Microsoft Video-1 decoder
1580 - Apple Animation (RLE) decoder
1581 - Apple Graphics (SMC) decoder
1582 - Apple Video (RPZA) decoder
1583 - Cinepak decoder
1584 - Sega FILM (CPK) file demuxer
1585 - Westwood multimedia support (VQA & AUD files)
1586 - Id Quake II CIN playback support
1587 - 8BPS video decoder
1588 - FLIC playback support
1589 - RealVideo 2.0 (RV20) decoder
1590 - Duck TrueMotion v1 (DUCK) video decoder
1591 - Sierra VMD demuxer and video decoder
1592 - MSZH and ZLIB decoder support
1593 - SVQ1 video encoder
1594 - AMR-WB support
1595 - PPC optimizations
1596 - rate distortion optimal cbp support
1597 - rate distorted optimal ac prediction for MPEG-4
1598 - rate distorted optimal lambda->qp support
1599 - AAC encoding with libfaac
1600 - Sunplus JPEG codec (SP5X) support
1601 - use Lagrange multipler instead of QP for ratecontrol
1602 - Theora/VP3 decoding support
1603 - XA and ADX ADPCM codecs
1604 - export MPEG-2 active display area / pan scan
1605 - Add support for configuring with IBM XLC
1606 - floating point AAN DCT
1607 - initial support for zygo video (not complete)
1608 - RGB ffv1 support
1609 - new audio/video parser API
1610 - av_log() system
1611 - av_read_frame() and av_seek_frame() support
1612 - missing last frame fixes
1613 - seek by mouse in ffplay
1614 - noise reduction of DCT coefficients
1615 - H.263 OBMC & 4MV support
1616 - H.263 alternative inter vlc support
1617 - H.263 loop filter
1618 - H.263 slice structured mode
1619 - interlaced DCT support for MPEG-2 encoding
1620 - stuffing to stay above min_bitrate
1621 - MB type & QP visualization
1622 - frame stepping for ffplay
1623 - interlaced motion estimation
1624 - alternate scantable support
1625 - SVCD scan offset support
1626 - closed GOP support
1627 - SSE2 FDCT
1628 - quantizer noise shaping
1629 - G.726 ADPCM audio codec
1630 - MS ADPCM encoding
1631 - multithreaded/SMP motion estimation
1632 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
1633 - multithreaded/SMP decoding for MPEG-2
1634 - FLAC decoder
1635 - Metrowerks CodeWarrior suppport
1636 - H.263+ custom pcf support
1637 - nicer output for 'ffmpeg -formats'
1638 - Matroska demuxer
1639 - SGI image format, encoding and decoding
1640 - H.264 loop filter support
1641 - H.264 CABAC support
1642 - nicer looking arrows for the motion vector visualization
1643 - improved VCD support
1644 - audio timestamp drift compensation
1645 - MPEG-2 YUV 422/444 support
1646 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
1647 - better image scaling
1648 - H.261 support
1649 - correctly interleave packets during encoding
1650 - VIS optimized motion compensation
1651 - intra_dc_precision>0 encoding support
1652 - support reuse of motion vectors/MB types/field select values of the source video
1653 - more accurate deblock filter
1654 - padding support
1655 - many optimizations and bugfixes
1656 - FunCom ISS audio file demuxer and according ADPCM decoding
1657
1658
1659 version 0.4.8:
1660
1661 - MPEG-2 video encoding (Michael)
1662 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
1663 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
1664   and Mario Brito)
1665 - Xan DPCM audio decoder (Mario Brito)
1666 - Interplay MVE playback subsystem (Mike Melanson)
1667 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
1668
1669
1670 version 0.4.7:
1671
1672 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
1673   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
1674 - current version now also compiles with older GCC (Fabrice)
1675 - 4X multimedia playback system including 4xm file demuxer (Mike
1676   Melanson), and 4X video and audio codecs (Michael)
1677 - Creative YUV (CYUV) decoder (Mike Melanson)
1678 - FFV1 codec (our very simple lossless intra only codec, compresses much better
1679   than HuffYUV) (Michael)
1680 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
1681 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
1682   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
1683 - ffplay has been replaced with a newer version which uses SDL (optionally)
1684   for multiplatform support (Fabrice)
1685 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
1686   by anonymous
1687 - AMR format has been added (Johannes Carlsson)
1688 - 3GP support has been added (Johannes Carlsson)
1689 - VP3 codec has been added (Mike Melanson)
1690 - more MPEG-1/2 fixes
1691 - better multiplatform support, MS Visual Studio fixes (various)
1692 - AltiVec optimizations (Magnus Damn and others)
1693 - SH4 processor support has been added (BERO)
1694 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
1695 - VOB streaming support (Brian Foley)
1696 - better MP3 autodetection (Andriy Rysin)
1697 - qpel encoding (Michael)
1698 - 4mv+b frames encoding finally fixed (Michael)
1699 - chroma ME (Michael)
1700 - 5 comparison functions for ME (Michael)
1701 - B-frame encoding speedup (Michael)
1702 - WMV2 codec (unfinished - Michael)
1703 - user specified diamond size for EPZS (Michael)
1704 - Playstation STR playback subsystem, still experimental (Mike and Michael)
1705 - ASV2 codec (Michael)
1706 - CLJR decoder (Alex)
1707
1708 .. And lots more new enhancements and fixes.
1709
1710
1711 version 0.4.6:
1712
1713 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
1714   from scratch
1715 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
1716 - fix quantization bug in AC3 encoder
1717 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
1718 - added prototype ffplay program
1719 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
1720 - bug fix on MCBPC tables of H.263 (Juanjo)
1721 - bug fix on DC coefficients of H.263 (Juanjo)
1722 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
1723 - now we can decode H.263 streams found in QuickTime files (Juanjo)
1724 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
1725 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
1726 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
1727 - now H.263 picture size is returned on the first decoded frame (Juanjo)
1728 - added first regression tests
1729 - added MPEG-2 TS demuxer
1730 - new demux API for libav
1731 - more accurate and faster IDCT (Michael)
1732 - faster and entropy-controlled motion search (Michael)
1733 - two pass video encoding (Michael)
1734 - new video rate control (Michael)
1735 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
1736 - great performance improvement of video encoders and decoders (Michael)
1737 - new and faster bit readers and vlc parsers (Michael)
1738 - high quality encoding mode: tries all macroblock/VLC types (Michael)
1739 - added DV video decoder
1740 - preliminary RTP/RTSP support in ffserver and libavformat
1741 - H.263+ AIC decoding/encoding support (Juanjo)
1742 - VCD MPEG-PS mode (Juanjo)
1743 - PSNR stuff (Juanjo)
1744 - simple stats output (Juanjo)
1745 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
1746
1747
1748 version 0.4.5:
1749
1750 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
1751 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
1752 - added configure system (actually a small shell script)
1753 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
1754   Michael Hipp (temporary solution - waiting for integer only
1755   decoder)
1756 - fixed VIDIOCSYNC interrupt
1757 - added Intel H.263 decoding support ('I263' AVI fourCC)
1758 - added Real Video 1.0 decoding (needs further testing)
1759 - simplified image formats again. Added PGM format (=grey
1760   pgm). Renamed old PGM to PGMYUV.
1761 - fixed msmpeg4 slice issues (tell me if you still find problems)
1762 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
1763 - added support for MPlayer interface
1764 - added macroblock skip optimization
1765 - added MJPEG decoder
1766 - added mmx/mmxext IDCT from libmpeg2
1767 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
1768   <celer at shell.scrypt.net>)
1769 - added pixel format conversion layer (e.g. for MJPEG or PPM)
1770 - added deinterlacing option
1771 - MPEG-1/2 fixes
1772 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
1773 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
1774 - Windows porting of file converter
1775 - added MJPEG raw format (input/output)
1776 - added JPEG image format support (input/output)
1777
1778
1779 version 0.4.4:
1780
1781 - fixed some std header definitions (Bjorn Lindgren
1782   <bjorn.e.lindgren at telia.com>).
1783 - added MPEG demuxer (MPEG-1 and 2 compatible).
1784 - added ASF demuxer
1785 - added prototype RM demuxer
1786 - added AC3 decoding (done with libac3 by Aaron Holtzman)
1787 - added decoding codec parameter guessing (.e.g. for MPEG, because the
1788   header does not include them)
1789 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
1790   play them (only tested video)
1791 - fixed H.263 white bug
1792 - fixed phase rounding in img resample filter
1793 - add MMX code for polyphase img resample filter
1794 - added CPU autodetection
1795 - added generic title/author/copyright/comment string handling (ASF and RM
1796   use them)
1797 - added SWF demux to extract MP3 track (not usable yet because no MP3
1798   decoder)
1799 - added fractional frame rate support
1800 - codecs are no longer searched by read_header() (should fix ffserver
1801   segfault)
1802
1803
1804 version 0.4.3:
1805
1806 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
1807 - fixed raw yuv output
1808 - added motion rounding support in MPEG-4
1809 - fixed motion bug rounding in MSMPEG4
1810 - added B-frame handling in video core
1811 - added full MPEG-1 decoding support
1812 - added partial (frame only) MPEG-2 support
1813 - changed the FOURCC code for H.263 to "U263" to be able to see the
1814   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
1815   this +codec ;) (JuanJo).
1816 - Halfpel motion estimation after MB type selection (JuanJo)
1817 - added pgm and .Y.U.V output format
1818 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
1819   output.
1820 - added pgmpipe I/O format (original patch from Martin Aumueller
1821   <lists at reserv.at>, but changed completely since we use a format
1822   instead of a protocol)
1823
1824
1825 version 0.4.2:
1826
1827 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
1828   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
1829   missing. MSMPEG4 support is complete.
1830 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
1831   can decode ffmpeg MPEGs :-)).
1832 - added libavcodec API documentation (see apiexample.c).
1833 - fixed image polyphase bug (the bottom of some images could be
1834   greenish)
1835 - added support for non clipped motion vectors (decoding only)
1836   and image sizes non-multiple of 16
1837 - added support for AC prediction (decoding only)
1838 - added file overwrite confirmation (can be disabled with -y)
1839 - added custom size picture to H.263 using H.263+ (Juanjo)
1840
1841
1842 version 0.4.1:
1843
1844 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
1845   of AVI and ASF to DIV3.
1846 - added -me option to set motion estimation method
1847   (default=log). suppressed redundant -hq option.
1848 - added options -acodec and -vcodec to force a given codec (useful for
1849   AVI for example)
1850 - fixed -an option
1851 - improved dct_quantize speed
1852 - factorized some motion estimation code
1853
1854
1855 version 0.4.0:
1856
1857 - removing grab code from ffserver and moved it to ffmpeg. Added
1858   multistream support to ffmpeg.
1859 - added timeshifting support for live feeds (option ?date=xxx in the
1860   URL)
1861 - added high quality image resize code with polyphase filter (need
1862   mmx/see optimization). Enable multiple image size support in ffserver.
1863 - added multi live feed support in ffserver
1864 - suppressed master feature from ffserver (it should be done with an
1865   external program which opens the .ffm url and writes it to another
1866   ffserver)
1867 - added preliminary support for video stream parsing (WAV and AVI half
1868   done). Added proper support for audio/video file conversion in
1869   ffmpeg.
1870 - added preliminary support for video file sending from ffserver
1871 - redesigning I/O subsystem: now using URL based input and output
1872   (see avio.h)
1873 - added WAV format support
1874 - added "tty user interface" to ffmpeg to stop grabbing gracefully
1875 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
1876   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
1877 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
1878 - added new motion estimation algorithms, log and phods (Juanjo)
1879 - changed directories: libav for format handling, libavcodec for
1880   codecs
1881
1882
1883 version 0.3.4:
1884
1885 - added stereo in MPEG audio encoder
1886
1887
1888 version 0.3.3:
1889
1890 - added 'high quality' mode which use motion vectors. It can be used in
1891   real time at low resolution.
1892 - fixed rounding problems which caused quality problems at high
1893   bitrates and large GOP size
1894
1895
1896 version 0.3.2: small fixes
1897
1898 - ASF fixes
1899 - put_seek bug fix
1900
1901
1902 version 0.3.1: added avi/divx support
1903
1904 - added AVI support
1905 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
1906 - added sound for flash format (not tested)
1907
1908
1909 version 0.3: initial public release