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