avformat/concat: Check protocol prefix
[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.6.7:
5 - configure: bump copyright year to 2016
6 - avformat/hls: Even stricter URL checks
7 - avformat/hls: More strict url checks
8 - swscale/utils: Detect and skip unneeded sws_setColorspaceDetails() calls
9 - swscale/yuv2rgb: Increase YUV2RGB table headroom
10 - swscale/yuv2rgb: Factor YUVRGB_TABLE_LUMA_HEADROOM out
11 - avformat/hls: forbid all protocols except http(s) & file
12 - avformat/aviobuf: Fix end check in put_str16()
13 - avformat/asfenc: Check pts
14 - avcodec/mpeg4video: Check time_incr
15 - avcodec/wavpackenc: Check the number of channels
16 - avcodec/wavpackenc: Headers are per channel
17 - avcodec/dvdec: Fix "left shift of negative value -254"
18 - avcodec/mjpegdec: Fix negative shift
19 - avcodec/mss2: Check for repeat overflow
20 - avformat: Add integer fps from 31 to 60 to get_std_framerate()
21 - avcodec/mpegvideo_enc: Clip bits_per_raw_sample within valid range
22 - avfilter/vf_scale: set proper out frame color range
23 - avcodec/motion_est: Fix mv_penalty table size
24 - avcodec/h264_slice: Fix integer overflow in implicit weight computation
25 - swscale/utils: Use normal bilinear scaler if fast cannot be used due to tiny dimensions
26 - avcodec/put_bits: Always check buffer end before writing
27 - mjpegdec: extend check for incompatible values of s->rgb and s->ls
28 - swscale/utils: Fix intermediate format for cascaded alpha downscaling
29 - x86/float_dsp: zero extend offset from ff_scalarproduct_float_sse
30
31
32 version 2.6.6:
33 - nuv: sanitize negative fps rate
34 - rawdec: only exempt BIT0 with need_copy from buffer sanity check
35 - mlvdec: check that index_entries exist
36 - nutdec: reject negative value_len in read_sm_data
37 - xwddec: prevent overflow of lsize * avctx->height
38 - nutdec: only copy the header if it exists
39 - exr: fix out of bounds read in get_code
40 - on2avc: limit number of bits to 30 in get_egolomb
41 - avcodec/mpeg4videodec: also for empty partitioned slices
42 - avcodec/h264_refs: Fix long_idx check
43 - avfilter/vf_mpdecimate: Add missing emms_c()
44 - avformat/mxfenc: Do not crash if there is no packet in the first stream
45 - avformat/utils: estimate_timings_from_pts - increase retry counter, fixes invalid duration for ts files with hevc codec
46 - avformat/matroskaenc: Check codecdelay before use
47 - avutil/mathematics: Fix division by 0
48 - avcodec/hevc: Check max ctb addresses for WPP
49 - avcodec/vp3: ensure header is parsed successfully before tables
50 - avcodec/jpeg2000dec: Check bpno in decode_cblk()
51 - avcodec/pgssubdec: Fix left shift of 255 by 24 places cannot be represented in type int
52 - swscale/utils: Fix for runtime error: left shift of negative value -1
53 - avcodec/hevc: Fix integer overflow of entry_point_offset
54 - avcodec/dirac_parser: Add basic validity checks for next_pu_offset and prev_pu_offset
55 - avcodec/dirac_parser: Fix potential overflows in pointer checks
56 - avcodec/wmaprodec: Check bits per sample to be within the range not causing integer overflows
57 - avcodec/wmaprodec: Fix overflow of cutoff
58 - avformat/smacker: fix integer overflow with pts_inc
59 - avcodec/vp3: Fix "runtime error: left shift of negative value"
60 - mpegencts: Fix overflow in cbr mode period calculations
61 - avutil/timecode: Fix fps check
62 - avutil/mathematics: return INT64_MIN (=AV_NOPTS_VALUE) from av_rescale_rnd() for overflows
63 - avcodec/apedec: Check length in long_filter_high_3800()
64 - avcodec/vp3: always set pix_fmt in theora_decode_header()
65 - avutil/mathematics: Do not treat INT64_MIN as positive in av_rescale_rnd
66 - avutil/integer: Fix av_mod_i() with negative dividend
67 - avformat/dump: Fix integer overflow in av_dump_format()
68 - avcodec/utils: Clear dimensions in ff_get_buffer() on failure
69 - avcodec/utils: Use 64bit for aspect ratio calculation in avcodec_string()
70 - avcodec/vp3: Clear context on reinitialization failure
71 - avcodec/hevc: allocate entries unconditionally
72 - avcodec/hevc_cabac: Fix multiple integer overflows
73 - avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_encode*()
74 - avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_decode*()
75 - avcodec/hevc: Check entry_point_offsets
76 - avcodec/cabac: Check initial cabac decoder state
77 - avcodec/cabac_functions: Fix "left shift of negative value -31767"
78 - avcodec/h264_slice: Limit max_contexts when slice_context_count is initialized
79 - avcodec/vp8: Do not use num_coeff_partitions in thread/buffer setup
80 - avcodec/mpeg4videodec: Check available data before reading custom matrix
81 - mjpegdec: consider chroma subsampling in size check
82 - avcodec/dirac_parser: Check that there is a previous PU before accessing it
83 - sonic: make sure num_taps * channels is not larger than frame_size
84 - opus_silk: fix typo causing overflow in silk_stabilize_lsf
85 - ffm: reject invalid codec_id and codec_type
86 - golomb: always check for invalid UE golomb codes in get_ue_golomb
87 - aaccoder: prevent crash of anmr coder
88 - ffmdec: reject zero-sized chunks
89 - swscale/x86/rgb2rgb_template: Fallback to mmx in interleaveBytes() if the alignment is insufficient for SSE*
90 - swscale/x86/rgb2rgb_template: Do not crash on misaligend stride
91 - avcodec/ffv1dec: Clear quant_table_count if its invalid
92 - avcodec/ffv1dec: Print an error if the quant table count is invalid
93 - doc/filters/drawtext: fix centering example
94 - mxfdec: check edit_rate also for physical_track
95 - mpegvideo: clear overread in clear_context
96 - dvdsubdec: validate offset2 similar to offset1
97 - aacdec: don't return frames without data from aac_decode_er_frame
98 - avcodec/takdec: Use memove, avoid undefined memcpy() use
99 - riffdec: prevent negative bit rate
100 - Merge commit 'd80811c94e068085aab797f9ba35790529126f85'
101 - s302m: fix arithmetic exception
102 - avcodec/s302m: Only set the sample rate when some data is output
103 - vp9: add support for resolution changes in inter frames.
104
105
106 version 2.6.5:
107 - rtmpcrypt: Do the xtea decryption in little endian mode
108 - avformat/matroskadec: Check subtitle stream before dereferencing
109 - avformat/utils: Do not init parser if probing is unfinished
110 - avcodec/jpeg2000dec: Fix potential integer overflow with tile dimensions
111 - avcodec/jpeg2000dec: Check SIZ dimensions to be within the supported range
112 - avcodec/jpeg2000: Check comp coords to be within the supported size
113 - avcodec/jpeg2000: Use av_image_check_size() in ff_jpeg2000_init_component()
114 - avcodec/wmaprodec: Check for overread in decode_packet()
115 - avcodec/smacker: Check that the data size is a multiple of a sample vector
116 - avcodec/takdec: Skip last p2 sample (which is unused)
117 - avcodec/dxtory: Fix input size check in dxtory_decode_v1_410()
118 - avcodec/dxtory: Fix input size check in dxtory_decode_v1_420()
119 - avcodec/error_resilience: avoid accessing previous or next frames tables beyond height
120 - avcodec/dpx: Move need_align to act per line
121 - avcodec/flashsv: Check size before updating it
122 - avcodec/ivi: Check image dimensions
123 - avcodec/utils: Better check for channels in av_get_audio_frame_duration()
124 - avcodec/jpeg2000dec: Check for duplicate SIZ marker
125 - doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.
126 - ffmpeg: Don't try and write sdp info if none of the outputs had an rtp format.
127 - jvdec: avoid unsigned overflow in comparison
128 - avcodec/jpeg2000dec: Clip all tile coordinates
129 - avcodec/hevc_ps: Check chroma_format_idc
130 - avcodec/microdvddec: Check for string end in 'P' case
131 - avcodec/dirac_parser: Fix undefined memcpy() use
132 - avformat/xmv: Discard remainder of packet on error
133 - avformat/xmv: factor return check out of if/else
134 - avcodec/mpeg12dec: Do not call show_bits() with invalid bits
135 - libavutil/channel_layout: Check strtol*() for failure
136 - avcodec/ffv1dec: Check for 0 quant tables
137 - avcodec/mjpegdec: Reinitialize IDCT on BPP changes
138 - avcodec/mjpegdec: Check index in ljpeg_decode_yuv_scan() before using it
139 - avutil/file_open: avoid file handle inheritance on Windows
140 - opusdec: Don't run vector_fmul_scalar on zero length arrays
141 - avcodec/ffv1: Initialize vlc_state on allocation
142 - avcodec/ffv1dec: update progress in case of broken pointer chains
143 - avcodec/ffv1dec: Clear slice coordinates if they are invalid or slice header decoding fails for other reasons
144 - avformat/httpauth: Add space after commas in HTTP/RTSP auth header
145 - avcodec/x86/sbrdsp: Fix using uninitialized upper 32bit of noise
146 - avcodec/ffv1dec: Fix off by 1 error in quant_table_count check
147 - avcodec/ffv1dec: Explicitly check read_quant_table() return value
148 - avcodec/rangecoder: Check e
149 - lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.
150 - avcodec/mjpegdec: Fix decoding RGBA RCT LJPEG
151 - avfilter/af_asyncts: use llabs for int64_t
152 - avcodec/g2meet: Also clear tile dimensions on header_fail
153 - avcodec/g2meet: Fix potential overflow in tile dimensions check
154 - avcodec/svq1dec: Check init_get_bits8() for failure
155 - avcodec/tta: Check init_get_bits8() for failure
156 - avcodec/vp3: Check init_get_bits8() for failure
157 - swresample/swresample: Fix integer overflow in seed calculation
158 - avformat/mov: Fix integer overflow in FFABS
159 - avutil/common: Add FFNABS()
160 - avutil/common: Document FFABS() corner case
161 - avformat/dump: Fix integer overflow in aspect ratio calculation
162 - avcodec/truemotion1: Check for even width
163 - avcodec/mpeg12dec: Set dimensions in mpeg1_decode_sequence() only in absence of errors
164 - avcodec/libopusenc: Fix infinite loop on flushing after 0 input
165 - avformat/hevc: Check num_long_term_ref_pics_sps to avoid potentially long loops
166 - avformat/hevc: Fix parsing errors
167 - ffmpeg: Use correct codec_id for av_parser_change() check
168 - ffmpeg: Check av_parser_change() for failure
169 - ffmpeg: Check for RAWVIDEO and do not relay only on AVFMT_RAWPICTURE
170 - ffmpeg: check avpicture_fill() return value
171 - avformat/mux: Update sidedata in ff_write_chained()
172 - avcodec/flashsvenc: Correct max dimension in error message
173 - avcodec/svq1enc: Check dimensions
174 - avcodec/dcaenc: clear bitstream end
175 - libavcodec/aacdec_template: Use init_get_bits8() in aac_decode_frame()
176 - rawdec: fix mjpeg probing buffer size check
177 - rawdec: fix mjpeg probing
178 - videodsp: don't overread edges in vfix3 emu_edge.
179 - lavf/matroskadec: Fully parse and repack MP3 packets
180 - avcodec/h264_mp4toannexb_bsf: Reorder operations in nal_size check
181 - avformat/oggenc: Check segments_count for headers too
182 - avformat/avidec: Workaround broken initial frame
183 - hevc: properly handle no_rasl_output_flag when removing pictures from the DPB
184 - hevc: fix wpp threading deadlock.
185 - avcodec/ffv1: separate slice_count from max_slice_count
186 - lavf/img2dec: Fix memory leak
187 - avcodec/mp3: fix skipping zeros
188 - avformat/srtdec: make sure we probe a number
189 - avformat/srtdec: more lenient first line probing
190 - doc: mention libavcodec can decode Opus natively
191 - MAINTAINERS: Remove myself as leader
192
193
194 version 2.6.4:
195 - imc: use correct position for flcoeffs2 calculation
196 - hevc: check slice address length
197 - snow: remove an obsolete av_assert2
198 - webp: fix infinite loop in webp_decode_frame
199 - wavpack: limit extra_bits to 32 and use get_bits_long
200 - ffmpeg: only count got_output/errors in decode_error_stat
201 - ffmpeg: exit_on_error if decoding a packet failed
202 - pthread_frame: forward error codes when flushing
203 - huffyuvdec: validate image size
204 - wavpack: use get_bits_long to read up to 32 bits
205 - nutdec: check maxpos in read_sm_data before returning success
206 - vc1dec: use get_bits_long and limit the read bits to 32
207 - mpegaudiodec: copy AVFloatDSPContext from first context to all contexts
208 - avcodec/vp8: Check buffer size in vp8_decode_frame_header()
209 - avcodec/vp8: Fix null pointer dereference in ff_vp8_decode_free()
210 - avcodec/diracdec: Check for hpel_base allocation failure
211 - avcodec/rv34: Clear pointers in ff_rv34_decode_init_thread_copy()
212 - avfilter/af_aresample: Check ff_all_* for allocation failures
213 - avcodec/pthread_frame: clear priv_data, avoid stale pointer in error case
214 - swscale/utils: Clear pix buffers
215 - avutil/fifo: Fix the case where func() returns less bytes than requested in av_fifo_generic_write()
216 - ffmpeg: Fix cleanup after failed allocation of output_files
217 - avformat/mov: Fix deallocation when MOVStreamContext failed to allocate
218 - ffmpeg: Fix crash with ost->last_frame allocation failure
219 - ffmpeg: Fix cleanup with ost = NULL
220 - avcodec/pthread_frame: check avctx on deallocation
221 - avcodec/sanm: Reset sizes in destroy_buffers()
222 - avcodec/alac: Clear pointers in allocate_buffers()
223 - bytestream2: set the reader to the end when reading more than available
224 - avcodec/utils: use a minimum 32pixel width in  avcodec_align_dimensions2() for H.264
225 - avcodec/mpegvideo: Clear pointers in ff_mpv_common_init()
226 - oggparsedirac: check return value of init_get_bits
227 - wmalosslessdec: reset frame->nb_samples on packet loss
228 - wmalosslessdec: avoid reading 0 bits with get_bits
229 - avcodec/rawenc: Use ff_alloc_packet() instead of ff_alloc_packet2()
230 - avcodec/aacsbr: Assert that bs_num_env is positive
231 - avcodec/aacsbr: check that the element type matches before applying SBR
232 - avcodec/h264_slice: Use w/h from the AVFrame instead of mb_w/h
233 - vp9/update_prob: prevent out of bounds table read
234 - avfilter/vf_transpose: Fix rounding error
235 - avcodec/pngdec: Check values before updating context in decode_fctl_chunk()
236 - avcodec/pngdec: Require a IHDR chunk before fctl
237 - avcodec/pngdec: Only allow one IHDR chunk
238 - wmavoice: limit wmavoice_decode_packet return value to packet size
239 - swscale/swscale_unscaled: Fix rounding difference with RGBA output between little and big endian
240 - ffmpeg: Do not use the data/size of a bitstream filter after failure
241 - swscale/x86/rgb2rgb_template: fix signedness of v in shuffle_bytes_2103_{mmx,mmxext}
242 - swscale/x86/rgb2rgb_template: add missing xmm clobbers
243 - vda: unlock the pixel buffer base address.
244 - swscale/rgb2rgb_template: Fix signedness of v in shuffle_bytes_2103_c()
245 - swscale/rgb2rgb_template: Implement shuffle_bytes_0321_c and fix shuffle_bytes_2103_c on BE
246 - swscale/rgb2rgb_template: Disable shuffle_bytes_2103_c on big endian
247 - swr: Remember previously set int_sample_format from user
248 - matroskadec: check audio sample rate
249 - matroskadec: validate audio channels and bitdepth
250 - avcodec/dpxenc: implement write16/32 as functions
251 - postproc: fix unaligned access
252 - ffmpeg: Free last_frame instead of just unref
253 - avio: fix potential crashes when combining ffio_ensure_seekback + crc
254 - examples/demuxing_decoding: use properties from frame instead of video_dec_ctx
255 - h264: er: Copy from the previous reference only if compatible
256 - sonic: set avctx->channels in sonic_decode_init
257 - vp8: change mv_{min,max}.{x,y} type to int
258 - vp9: change type of tile_size from unsigned to int64_t
259 - arm: only enable setend on ARMv6
260 - libopenjpegdec: check existence of image component data
261 - mov: abort on EOF in ff_mov_read_chan
262 - ffmpeg_opt: Check for localtime() failure
263 - avformat: Fix bug in parse_rps for HEVC.
264 - takdec: ensure chan2 is a valid channel index
265 - avcodec/h264_slice: Use AVFrame diemensions for grayscale handling
266 - avdevice/lavfi: do not rescale AV_NOPTS_VALUE in lavfi_read_packet()
267 - libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing 'c'.
268 - avcodec/jpeg2000dec: Check that coords match before applying ICT
269 - avformat/ffmdec: Check ffio_set_buf_size() return value
270 - avcodec/adpcm: Check for overreads
271 - avcodec/alsdec: Check for overread
272 - avcodec/atrac3plusdec: consume only as many bytes as available
273 - libavutil/softfloat: Fix av_normalize1_sf bias.
274 - swresample/swresample: Cleanup on init failure.
275 - Revert "avformat/rtpenc: check av_packet_get_side_data() return, fix null ptr dereference"
276 - avformat/mxfenc: Accept MXF D-10 with 49.999840 Mbit/sec
277 - swresample/dither: check memory allocation
278 - libopenjpegenc: add NULL check for img before accessing it
279 - swresample: Check the return value of resampler->init()
280 - h264: Make sure reinit failures mark the context as not initialized
281 - avfilter/x86/vf_fspp: Fix invalid combination of opcode and operands
282 - ffmpeg_opt: Set the video VBV parameters only for the video stream from -target
283 - avcodec/bitstream: Assert that there is enough space left in avpriv_copy_bits()
284 - avcodec/put_bits: Assert that there is enough space left in skip_put_bytes()
285 - avcodec/mpegvideo_enc: Update the buffer size as more slices are merged
286 - avcodec/put_bits: Update size_in_bits in set_put_bits_buffer_size()
287 - avformat/wavdec: Increase dts packet threshold to fix more misdetections
288 - avformat/wavdec: Increase probe_packets limit
289 - nutdec: abort if EOF is reached in decode_info_header/read_sm_data
290 - nutdec: stop skipping bytes at EOF
291 - nutdec: fix infinite resync loops
292 - avformat/nutdec: Check X in 2nd branch of index reading
293 - avformat/nutdec: Fix recovery when immedeately after seeking a failure happens
294 - avformat/nutdec: Return error on EOF from get_str()
295 - rtsp: Make sure we don't write too many transport entries into a fixed-size array
296 - rtpenc_jpeg: handle case of picture dimensions not dividing by 8
297 - avcodec/golomb: get_ur_golomb_jpegls: Fix reading huge k values
298 - avformat/swfdec: Do not error out on pixel format changes
299 - avformat/mov: Mark avio context of decompressed atoms as seekable
300 - avcodec/mjpegenc_common: Use ff_mpv_reallocate_putbitbuffer()
301 - avcodec/mpegvideo: Factor ff_mpv_reallocate_putbitbuffer() out
302 - avfilter/x86/vf_hqdn3d: Fix register types
303 - avcodec/exr: fix crash caused by merge
304 - avcodec/x86/h264_weight: handle weight1=128
305 - avcodec/dvbsubdec: Fix buf_size check in dvbsub_parse_display_definition_segment()
306 - avcodec/hevc_ps: Only discard overread VPS if a previous is available
307 - avcodec/flacenc: Fix Invalid Rice order
308 - lavd/xcbgrab: fix comparison with screen size.
309
310 version 2.6.3:
311 - avcodec/libtheoraenc: Check for av_malloc failure
312 - ffmpeg_opt: Fix -timestamp parsing
313 - hevc: make avcodec_decode_video2() fail if get_format() fails
314 - avcodec/cavsdec: Use ff_set_dimensions()
315 - swr: fix alignment issue caused by 8ch sse functions
316 - avcodec/mjpegdec: fix len computation in ff_mjpeg_decode_dqt()
317 - avcodec/jpeg2000dec: fix boolean operator
318 - avcodec/hevc_ps: Explicitly check num_tile_* for negative values
319 - avformat/matroskadec: Cleanup error handling for bz2 & zlib
320 - avformat/nutdec: Fix use of uinitialized value
321 - tools/graph2dot: use larger data types than int for array/string sizes
322 - avformat/matroskaenc: Check ff_vorbiscomment_length in put_flac_codecpriv()
323 - avcodec/mpeg12dec: use the correct dimensions for checking SAR
324 - xcbgrab: Validate the capture area
325 - xcbgrab: Do not assume the non shm image data is always available
326 - avfilter/lavfutils: disable frame threads when decoding a single image
327 - avformat/mov: Do not read ACLR into extradata for H.264
328 - ffmpeg: remove incorrect network deinit
329 - OpenCL: Avoid potential buffer overflow in cmdutils_opencl.c
330 - libvpxenc: only set noise reduction w/vp8
331 - vp9: remove another optimization branch in iadst16 which causes overflows.
332 - lavf: Reset global flag on deinit
333 - network: Do not leave context locked on error
334 - vp9: remove one optimization branch in iadst16 which causes overflows.
335 - fate: Include branch information in the payload header
336 - avformat/utils: Ensure that AVFMT_FLAG_CUSTOM_IO is set before use
337 - avformat/img2dec: do not rewind custom io buffers
338 - avcodec/alsdec: Use av_mallocz_array() for chan_data to ensure the arrays never contain random data
339 - avcodec/atrac3plusdsp: fix on stack alignment
340 - swresample/swresample-test: Randomly wipe out channel counts
341 - swresample: Check channel layouts and channels against each other and print human readable error messages
342 - swresample: Allow reinitialization without ever setting channel layouts (cherry picked from commit 80a28c7509a11114e1aea5b208d56c6646d69c07)
343 - swresample: Allow reinitialization without ever setting channel counts
344 - dashenc: replace attribute id with contentType for the AdaptationSet element
345 - avformat/matroskaenc: Use avoid_negative_ts_use_pts if no stream writes dts
346 - avformat/mux: Add avoid_negative_ts_use_pts
347 - tests/fate-run: do not attempt to parse tiny_psnrs output if it failed
348 - cafdec: free extradata before allocating it
349 - imgutils: initialize palette padding bytes in av_image_alloc
350 - aacdec: don't return frames without data
351 - id3v2: catch avio_read errors in check_tag
352 - avi: Validate sample_size
353 - aacsbr: break infinite loop in sbr_hf_calc_npatches
354 - diracdec: avoid overflow of bytes*8 in decode_lowdelay
355 - diracdec: prevent overflow in data_unit_size check
356 - avformat/matroskadec: Use tracks[k]->stream instead of s->streams[k]
357 - matroskadec: use uint64_t instead of int for index_scale
358 - pngdec: don't use AV_PIX_FMT_MONOBLACK for apng
359 - pngdec: return correct error code from decode_frame_common
360 - nutdec: fix illegal count check in decode_main_header
361 - nutdec: fix memleaks on error in nut_read_header
362 - apedec: prevent out of array writes in decode_array_0000
363 - apedec: set s->samples only when init_frame_decoder succeeded
364 - swscale/ppc/swscale_altivec.c: POWER LE support in yuv2planeX_8() delete macro GET_VF() it was wrong
365 - alac: reject rice_limit 0 if compression is used
366 - alsdec: only adapt order for positive max_order
367 - bink: check vst->index_entries before using it
368 - mpeg4videodec: only allow a positive length
369 - aacpsy: correct calculation of minath in psy_3gpp_init
370 - alsdec: validate time diff index
371 - alsdec: ensure channel reordering is reversible
372 - ac3: validate end in ff_ac3_bit_alloc_calc_mask
373 - aacpsy: avoid psy_band->threshold becoming NaN
374 - aasc: return correct buffer size from aasc_decode_frame
375 - matroskadec: export cover art correctly
376 - mxfenc: don't try to write footer without header
377 - mxfenc: fix memleaks in mxf_write_footer
378 - rtpenc_mpegts: Set chain->rtp_ctx only after avformat_write_header succeeded
379 - rtpenc_mpegts: Free the right ->pb in the error path in the init function
380
381 version 2.6.2:
382 - avcodec/h264: Do not fail with randomly truncated VUIs
383 - avcodec/h264_ps: Move truncation check from VUI to SPS
384 - avcodec/h264: Be more tolerant to changing pps id between slices
385 - avcodec/aacdec: Fix storing state before PCE decode
386 - avcodec/h264: reset the counts in the correct context
387 - avcodec/h264_slice: Do not reset mb_aff_frame per slice
388 - avcodec/h264: finish previous slices before switching to single thread mode
389 - avcodec/h264: Fix race between slices where one overwrites data from the next
390 - avformat/utils: avoid discarded streams in av_find_default_stream_index()
391 - ffmpeg: Fix extradata allocation
392 - avcodec/h264_refs: Do not set reference to things which do not exist
393 - avcodec/h264: Fail for invalid mixed IDR / non IDR frames in slice threading mode
394 - Revert "avcodec/exr: fix memset first arg in reverse_lut()"
395 - h264: avoid unnecessary calls to get_format
396 - avutil/pca: Check for av_malloc* failures
397 - avutil/cpu: add missing check for mmxext to av_force_cpu_flags
398 - lavc/dnxhd: Fix pix_fmt change.
399 - avformat/http: replace cookies with updated values instead of appending forever
400 - avformat/hls: store cookies returned in HLS key response
401 - avformat/rmdec: fix support for 0 sized mdpr
402 - avcodec/msrledec: restructure msrle_decode_pal4() based on the line number instead of the pixel pointer
403 - avcodec/hevc_ps: Check cropping parameters more correctly
404 - hevc: make the crop sizes unsigned
405 - avcodec/dnxhddec: Reset is_444 if format is not 444
406 - avcodec/dnxhddec: Check that the frame is interlaced before using cur_field
407 - mips/float_dsp: fix vector_fmul_window_mips on mips64
408 - doc: Remove non-existing decklink options.
409
410 version 2.6.1:
411 - avformat/mov: Disallow ".." in dref unless use_absolute_path is set
412 - avfilter/palettegen: make sure at least one frame was sent to the filter
413 - avformat/mov: Check for string truncation in mov_open_dref()
414 - ac3_fixed: fix out-of-bound read
415 - mips/asmdefs: use _ABI64 as defined by gcc
416 - hevc: delay ff_thread_finish_setup for hwaccel
417 - avcodec/012v: Check dimensions more completely
418 - asfenc: fix leaking asf->index_ptr on error
419 - roqvideoenc: set enc->avctx in roq_encode_init
420 - avcodec/options_table: remove extradata_size from the AVOptions table
421 - ffmdec: limit the backward seek to the last resync position
422 - Add dependencies to configure file for vf_fftfilt
423 - ffmdec: make sure the time base is valid
424 - ffmdec: fix infinite loop at EOF
425 - ffmdec: initialize f_cprv, f_stvi and f_stau
426 - arm: Suppress tags about used cpu arch and extensions
427 - mxfdec: Fix the error handling for when strftime fails
428 - avcodec/opusdec: Fix delayed sample value
429 - avcodec/opusdec: Clear out pointers per packet
430 - avcodec/utils: Align YUV411 by as much as the other YUV variants
431 - lavc/hevcdsp: Fix compilation for arm with --disable-neon.
432 - vp9: fix segmentation map retention with threading enabled.
433 - Revert "avutil/opencl: is_compiled flag not being cleared in av_opencl_uninit"
434
435 version 2.6:
436 - nvenc encoder
437 - 10bit spp filter
438 - colorlevels filter
439 - RIFX format for *.wav files
440 - RTP/mpegts muxer
441 - non continuous cache protocol support
442 - tblend filter
443 - cropdetect support for non 8bpp, absolute (if limit >= 1) and relative (if limit < 1.0) threshold
444 - Camellia symmetric block cipher
445 - OpenH264 encoder wrapper
446 - VOC seeking support
447 - Closed caption Decoder
448 - fspp, uspp, pp7 MPlayer postprocessing filters ported to native filters
449 - showpalette filter
450 - Twofish symmetric block cipher
451 - Support DNx100 (960x720@8)
452 - eq2 filter ported from libmpcodecs as eq filter
453 - removed libmpcodecs
454 - Changed default DNxHD colour range in QuickTime .mov derivatives to mpeg range
455 - ported softpulldown filter from libmpcodecs as repeatfields filter
456 - dcshift filter
457 - RTP depacketizer for loss tolerant payload format for MP3 audio (RFC 5219)
458 - RTP depacketizer for AC3 payload format (RFC 4184)
459 - palettegen and paletteuse filters
460 - VP9 RTP payload format (draft 0) experimental depacketizer
461 - RTP depacketizer for DV (RFC 6469)
462 - DXVA2-accelerated HEVC decoding
463 - AAC ELD 480 decoding
464 - Intel QSV-accelerated H.264 decoding
465 - DSS SP decoder and DSS demuxer
466 - Fix stsd atom corruption in DNxHD QuickTimes
467 - Canopus HQX decoder
468 - RTP depacketization of T.140 text (RFC 4103)
469 - Port MIPS optimizations to 64-bit
470
471
472 version 2.5:
473 - HEVC/H.265 RTP payload format (draft v6) packetizer
474 - SUP/PGS subtitle demuxer
475 - ffprobe -show_pixel_formats option
476 - CAST128 symmetric block cipher, ECB mode
477 - STL subtitle demuxer and decoder
478 - libutvideo YUV 4:2:2 10bit support
479 - XCB-based screen-grabber
480 - UDP-Lite support (RFC 3828)
481 - xBR scaling filter
482 - AVFoundation screen capturing support
483 - ffserver supports codec private options
484 - creating DASH compatible fragmented MP4, MPEG-DASH segmenting muxer
485 - WebP muxer with animated WebP support
486 - zygoaudio decoding support
487 - APNG demuxer
488 - postproc visualization support
489
490
491 version 2.4:
492 - Icecast protocol
493 - ported lenscorrection filter from frei0r filter
494 - large optimizations in dctdnoiz to make it usable
495 - ICY metadata are now requested by default with the HTTP protocol
496 - support for using metadata in stream specifiers in fftools
497 - LZMA compression support in TIFF decoder
498 - H.261 RTP payload format (RFC 4587) depacketizer and experimental packetizer
499 - HEVC/H.265 RTP payload format (draft v6) depacketizer
500 - added codecview filter to visualize information exported by some codecs
501 - Matroska 3D support thorugh side data
502 - HTML generation using texi2html is deprecated in favor of makeinfo/texi2any
503 - silenceremove filter
504
505
506 version 2.3:
507 - AC3 fixed-point decoding
508 - shuffleplanes filter
509 - subfile protocol
510 - Phantom Cine demuxer
511 - replaygain data export
512 - VP7 video decoder
513 - Alias PIX image encoder and decoder
514 - Improvements to the BRender PIX image decoder
515 - Improvements to the XBM decoder
516 - QTKit input device
517 - improvements to OpenEXR image decoder
518 - support decoding 16-bit RLE SGI images
519 - GDI screen grabbing for Windows
520 - alternative rendition support for HTTP Live Streaming
521 - AVFoundation input device
522 - Direct Stream Digital (DSD) decoder
523 - Magic Lantern Video (MLV) demuxer
524 - On2 AVC (Audio for Video) decoder
525 - support for decoding through DXVA2 in ffmpeg
526 - libbs2b-based stereo-to-binaural audio filter
527 - libx264 reference frames count limiting depending on level
528 - native Opus decoder
529 - display matrix export and rotation API
530 - WebVTT encoder
531 - showcqt multimedia filter
532 - zoompan filter
533 - signalstats filter
534 - hqx filter (hq2x, hq3x, hq4x)
535 - flanger filter
536 - Image format auto-detection
537 - LRC demuxer and muxer
538 - Samba protocol (via libsmbclient)
539 - WebM DASH Manifest muxer
540 - libfribidi support in drawtext
541
542
543 version 2.2:
544
545 - HNM version 4 demuxer and video decoder
546 - Live HDS muxer
547 - setsar/setdar filters now support variables in ratio expressions
548 - elbg filter
549 - string validation in ffprobe
550 - support for decoding through VDPAU in ffmpeg (the -hwaccel option)
551 - complete Voxware MetaSound decoder
552 - remove mp3_header_compress bitstream filter
553 - Windows resource files for shared libraries
554 - aeval filter
555 - stereoscopic 3d metadata handling
556 - WebP encoding via libwebp
557 - ATRAC3+ decoder
558 - VP8 in Ogg demuxing
559 - side & metadata support in NUT
560 - framepack filter
561 - XYZ12 rawvideo support in NUT
562 - Exif metadata support in WebP decoder
563 - OpenGL device
564 - Use metadata_header_padding to control padding in ID3 tags (currently used in
565   MP3, AIFF, and OMA files), FLAC header, and the AVI "junk" block.
566 - Mirillis FIC video decoder
567 - Support DNx444
568 - libx265 encoder
569 - dejudder filter
570 - Autodetect VDA like all other hardware accelerations
571 - aliases and defaults for Ogg subtypes (opus, spx)
572
573
574 version 2.1:
575
576 - aecho filter
577 - perspective filter ported from libmpcodecs
578 - ffprobe -show_programs option
579 - compand filter
580 - RTMP seek support
581 - when transcoding with ffmpeg (i.e. not streamcopying), -ss is now accurate
582   even when used as an input option. Previous behavior can be restored with
583   the -noaccurate_seek option.
584 - ffmpeg -t option can now be used for inputs, to limit the duration of
585   data read from an input file
586 - incomplete Voxware MetaSound decoder
587 - read EXIF metadata from JPEG
588 - DVB teletext decoder
589 - phase filter ported from libmpcodecs
590 - w3fdif filter
591 - Opus support in Matroska
592 - FFV1 version 1.3 is stable and no longer experimental
593 - FFV1: YUVA(444,422,420) 9, 10 and 16 bit support
594 - changed DTS stream id in lavf mpeg ps muxer from 0x8a to 0x88, to be
595   more consistent with other muxers.
596 - adelay filter
597 - pullup filter ported from libmpcodecs
598 - ffprobe -read_intervals option
599 - Lossless and alpha support for WebP decoder
600 - Error Resilient AAC syntax (ER AAC LC) decoding
601 - Low Delay AAC (ER AAC LD) decoding
602 - mux chapters in ASF files
603 - SFTP protocol (via libssh)
604 - libx264: add ability to encode in YUVJ422P and YUVJ444P
605 - Fraps: use BT.709 colorspace by default for yuv, as reference fraps decoder does
606 - make decoding alpha optional for prores, ffv1 and vp6 by setting
607   the skip_alpha flag.
608 - ladspa wrapper filter
609 - native VP9 decoder
610 - dpx parser
611 - max_error_rate parameter in ffmpeg
612 - PulseAudio output device
613 - ReplayGain scanner
614 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
615 - Linux framebuffer output device
616 - HEVC decoder
617 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
618 - mergeplanes filter
619
620
621 version 2.0:
622
623 - curves filter
624 - reference-counting for AVFrame and AVPacket data
625 - ffmpeg now fails when input options are used for output file
626   or vice versa
627 - support for Monkey's Audio versions from 3.93
628 - perms and aperms filters
629 - audio filtering support in ffplay
630 - 10% faster aac encoding on x86 and MIPS
631 - sine audio filter source
632 - WebP demuxing and decoding support
633 - ffmpeg options -filter_script and -filter_complex_script, which allow a
634   filtergraph description to be read from a file
635 - OpenCL support
636 - audio phaser filter
637 - separatefields filter
638 - libquvi demuxer
639 - uniform options syntax across all filters
640 - telecine filter
641 - interlace filter
642 - smptehdbars source
643 - inverse telecine filters (fieldmatch and decimate)
644 - colorbalance filter
645 - colorchannelmixer filter
646 - The matroska demuxer can now output proper verbatim ASS packets. It will
647   become the default at the next libavformat major bump.
648 - decent native animated GIF encoding
649 - asetrate filter
650 - interleave filter
651 - timeline editing with filters
652 - vidstabdetect and vidstabtransform filters for video stabilization using
653   the vid.stab library
654 - astats filter
655 - trim and atrim filters
656 - ffmpeg -t and -ss (output-only) options are now sample-accurate when
657   transcoding audio
658 - Matroska muxer can now put the index at the beginning of the file.
659 - extractplanes filter
660 - avectorscope filter
661 - ADPCM DTK decoder
662 - ADP demuxer
663 - RSD demuxer
664 - RedSpark demuxer
665 - ADPCM IMA Radical decoder
666 - zmq filters
667 - DCT denoiser filter (dctdnoiz)
668 - Wavelet denoiser filter ported from libmpcodecs as owdenoise (formerly "ow")
669 - Apple Intermediate Codec decoder
670 - Escape 130 video decoder
671 - FTP protocol support
672 - V4L2 output device
673 - 3D LUT filter (lut3d)
674 - SMPTE 302M audio encoder
675 - support for slice multithreading in libavfilter
676 - Hald CLUT support (generation and filtering)
677 - VC-1 interlaced B-frame support
678 - support for WavPack muxing (raw and in Matroska)
679 - XVideo output device
680 - vignette filter
681 - True Audio (TTA) encoder
682 - Go2Webinar decoder
683 - mcdeint filter ported from libmpcodecs
684 - sab filter ported from libmpcodecs
685 - ffprobe -show_chapters option
686 - WavPack encoding through libwavpack
687 - rotate filter
688 - spp filter ported from libmpcodecs
689 - libgme support
690 - psnr filter
691
692
693 version 1.2:
694
695 - VDPAU hardware acceleration through normal hwaccel
696 - SRTP support
697 - Error diffusion dither in Swscale
698 - Chained Ogg support
699 - Theora Midstream reconfiguration support
700 - EVRC decoder
701 - audio fade filter
702 - filtering audio with unknown channel layout
703 - allpass, bass, bandpass, bandreject, biquad, equalizer, highpass, lowpass
704   and treble audio filter
705 - improved showspectrum filter, with multichannel support and sox-like colors
706 - histogram filter
707 - tee muxer
708 - il filter ported from libmpcodecs
709 - support ID3v2 tags in ASF files
710 - encrypted TTA stream decoding support
711 - RF64 support in WAV muxer
712 - noise filter ported from libmpcodecs
713 - Subtitles character encoding conversion
714 - blend filter
715 - stereo3d filter ported from libmpcodecs
716
717
718 version 1.1:
719
720 - stream disposition information printing in ffprobe
721 - filter for loudness analysis following EBU R128
722 - Opus encoder using libopus
723 - ffprobe -select_streams option
724 - Pinnacle TARGA CineWave YUV16 decoder
725 - TAK demuxer, decoder and parser
726 - DTS-HD demuxer
727 - remove -same_quant, it hasn't worked for years
728 - FFM2 support
729 - X-Face image encoder and decoder
730 - 24-bit FLAC encoding
731 - multi-channel ALAC encoding up to 7.1
732 - metadata (INFO tag) support in WAV muxer
733 - subtitles raw text decoder
734 - support for building DLLs using MSVC
735 - LVF demuxer
736 - ffescape tool
737 - metadata (info chunk) support in CAF muxer
738 - field filter ported from libmpcodecs
739 - AVR demuxer
740 - geq filter ported from libmpcodecs
741 - remove ffserver daemon mode
742 - AST muxer/demuxer
743 - new expansion syntax for drawtext
744 - BRender PIX image decoder
745 - ffprobe -show_entries option
746 - ffprobe -sections option
747 - ADPCM IMA Dialogic decoder
748 - BRSTM demuxer
749 - animated GIF decoder and demuxer
750 - PVF demuxer
751 - subtitles filter
752 - IRCAM muxer/demuxer
753 - Paris Audio File demuxer
754 - Virtual concatenation demuxer
755 - VobSub demuxer
756 - JSON captions for TED talks decoding support
757 - SOX Resampler support in libswresample
758 - aselect filter
759 - SGI RLE 8-bit / Silicon Graphics RLE 8-bit video decoder
760 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
761 - Silicon Graphics Movie demuxer
762 - apad filter
763 - Resolution & pixel format change support with multithreading for H.264
764 - documentation split into per-component manuals
765 - pp (postproc) filter ported from MPlayer
766 - NIST Sphere demuxer
767 - MPL2, VPlayer, MPlayer, AQTitle, PJS and SubViewer v1 subtitles demuxers and decoders
768 - Sony Wave64 muxer
769 - adobe and limelight publisher authentication in RTMP
770 - data: URI scheme
771 - support building on the Plan 9 operating system
772 - kerndeint filter ported from MPlayer
773 - histeq filter ported from VirtualDub
774 - Megalux Frame demuxer
775 - 012v decoder
776 - Improved AVC Intra decoding support
777
778
779 version 1.0:
780
781 - INI and flat output in ffprobe
782 - Scene detection in libavfilter
783 - Indeo Audio decoder
784 - channelsplit audio filter
785 - setnsamples audio filter
786 - atempo filter
787 - ffprobe -show_data option
788 - RTMPT protocol support
789 - iLBC encoding/decoding via libilbc
790 - Microsoft Screen 1 decoder
791 - join audio filter
792 - audio channel mapping filter
793 - Microsoft ATC Screen decoder
794 - RTSP listen mode
795 - TechSmith Screen Codec 2 decoder
796 - AAC encoding via libfdk-aac
797 - Microsoft Expression Encoder Screen decoder
798 - RTMPS protocol support
799 - RTMPTS protocol support
800 - RTMPE protocol support
801 - RTMPTE protocol support
802 - showwaves and showspectrum filter
803 - LucasArts SMUSH SANM playback support
804 - LucasArts SMUSH VIMA audio decoder (ADPCM)
805 - LucasArts SMUSH demuxer
806 - SAMI, RealText and SubViewer demuxers and decoders
807 - Heart Of Darkness PAF playback support
808 - iec61883 device
809 - asettb filter
810 - new option: -progress
811 - 3GPP Timed Text encoder/decoder
812 - GeoTIFF decoder support
813 - ffmpeg -(no)stdin option
814 - Opus decoder using libopus
815 - caca output device using libcaca
816 - alphaextract and alphamerge filters
817 - concat filter
818 - flite filter
819 - Canopus Lossless Codec decoder
820 - bitmap subtitles in filters (experimental and temporary)
821 - MP2 encoding via TwoLAME
822 - bmp parser
823 - smptebars source
824 - asetpts filter
825 - hue filter
826 - ICO muxer
827 - SubRip encoder and decoder without embedded timing
828 - edge detection filter
829 - framestep filter
830 - ffmpeg -shortest option is now per-output file
831   -pass and -passlogfile are now per-output stream
832 - volume measurement filter
833 - Ut Video encoder
834 - Microsoft Screen 2 decoder
835 - smartblur filter ported from MPlayer
836 - CPiA decoder
837 - decimate filter ported from MPlayer
838 - RTP depacketization of JPEG
839 - Smooth Streaming live segmenter muxer
840 - F4V muxer
841 - sendcmd and asendcmd filters
842 - WebVTT demuxer and decoder (simple tags supported)
843 - RTP packetization of JPEG
844 - faststart option in the MOV/MP4 muxer
845 - support for building with MSVC
846
847
848 version 0.11:
849
850 - Fixes: CVE-2012-2772, CVE-2012-2774, CVE-2012-2775, CVE-2012-2776, CVE-2012-2777,
851          CVE-2012-2779, CVE-2012-2782, CVE-2012-2783, CVE-2012-2784, CVE-2012-2785,
852          CVE-2012-2786, CVE-2012-2787, CVE-2012-2788, CVE-2012-2789, CVE-2012-2790,
853          CVE-2012-2791, CVE-2012-2792, CVE-2012-2793, CVE-2012-2794, CVE-2012-2795,
854          CVE-2012-2796, CVE-2012-2797, CVE-2012-2798, CVE-2012-2799, CVE-2012-2800,
855          CVE-2012-2801, CVE-2012-2802, CVE-2012-2803, CVE-2012-2804,
856 - v408 Quicktime and Microsoft AYUV Uncompressed 4:4:4:4 encoder and decoder
857 - setfield filter
858 - CDXL demuxer and decoder
859 - Apple ProRes encoder
860 - ffprobe -count_packets and -count_frames options
861 - Sun Rasterfile Encoder
862 - ID3v2 attached pictures reading and writing
863 - WMA Lossless decoder
864 - bluray protocol
865 - blackdetect filter
866 - libutvideo encoder wrapper (--enable-libutvideo)
867 - swapuv filter
868 - bbox filter
869 - XBM encoder and decoder
870 - RealAudio Lossless decoder
871 - ZeroCodec decoder
872 - tile video filter
873 - Metal Gear Solid: The Twin Snakes demuxer
874 - OpenEXR image decoder
875 - removelogo filter
876 - drop support for ffmpeg without libavfilter
877 - drawtext video filter: fontconfig support
878 - ffmpeg -benchmark_all option
879 - super2xsai filter ported from libmpcodecs
880 - add libavresample audio conversion library for compatibility
881 - MicroDVD decoder
882 - Avid Meridien (AVUI) encoder and decoder
883 - accept + prefix to -pix_fmt option to disable automatic conversions.
884 - complete audio filtering in libavfilter and ffmpeg
885 - add fps filter
886 - vorbis parser
887 - png parser
888 - audio mix filter
889 - ffv1: support (draft) version 1.3
890
891
892 version 0.10:
893
894 - Fixes: CVE-2011-3929, CVE-2011-3934, CVE-2011-3935, CVE-2011-3936,
895          CVE-2011-3937, CVE-2011-3940, CVE-2011-3941, CVE-2011-3944,
896          CVE-2011-3945, CVE-2011-3946, CVE-2011-3947, CVE-2011-3949,
897          CVE-2011-3950, CVE-2011-3951, CVE-2011-3952
898 - v410 Quicktime Uncompressed 4:4:4 10-bit encoder and decoder
899 - SBaGen (SBG) binaural beats script demuxer
900 - OpenMG Audio muxer
901 - Timecode extraction in DV and MOV
902 - thumbnail video filter
903 - XML output in ffprobe
904 - asplit audio filter
905 - tinterlace video filter
906 - astreamsync audio filter
907 - amerge audio filter
908 - ISMV (Smooth Streaming) muxer
909 - GSM audio parser
910 - SMJPEG muxer
911 - XWD encoder and decoder
912 - Automatic thread count based on detection number of (available) CPU cores
913 - y41p Brooktree Uncompressed 4:1:1 12-bit encoder and decoder
914 - ffprobe -show_error option
915 - Avid 1:1 10-bit RGB Packer codec
916 - v308 Quicktime Uncompressed 4:4:4 encoder and decoder
917 - yuv4 libquicktime packed 4:2:0 encoder and decoder
918 - ffprobe -show_frames option
919 - silencedetect audio filter
920 - ffprobe -show_program_version, -show_library_versions, -show_versions options
921 - rv34: frame-level multi-threading
922 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
923 - Improved PGS subtitle decoder
924 - dumpgraph option to lavfi device
925 - r210 and r10k encoders
926 - ffwavesynth decoder
927 - aviocat tool
928 - ffeval tool
929 - support encoding and decoding 4-channel SGI images
930
931
932 version 0.9:
933
934 - openal input device added
935 - boxblur filter added
936 - BWF muxer
937 - Flash Screen Video 2 decoder
938 - lavfi input device added
939 - added avconv, which is almost the same for now, except
940 for a few incompatible changes in the options, which will hopefully make them
941 easier to use. The changes are:
942     * The options placement is now strictly enforced! While in theory the
943       options for ffmpeg should be given in [input options] -i INPUT [output
944       options] OUTPUT order, in practice it was possible to give output options
945       before the -i and it mostly worked. Except when it didn't - the behavior was
946       a bit inconsistent. In avconv, it is not possible to mix input and output
947       options. All non-global options are reset after an input or output filename.
948     * All per-file options are now truly per-file - they apply only to the next
949       input or output file and specifying different values for different files
950       will now work properly (notably -ss and -t options).
951     * All per-stream options are now truly per-stream - it is possible to
952       specify which stream(s) should a given option apply to. See the Stream
953       specifiers section in the avconv manual for details.
954     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
955       sense that they're specified after the output filename instead of before,
956       like all other options. In avconv this irregularity is removed, all options
957       apply to the next input or output file.
958     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
959       irregular and highly confusing, they were also redundant. In avconv the -map
960       option will create new streams in the output file and map input streams to
961       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
962       each stream in the first input file.
963     * The -map option now has slightly different and more powerful syntax:
964         + Colons (':') are used to separate file index/stream type/stream index
965           instead of dots. Comma (',') is used to separate the sync stream instead
966           of colon.. This is done for consistency with other options.
967         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
968           output stream from the third input audio stream.
969         + Omitting the stream index now maps all the streams of the given type,
970           not just the first. E.g. -map 0:s creates output streams for all the
971           subtitle streams in the first input file.
972         + Since -map can now match multiple streams, negative mappings were
973           introduced. Negative mappings disable some streams from an already
974           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
975           all the stream in the first input file, except for the second audio
976           stream'.
977     * There is a new option -c (or -codec) for choosing the decoder/encoder to
978       use, which allows to precisely specify target stream(s) consistently with
979       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
980       libvorbis sets the codec for the first audio stream and -c copy copies all
981       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
982       aliases to -c:v/a/s
983     * It is now possible to precisely specify which stream should an AVOption
984       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
985       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
986       syntax is deprecated and will stop working soon.
987     * -map_chapters now takes only an input file index and applies to the next
988       output file. This is consistent with how all the other options work.
989     * -map_metadata now takes only an input metadata specifier and applies to
990       the next output file. Output metadata specifier is now part of the option
991       name, similarly to the AVOptions/map/codec feature above.
992     * -metadata can now be used to set metadata on streams and chapters, e.g.
993       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
994       This made -vlang/-alang/-slang options redundant, so they were removed.
995     * -qscale option now uses stream specifiers and applies to all streams, not
996       just video. I.e. plain -qscale number would now apply to all streams. To get
997       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
998       and -aq is now an alias for -q:a.
999     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
1000       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
1001     * -itsscale option now uses stream specifiers, so its argument is only the
1002       scale parameter.
1003     * -intra option was removed, use -g 0 for the same effect.
1004     * -psnr option was removed, use -flags +psnr for the same effect.
1005     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
1006     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
1007     * -vtag/-atag/-stag options are now aliases to the new -tag option.
1008 - XMV demuxer
1009 - LOAS demuxer
1010 - ashowinfo filter added
1011 - Windows Media Image decoder
1012 - amovie source added
1013 - LATM muxer/demuxer
1014 - Speex encoder via libspeex
1015 - JSON output in ffprobe
1016 - WTV muxer
1017 - Optional C++ Support (needed for libstagefright)
1018 - H.264 Decoding on Android via Stagefright
1019 - Prores decoder
1020 - BIN/XBIN/ADF/IDF text file decoder
1021 - aconvert audio filter added
1022 - audio support to lavfi input device added
1023 - libcdio-paranoia input device for audio CD grabbing
1024 - Apple ProRes decoder
1025 - CELT in Ogg demuxing
1026 - G.723.1 demuxer and decoder
1027 - libmodplug support (--enable-libmodplug)
1028 - VC-1 interlaced decoding
1029 - libutvideo wrapper (--enable-libutvideo)
1030 - aevalsrc audio source added
1031 - Ut Video decoder
1032 - Speex encoding via libspeex
1033 - 4:2:2 H.264 decoding support
1034 - 4:2:2 and 4:4:4 H.264 encoding with libx264
1035 - Pulseaudio input device
1036 - Prores encoder
1037 - Video Decoder Acceleration (VDA) HWAccel module.
1038 - replacement Indeo 3 decoder
1039 - new ffmpeg option: -map_channel
1040 - volume audio filter added
1041 - earwax audio filter added
1042 - libv4l2 support (--enable-libv4l2)
1043 - TLS/SSL and HTTPS protocol support
1044 - AVOptions API rewritten and documented
1045 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
1046   AVCodecContext deprecated. Codec private options should be used instead.
1047 - Properly working defaults in libx264 wrapper, support for native presets.
1048 - Encrypted OMA files support
1049 - Discworld II BMV decoding support
1050 - VBLE Decoder
1051 - OS X Video Decoder Acceleration (VDA) support
1052 - compact and csv output in ffprobe
1053 - pan audio filter
1054 - IFF Amiga Continuous Bitmap (ACBM) decoder
1055 - ass filter
1056 - CRI ADX audio format muxer and demuxer
1057 - Playstation Portable PMP format demuxer
1058 - Microsoft Windows ICO demuxer
1059 - life source
1060 - PCM format support in OMA demuxer
1061 - CLJR encoder
1062 - new option: -report
1063 - Dxtory capture format decoder
1064 - cellauto source
1065 - Simple segmenting muxer
1066 - Indeo 4 decoder
1067 - SMJPEG demuxer
1068
1069
1070 version 0.8:
1071
1072 - many many things we forgot because we rather write code than changelogs
1073 - WebM support in Matroska de/muxer
1074 - low overhead Ogg muxing
1075 - MMS-TCP support
1076 - VP8 de/encoding via libvpx
1077 - Demuxer for On2's IVF format
1078 - Pictor/PC Paint decoder
1079 - HE-AAC v2 decoder
1080 - HE-AAC v2 encoding with libaacplus
1081 - libfaad2 wrapper removed
1082 - DTS-ES extension (XCh) decoding support
1083 - native VP8 decoder
1084 - RTSP tunneling over HTTP
1085 - RTP depacketization of SVQ3
1086 - -strict inofficial replaced by -strict unofficial
1087 - ffplay -exitonkeydown and -exitonmousedown options added
1088 - native GSM / GSM MS decoder
1089 - RTP depacketization of QDM2
1090 - ANSI/ASCII art playback system
1091 - Lego Mindstorms RSO de/muxer
1092 - libavcore added (and subsequently removed)
1093 - SubRip subtitle file muxer and demuxer
1094 - Chinese AVS encoding via libxavs
1095 - ffprobe -show_packets option added
1096 - RTP packetization of Theora and Vorbis
1097 - RTP depacketization of MP4A-LATM
1098 - RTP packetization and depacketization of VP8
1099 - hflip filter
1100 - Apple HTTP Live Streaming demuxer
1101 - a64 codec
1102 - MMS-HTTP support
1103 - G.722 ADPCM audio encoder/decoder
1104 - R10k video decoder
1105 - ocv_smooth filter
1106 - frei0r wrapper filter
1107 - change crop filter syntax to width:height:x:y
1108 - make the crop filter accept parametric expressions
1109 - make ffprobe accept AVFormatContext options
1110 - yadif filter
1111 - blackframe filter
1112 - Demuxer for Leitch/Harris' VR native stream format (LXF)
1113 - RTP depacketization of the X-QT QuickTime format
1114 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
1115 - cropdetect filter
1116 - ffmpeg -crop* options removed
1117 - transpose filter added
1118 - ffmpeg -force_key_frames option added
1119 - demuxer for receiving raw rtp:// URLs without an SDP description
1120 - single stream LATM/LOAS decoder
1121 - setpts filter added
1122 - Win64 support for optimized x86 assembly functions
1123 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
1124 - ASS subtitle encoder and decoder
1125 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
1126 - overlay filter added
1127 - rename aspect filter to setdar, and pixelaspect to setsar
1128 - IEC 61937 demuxer
1129 - Mobotix .mxg demuxer
1130 - frei0r source added
1131 - hqdn3d filter added
1132 - RTP depacketization of QCELP
1133 - FLAC parser added
1134 - gradfun filter added
1135 - AMR-WB decoder
1136 - replace the ocv_smooth filter with a more generic ocv filter
1137 - Windows Televison (WTV) demuxer
1138 - FFmpeg metadata format muxer and demuxer
1139 - SubRip (srt) subtitle encoder and decoder
1140 - floating-point AC-3 encoder added
1141 - Lagarith decoder
1142 - ffmpeg -copytb option added
1143 - IVF muxer added
1144 - Wing Commander IV movies decoder added
1145 - movie source added
1146 - Bink version 'b' audio and video decoder
1147 - Bitmap Brothers JV playback system
1148 - Apple HTTP Live Streaming protocol handler
1149 - sndio support for playback and record
1150 - Linux framebuffer input device added
1151 - Chronomaster DFA decoder
1152 - DPX image encoder
1153 - MicroDVD subtitle file muxer and demuxer
1154 - Playstation Portable PMP format demuxer
1155 - fieldorder video filter added
1156 - AAC encoding via libvo-aacenc
1157 - AMR-WB encoding via libvo-amrwbenc
1158 - xWMA demuxer
1159 - Mobotix MxPEG decoder
1160 - VP8 frame-multithreading
1161 - NEON optimizations for VP8
1162 - Lots of deprecated API cruft removed
1163 - fft and imdct optimizations for AVX (Sandy Bridge) processors
1164 - showinfo filter added
1165 - SMPTE 302M AES3 audio decoder
1166 - Apple Core Audio Format muxer
1167 - 9bit and 10bit per sample support in the H.264 decoder
1168 - 9bit and 10bit FFV1 encoding / decoding
1169 - split filter added
1170 - select filter added
1171 - sdl output device added
1172 - libmpcodecs video filter support (3 times as many filters than before)
1173 - mpeg2 aspect ratio dection fixed
1174 - libxvid aspect pickiness fixed
1175 - Frame multithreaded decoding
1176 - E-AC-3 audio encoder
1177 - ac3enc: add channel coupling support
1178 - floating-point sample format support to the ac3, eac3, dca, aac, and vorbis decoders.
1179 - H264/MPEG frame-level multi-threading
1180 - All av_metadata_* functions renamed to av_dict_* and moved to libavutil
1181 - 4:4:4 H.264 decoding support
1182 - 10-bit H.264 optimizations for x86
1183 - lut, lutrgb, and lutyuv filters added
1184 - buffersink libavfilter sink added
1185 - Bump libswscale for recently reported ABI break
1186 - New J2K encoder (via OpenJPEG)
1187
1188
1189 version 0.7:
1190
1191 - all the changes for 0.8, but keeping API/ABI compatibility with the 0.6 release
1192
1193
1194 version 0.6:
1195
1196 - PB-frame decoding for H.263
1197 - deprecated vhook subsystem removed
1198 - deprecated old scaler removed
1199 - VQF demuxer
1200 - Alpha channel scaler
1201 - PCX encoder
1202 - RTP packetization of H.263
1203 - RTP packetization of AMR
1204 - RTP depacketization of Vorbis
1205 - CorePNG decoding support
1206 - Cook multichannel decoding support
1207 - introduced avlanguage helpers in libavformat
1208 - 8088flex TMV demuxer and decoder
1209 - per-stream language-tags extraction in asfdec
1210 - V210 decoder and encoder
1211 - remaining GPL parts in AC-3 decoder converted to LGPL
1212 - QCP demuxer
1213 - SoX native format muxer and demuxer
1214 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
1215 - DPX image decoder
1216 - Electronic Arts Madcow decoder
1217 - DivX (XSUB) subtitle encoder
1218 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
1219 - experimental AAC encoder
1220 - RTP depacketization of ASF and RTSP from WMS servers
1221 - RTMP support in libavformat
1222 - noX handling for OPT_BOOL X options
1223 - Wave64 demuxer
1224 - IEC-61937 compatible Muxer
1225 - TwinVQ decoder
1226 - Bluray (PGS) subtitle decoder
1227 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
1228 - WMA Pro decoder
1229 - Core Audio Format demuxer
1230 - ATRAC1 decoder
1231 - MD STUDIO audio demuxer
1232 - RF64 support in WAV demuxer
1233 - MPEG-4 Audio Lossless Coding (ALS) decoder
1234 - -formats option split into -formats, -codecs, -bsfs, and -protocols
1235 - IV8 demuxer
1236 - CDG demuxer and decoder
1237 - R210 decoder
1238 - Auravision Aura 1 and 2 decoders
1239 - Deluxe Paint Animation playback system
1240 - SIPR decoder
1241 - Adobe Filmstrip muxer and demuxer
1242 - RTP depacketization of H.263
1243 - Bink demuxer and audio/video decoders
1244 - enable symbol versioning by default for linkers that support it
1245 - IFF PBM/ILBM bitmap decoder
1246 - concat protocol
1247 - Indeo 5 decoder
1248 - RTP depacketization of AMR
1249 - WMA Voice decoder
1250 - ffprobe tool
1251 - AMR-NB decoder
1252 - RTSP muxer
1253 - HE-AAC v1 decoder
1254 - Kega Game Video (KGV1) decoder
1255 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
1256 - RTP depacketization of Theora
1257 - HTTP Digest authentication
1258 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
1259 - Psygnosis YOP demuxer and video decoder
1260 - spectral extension support in the E-AC-3 decoder
1261 - unsharp video filter
1262 - RTP hinting in the mov/3gp/mp4 muxer
1263 - Dirac in Ogg demuxing
1264 - seek to keyframes in Ogg
1265 - 4:2:2 and 4:4:4 Theora decoding
1266 - 35% faster VP3/Theora decoding
1267 - faster AAC decoding
1268 - faster H.264 decoding
1269 - RealAudio 1.0 (14.4K) encoder
1270
1271
1272 version 0.5:
1273
1274 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
1275 - TechSmith Camtasia (TSCC) video decoder
1276 - IBM Ultimotion (ULTI) video decoder
1277 - Sierra Online audio file demuxer and decoder
1278 - Apple QuickDraw (qdrw) video decoder
1279 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
1280 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
1281 - Miro VideoXL (VIXL) video decoder
1282 - H.261 video encoder
1283 - QPEG video decoder
1284 - Nullsoft Video (NSV) file demuxer
1285 - Shorten audio decoder
1286 - LOCO video decoder
1287 - Apple Lossless Audio Codec (ALAC) decoder
1288 - Winnov WNV1 video decoder
1289 - Autodesk Animator Studio Codec (AASC) decoder
1290 - Indeo 2 video decoder
1291 - Fraps FPS1 video decoder
1292 - Snow video encoder/decoder
1293 - Sonic audio encoder/decoder
1294 - Vorbis audio decoder
1295 - Macromedia ADPCM decoder
1296 - Duck TrueMotion 2 video decoder
1297 - support for decoding FLX and DTA extensions in FLIC files
1298 - H.264 custom quantization matrices support
1299 - ffserver fixed, it should now be usable again
1300 - QDM2 audio decoder
1301 - Real Cooker audio decoder
1302 - TrueSpeech audio decoder
1303 - WMA2 audio decoder fixed, now all files should play correctly
1304 - RealAudio 14.4 and 28.8 decoders fixed
1305 - JPEG-LS decoder
1306 - build system improvements
1307 - tabs and trailing whitespace removed from the codebase
1308 - CamStudio video decoder
1309 - AIFF/AIFF-C audio format, encoding and decoding
1310 - ADTS AAC file reading and writing
1311 - Creative VOC file reading and writing
1312 - American Laser Games multimedia (*.mm) playback system
1313 - Zip Motion Blocks Video decoder
1314 - improved Theora/VP3 decoder
1315 - True Audio (TTA) decoder
1316 - AVS demuxer and video decoder
1317 - JPEG-LS encoder
1318 - Smacker demuxer and decoder
1319 - NuppelVideo/MythTV demuxer and RTjpeg decoder
1320 - KMVC decoder
1321 - MPEG-2 intra VLC support
1322 - MPEG-2 4:2:2 encoder
1323 - Flash Screen Video decoder
1324 - GXF demuxer
1325 - Chinese AVS decoder
1326 - GXF muxer
1327 - MXF demuxer
1328 - VC-1/WMV3/WMV9 video decoder
1329 - MacIntel support
1330 - AviSynth support
1331 - VMware video decoder
1332 - VP5 video decoder
1333 - VP6 video decoder
1334 - WavPack lossless audio decoder
1335 - Targa (.TGA) picture decoder
1336 - Vorbis audio encoder
1337 - Delphine Software .cin demuxer/audio and video decoder
1338 - Tiertex .seq demuxer/video decoder
1339 - MTV demuxer
1340 - TIFF picture encoder and decoder
1341 - GIF picture decoder
1342 - Intel Music Coder decoder
1343 - Zip Motion Blocks Video encoder
1344 - Musepack decoder
1345 - Flash Screen Video encoder
1346 - Theora encoding via libtheora
1347 - BMP encoder
1348 - WMA encoder
1349 - GSM-MS encoder and decoder
1350 - DCA decoder
1351 - DXA demuxer and decoder
1352 - DNxHD decoder
1353 - Gamecube movie (.THP) playback system
1354 - Blackfin optimizations
1355 - Interplay C93 demuxer and video decoder
1356 - Bethsoft VID demuxer and video decoder
1357 - CRYO APC demuxer
1358 - ATRAC3 decoder
1359 - V.Flash PTX decoder
1360 - RoQ muxer, RoQ audio encoder
1361 - Renderware TXD demuxer and decoder
1362 - extern C declarations for C++ removed from headers
1363 - sws_flags command line option
1364 - codebook generator
1365 - RoQ video encoder
1366 - QTRLE encoder
1367 - OS/2 support removed and restored again
1368 - AC-3 decoder
1369 - NUT muxer
1370 - additional SPARC (VIS) optimizations
1371 - Matroska muxer
1372 - slice-based parallel H.264 decoding
1373 - Monkey's Audio demuxer and decoder
1374 - AMV audio and video decoder
1375 - DNxHD encoder
1376 - H.264 PAFF decoding
1377 - Nellymoser ASAO decoder
1378 - Beam Software SIFF demuxer and decoder
1379 - libvorbis Vorbis decoding removed in favor of native decoder
1380 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
1381 - Ogg (Theora, Vorbis and FLAC) muxer
1382 - The "device" muxers and demuxers are now in a new libavdevice library
1383 - PC Paintbrush PCX decoder
1384 - Sun Rasterfile decoder
1385 - TechnoTrend PVA demuxer
1386 - Linux Media Labs MPEG-4 (LMLM4) demuxer
1387 - AVM2 (Flash 9) SWF muxer
1388 - QT variant of IMA ADPCM encoder
1389 - VFW grabber
1390 - iPod/iPhone compatible mp4 muxer
1391 - Mimic decoder
1392 - MSN TCP Webcam stream demuxer
1393 - RL2 demuxer / decoder
1394 - IFF demuxer
1395 - 8SVX audio decoder
1396 - non-recursive Makefiles
1397 - BFI demuxer
1398 - MAXIS EA XA (.xa) demuxer / decoder
1399 - BFI video decoder
1400 - OMA demuxer
1401 - MLP/TrueHD decoder
1402 - Electronic Arts CMV decoder
1403 - Motion Pixels Video decoder
1404 - Motion Pixels MVI demuxer
1405 - removed animated GIF decoder/demuxer
1406 - D-Cinema audio muxer
1407 - Electronic Arts TGV decoder
1408 - Apple Lossless Audio Codec (ALAC) encoder
1409 - AAC decoder
1410 - floating point PCM encoder/decoder
1411 - MXF muxer
1412 - DV100 AKA DVCPRO HD decoder and demuxer
1413 - E-AC-3 support added to AC-3 decoder
1414 - Nellymoser ASAO encoder
1415 - ASS and SSA demuxer and muxer
1416 - liba52 wrapper removed
1417 - SVQ3 watermark decoding support
1418 - Speex decoding via libspeex
1419 - Electronic Arts TGQ decoder
1420 - RV40 decoder
1421 - QCELP / PureVoice decoder
1422 - RV30 decoder
1423 - hybrid WavPack support
1424 - R3D REDCODE demuxer
1425 - ALSA support for playback and record
1426 - Electronic Arts TQI decoder
1427 - OpenJPEG based JPEG 2000 decoder
1428 - NC (NC4600) camera file demuxer
1429 - Gopher client support
1430 - MXF D-10 muxer
1431 - generic metadata API
1432 - flash ScreenVideo2 encoder
1433
1434
1435 version 0.4.9-pre1:
1436
1437 - DV encoder, DV muxer
1438 - Microsoft RLE video decoder
1439 - Microsoft Video-1 decoder
1440 - Apple Animation (RLE) decoder
1441 - Apple Graphics (SMC) decoder
1442 - Apple Video (RPZA) decoder
1443 - Cinepak decoder
1444 - Sega FILM (CPK) file demuxer
1445 - Westwood multimedia support (VQA & AUD files)
1446 - Id Quake II CIN playback support
1447 - 8BPS video decoder
1448 - FLIC playback support
1449 - RealVideo 2.0 (RV20) decoder
1450 - Duck TrueMotion v1 (DUCK) video decoder
1451 - Sierra VMD demuxer and video decoder
1452 - MSZH and ZLIB decoder support
1453 - SVQ1 video encoder
1454 - AMR-WB support
1455 - PPC optimizations
1456 - rate distortion optimal cbp support
1457 - rate distorted optimal ac prediction for MPEG-4
1458 - rate distorted optimal lambda->qp support
1459 - AAC encoding with libfaac
1460 - Sunplus JPEG codec (SP5X) support
1461 - use Lagrange multipler instead of QP for ratecontrol
1462 - Theora/VP3 decoding support
1463 - XA and ADX ADPCM codecs
1464 - export MPEG-2 active display area / pan scan
1465 - Add support for configuring with IBM XLC
1466 - floating point AAN DCT
1467 - initial support for zygo video (not complete)
1468 - RGB ffv1 support
1469 - new audio/video parser API
1470 - av_log() system
1471 - av_read_frame() and av_seek_frame() support
1472 - missing last frame fixes
1473 - seek by mouse in ffplay
1474 - noise reduction of DCT coefficients
1475 - H.263 OBMC & 4MV support
1476 - H.263 alternative inter vlc support
1477 - H.263 loop filter
1478 - H.263 slice structured mode
1479 - interlaced DCT support for MPEG-2 encoding
1480 - stuffing to stay above min_bitrate
1481 - MB type & QP visualization
1482 - frame stepping for ffplay
1483 - interlaced motion estimation
1484 - alternate scantable support
1485 - SVCD scan offset support
1486 - closed GOP support
1487 - SSE2 FDCT
1488 - quantizer noise shaping
1489 - G.726 ADPCM audio codec
1490 - MS ADPCM encoding
1491 - multithreaded/SMP motion estimation
1492 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
1493 - multithreaded/SMP decoding for MPEG-2
1494 - FLAC decoder
1495 - Metrowerks CodeWarrior suppport
1496 - H.263+ custom pcf support
1497 - nicer output for 'ffmpeg -formats'
1498 - Matroska demuxer
1499 - SGI image format, encoding and decoding
1500 - H.264 loop filter support
1501 - H.264 CABAC support
1502 - nicer looking arrows for the motion vector visualization
1503 - improved VCD support
1504 - audio timestamp drift compensation
1505 - MPEG-2 YUV 422/444 support
1506 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
1507 - better image scaling
1508 - H.261 support
1509 - correctly interleave packets during encoding
1510 - VIS optimized motion compensation
1511 - intra_dc_precision>0 encoding support
1512 - support reuse of motion vectors/MB types/field select values of the source video
1513 - more accurate deblock filter
1514 - padding support
1515 - many optimizations and bugfixes
1516 - FunCom ISS audio file demuxer and according ADPCM decoding
1517
1518
1519 version 0.4.8:
1520
1521 - MPEG-2 video encoding (Michael)
1522 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
1523 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
1524   and Mario Brito)
1525 - Xan DPCM audio decoder (Mario Brito)
1526 - Interplay MVE playback subsystem (Mike Melanson)
1527 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
1528
1529
1530 version 0.4.7:
1531
1532 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
1533   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
1534 - current version now also compiles with older GCC (Fabrice)
1535 - 4X multimedia playback system including 4xm file demuxer (Mike
1536   Melanson), and 4X video and audio codecs (Michael)
1537 - Creative YUV (CYUV) decoder (Mike Melanson)
1538 - FFV1 codec (our very simple lossless intra only codec, compresses much better
1539   than HuffYUV) (Michael)
1540 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
1541 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
1542   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
1543 - ffplay has been replaced with a newer version which uses SDL (optionally)
1544   for multiplatform support (Fabrice)
1545 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
1546   by anonymous
1547 - AMR format has been added (Johannes Carlsson)
1548 - 3GP support has been added (Johannes Carlsson)
1549 - VP3 codec has been added (Mike Melanson)
1550 - more MPEG-1/2 fixes
1551 - better multiplatform support, MS Visual Studio fixes (various)
1552 - AltiVec optimizations (Magnus Damn and others)
1553 - SH4 processor support has been added (BERO)
1554 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
1555 - VOB streaming support (Brian Foley)
1556 - better MP3 autodetection (Andriy Rysin)
1557 - qpel encoding (Michael)
1558 - 4mv+b frames encoding finally fixed (Michael)
1559 - chroma ME (Michael)
1560 - 5 comparison functions for ME (Michael)
1561 - B-frame encoding speedup (Michael)
1562 - WMV2 codec (unfinished - Michael)
1563 - user specified diamond size for EPZS (Michael)
1564 - Playstation STR playback subsystem, still experimental (Mike and Michael)
1565 - ASV2 codec (Michael)
1566 - CLJR decoder (Alex)
1567
1568 .. And lots more new enhancements and fixes.
1569
1570
1571 version 0.4.6:
1572
1573 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
1574   from scratch
1575 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
1576 - fix quantization bug in AC3 encoder
1577 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
1578 - added prototype ffplay program
1579 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
1580 - bug fix on MCBPC tables of H.263 (Juanjo)
1581 - bug fix on DC coefficients of H.263 (Juanjo)
1582 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
1583 - now we can decode H.263 streams found in QuickTime files (Juanjo)
1584 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
1585 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
1586 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
1587 - now H.263 picture size is returned on the first decoded frame (Juanjo)
1588 - added first regression tests
1589 - added MPEG-2 TS demuxer
1590 - new demux API for libav
1591 - more accurate and faster IDCT (Michael)
1592 - faster and entropy-controlled motion search (Michael)
1593 - two pass video encoding (Michael)
1594 - new video rate control (Michael)
1595 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
1596 - great performance improvement of video encoders and decoders (Michael)
1597 - new and faster bit readers and vlc parsers (Michael)
1598 - high quality encoding mode: tries all macroblock/VLC types (Michael)
1599 - added DV video decoder
1600 - preliminary RTP/RTSP support in ffserver and libavformat
1601 - H.263+ AIC decoding/encoding support (Juanjo)
1602 - VCD MPEG-PS mode (Juanjo)
1603 - PSNR stuff (Juanjo)
1604 - simple stats output (Juanjo)
1605 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
1606
1607
1608 version 0.4.5:
1609
1610 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
1611 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
1612 - added configure system (actually a small shell script)
1613 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
1614   Michael Hipp (temporary solution - waiting for integer only
1615   decoder)
1616 - fixed VIDIOCSYNC interrupt
1617 - added Intel H.263 decoding support ('I263' AVI fourCC)
1618 - added Real Video 1.0 decoding (needs further testing)
1619 - simplified image formats again. Added PGM format (=grey
1620   pgm). Renamed old PGM to PGMYUV.
1621 - fixed msmpeg4 slice issues (tell me if you still find problems)
1622 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
1623 - added support for MPlayer interface
1624 - added macroblock skip optimization
1625 - added MJPEG decoder
1626 - added mmx/mmxext IDCT from libmpeg2
1627 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
1628   <celer at shell.scrypt.net>)
1629 - added pixel format conversion layer (e.g. for MJPEG or PPM)
1630 - added deinterlacing option
1631 - MPEG-1/2 fixes
1632 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
1633 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
1634 - Windows porting of file converter
1635 - added MJPEG raw format (input/output)
1636 - added JPEG image format support (input/output)
1637
1638
1639 version 0.4.4:
1640
1641 - fixed some std header definitions (Bjorn Lindgren
1642   <bjorn.e.lindgren at telia.com>).
1643 - added MPEG demuxer (MPEG-1 and 2 compatible).
1644 - added ASF demuxer
1645 - added prototype RM demuxer
1646 - added AC3 decoding (done with libac3 by Aaron Holtzman)
1647 - added decoding codec parameter guessing (.e.g. for MPEG, because the
1648   header does not include them)
1649 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
1650   play them (only tested video)
1651 - fixed H.263 white bug
1652 - fixed phase rounding in img resample filter
1653 - add MMX code for polyphase img resample filter
1654 - added CPU autodetection
1655 - added generic title/author/copyright/comment string handling (ASF and RM
1656   use them)
1657 - added SWF demux to extract MP3 track (not usable yet because no MP3
1658   decoder)
1659 - added fractional frame rate support
1660 - codecs are no longer searched by read_header() (should fix ffserver
1661   segfault)
1662
1663
1664 version 0.4.3:
1665
1666 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
1667 - fixed raw yuv output
1668 - added motion rounding support in MPEG-4
1669 - fixed motion bug rounding in MSMPEG4
1670 - added B-frame handling in video core
1671 - added full MPEG-1 decoding support
1672 - added partial (frame only) MPEG-2 support
1673 - changed the FOURCC code for H.263 to "U263" to be able to see the
1674   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
1675   this +codec ;) (JuanJo).
1676 - Halfpel motion estimation after MB type selection (JuanJo)
1677 - added pgm and .Y.U.V output format
1678 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
1679   output.
1680 - added pgmpipe I/O format (original patch from Martin Aumueller
1681   <lists at reserv.at>, but changed completely since we use a format
1682   instead of a protocol)
1683
1684
1685 version 0.4.2:
1686
1687 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
1688   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
1689   missing. MSMPEG4 support is complete.
1690 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
1691   can decode ffmpeg MPEGs :-)).
1692 - added libavcodec API documentation (see apiexample.c).
1693 - fixed image polyphase bug (the bottom of some images could be
1694   greenish)
1695 - added support for non clipped motion vectors (decoding only)
1696   and image sizes non-multiple of 16
1697 - added support for AC prediction (decoding only)
1698 - added file overwrite confirmation (can be disabled with -y)
1699 - added custom size picture to H.263 using H.263+ (Juanjo)
1700
1701
1702 version 0.4.1:
1703
1704 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
1705   of AVI and ASF to DIV3.
1706 - added -me option to set motion estimation method
1707   (default=log). suppressed redundant -hq option.
1708 - added options -acodec and -vcodec to force a given codec (useful for
1709   AVI for example)
1710 - fixed -an option
1711 - improved dct_quantize speed
1712 - factorized some motion estimation code
1713
1714
1715 version 0.4.0:
1716
1717 - removing grab code from ffserver and moved it to ffmpeg. Added
1718   multistream support to ffmpeg.
1719 - added timeshifting support for live feeds (option ?date=xxx in the
1720   URL)
1721 - added high quality image resize code with polyphase filter (need
1722   mmx/see optimization). Enable multiple image size support in ffserver.
1723 - added multi live feed support in ffserver
1724 - suppressed master feature from ffserver (it should be done with an
1725   external program which opens the .ffm url and writes it to another
1726   ffserver)
1727 - added preliminary support for video stream parsing (WAV and AVI half
1728   done). Added proper support for audio/video file conversion in
1729   ffmpeg.
1730 - added preliminary support for video file sending from ffserver
1731 - redesigning I/O subsystem: now using URL based input and output
1732   (see avio.h)
1733 - added WAV format support
1734 - added "tty user interface" to ffmpeg to stop grabbing gracefully
1735 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
1736   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
1737 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
1738 - added new motion estimation algorithms, log and phods (Juanjo)
1739 - changed directories: libav for format handling, libavcodec for
1740   codecs
1741
1742
1743 version 0.3.4:
1744
1745 - added stereo in MPEG audio encoder
1746
1747
1748 version 0.3.3:
1749
1750 - added 'high quality' mode which use motion vectors. It can be used in
1751   real time at low resolution.
1752 - fixed rounding problems which caused quality problems at high
1753   bitrates and large GOP size
1754
1755
1756 version 0.3.2: small fixes
1757
1758 - ASF fixes
1759 - put_seek bug fix
1760
1761
1762 version 0.3.1: added avi/divx support
1763
1764 - added AVI support
1765 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
1766 - added sound for flash format (not tested)
1767
1768
1769 version 0.3: initial public release