matroskadec: fix crash when parsing invalid mkv
[platform/upstream/libav.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 11.3:
5
6 - utvideodec: Handle slice_height being zero (CVE-2014-9604)
7 - adxdec: set avctx->channels in adx_read_header
8 - rmenc: limit packet size
9 - webp: validate the distance prefix code
10 - rv10: check size of s->mb_width * s->mb_height
11 - eamad: check for out of bounds read (CID/1257500)
12 - mdec: check for out of bounds read (CID/1257501)
13 - configure: Properly fail when libcdio/cdparanoia is not found
14 - tiff: Check that there is no aliasing in pixel format selection (CVE-2014-8544)
15 - aic: Fix decoding files with odd dimensions
16 - vorbis: Check the vlc value in setup_classifs
17 - arm: Suppress tags about used cpu arch and extensions
18 - prores: Extend the padding check to 16bit
19 - icecast: Do not use chunked post, allows feeding to icecast properly
20 - img2dec: correctly use the parsed value from -start_number
21 - h264_cabac: Break infinite loops
22 - hevc_deblock: Fix compilation with nasm (libav #795)
23 - h264: initialize H264Context.avctx in init_thread_copy
24 - h264: Do not share rbsp_buffer across threads
25 - h264: only ref cur_pic in update_thread_context if it is initialized
26 - matroskadec: Fix read-after-free in matroska_read_seek() (chromium #427266)
27 - log: Unbreak no-tty support on 256color terminals
28
29 version 11.2:
30
31 - h264: restore a block mistakenly removed in e10fd08a (libav #781)
32 - on2avc: check number of channels (CVE-2014-8549)
33 - smc: fix the bounds check (CVE-2014-8548)
34 - gifdec: refactor interleave end handling (CVE-2014-8547)
35 - mmvideo: check frame dimensions (CVE-2014-8543)
36 - jvdec: check frame dimensions (CVE-2014-8542)
37 - mjpegdec: check for pixel format changes (CVE-2014-8541)
38 - mov: avoid a memleak when multiple stss boxes are present
39 - vc1: Do not assume seek happens after decoding
40 - avconv: Use the mpeg12 private option scan_offset (debian/773055)
41 - xsub: Support DXSA subtitles
42 - mp3dec: fix reading the Xing tag
43 - matroskaenc: write correct Display{Width, Height} in stereo encoding
44 - configure: Fix enabling memalign_hack automatically
45 - mp3enc: fix a triggerable assert
46 - latm: Do not give a score for a single instance
47 - mp3: Tweak the probe scores
48 - matroskaenc: write correct Display{Width, Height} in stereo encoding
49 - configure: Fix enabling memalign_hack automatically
50 - coverity: Fix most of the reported warnings and issues
51
52 version 11.1:
53
54 - Replace lena.pnm (debian#771126)
55 - Treat all '*.pnm' files as non-text file
56 - opusdec: make sure all substreams have the same number of coded samples
57 - lavu: fix memory leaks by using a mutex instead of atomics
58 - lavu: add wrappers for the pthreads mutex API
59 - mp3enc: fix a triggerable assert
60 - resample: Avoid off-by-1 errors in PTS calcs. (libav#753)
61 - imc: fix order of operations in coefficients read
62 - hevc_mvs: make sure to always initialize the temporal MV fully
63 - hevc_mvs: initialize the temporal MV in case of missing ref
64 - h264: reset ret to avoid propagating minor failures (libav#750 / lp#905753)
65 - hevc: Initialize mergecand_list to 0
66 - mpeg12: Always invoke the get_format() callback
67 - h264: Always invoke the get_format() callback
68 - Update default FATE URL for release/11
69 - apetag: Fix APE tag size check
70
71 version 11:
72 - libx265 encoder
73 - shuffleplanes filter
74 - replaygain data export
75 - Alias PIX image encoder and decoder
76 - BRender PIX image decoder
77 - Amazing Studio PAF playback support
78 - XBM decoder
79 - BMP standalone parser
80 - OpenEXR image decoder
81 - support encoding and decoding 4-channel SGI images
82 - support decoding 16-bit RLE SGI images
83 - VP7 video decoder
84 - LucasArts SMUSH SANM video decoder
85 - LucasArts SMUSH VIMA audio decoder (ADPCM)
86 - LucasArts SMUSH demuxer
87 - MP2 encoding via TwoLAME
88 - asettb filter
89 - Silicon Graphics RLE 8-bit video decoder
90 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
91 - Silicon Graphics Movie demuxer
92 - On2 AVC (Audio for Video) decoder
93 - support for decoding through DXVA2 in avconv
94 - libbs2b-based stereo-to-binaural audio filter
95 - native Opus decoder
96 - display matrix export and rotation API
97 - drop avserver, it was unmaintained for years and largely broken
98 - Icecast protocol
99 - request Icecast metadata by default
100 - support for using metadata in stream specifiers in avtools
101 - Matroska 3D support
102
103
104 version 10:
105 - av_strnstr
106 - support ID3v2 tags in ASF files
107 - reference-counting for AVFrame and AVPacket data
108 - avconv now fails when input options are used for output file
109   or vice versa
110 - avconv options -filter_script and -filter_complex_script, which allow a
111   filtergraph description to be read from a file
112 - uniform options syntax across all filters
113 - interlace filter
114 - JPEG 2000 decoder
115 - asetpts filter (same as setpts, but for audio)
116 - trim and atrim filters
117 - avconv -t and -ss (output-only) options are now sample-accurate when
118   transcoding audio
119 - Matroska muxer can now put the index at the beginning of the file.
120 - avconv -deinterlace option removed, the yadif filter should be used instead
121 - Apple Intermediate Codec decoder
122 - Escape 130 video decoder
123 - support for slice multithreading in libavfilter
124 - VC-1 interlaced B-frame support
125 - support for WavPack muxing (raw and in Matroska)
126 - Go2Webinar decoder
127 - WavPack encoding through libwavpack
128 - Added the -n parameter to avconv
129 - RTMP seek support
130 - when transcoding with avconv (i.e. not streamcopying), -ss is now accurate
131   even when used as an input option. Previous behavior can be restored with
132   the -noaccurate_seek option.
133 - avconv -t option can now be used for inputs, to limit the duration of
134   data read from an input file
135 - Voxware MetaSound decoder
136 - WebP decoder
137 - Error Resilient AAC syntax (ER AAC LC) decoding
138 - Low Delay AAC (ER AAC LD) decoding
139 - mux chapters in ASF files
140 - Opus in Ogg demuxing
141 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
142 - F4V muxer
143 - HNM version 4 demuxer and video decoder
144 - HEVC decoder
145 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
146 - remove avplay -vismv option, which has not worked for a long time
147 - Live HDS muxer
148 - setsar/setdar filters now support variables in ratio expressions
149 - dar variable in the scale filter now returns the actual DAR (i.e. a * sar)
150 - VP9 decoder
151 - support for decoding through VDPAU in avconv (the -hwaccel option)
152 - remove mp3_header_(de)compress bitstream filters
153 - stereoscopic 3d metadata handling
154 - png standalone parser
155 - WebP encoding via libwebp
156 - ATRAC3+ decoder
157 - framepack filter
158 - Mirillis FIC video decoder
159 - Support DNx444
160 - compand audio filter
161
162
163 version 9:
164 - av_basename and av_dirname
165 - adobe and limelight publisher authentication in RTMP
166 - VDPAU hardware acceleration through normal hwaccel
167 - SRTP support
168
169
170 version 9_beta3:
171 - ashowinfo audio filter
172 - 24-bit FLAC encoding
173 - audio volume filter
174 - deprecated the avconv -vol option. the volume filter is to be used instead.
175 - multi-channel ALAC encoding up to 7.1
176 - TAK demuxer, parser, and decoder
177 - adaptive frame-level multithreading for H.264
178
179
180 version 9_beta2:
181 - metadata (INFO tag) support in WAV muxer
182 - support for building DLLs using MSVC
183 - remove avserver daemon mode
184 - support building on the Plan 9 operating system
185 - ffv1: support version 1.3
186
187
188 version 9_beta1:
189
190 - XWD encoder and decoder
191 - Support for fragmentation in the mov/mp4 muxer
192 - ISMV (Smooth Streaming) muxer
193 - CDXL demuxer and decoder
194 - Apple ProRes encoder
195 - Sun Rasterfile Encoder
196 - remove libpostproc
197 - ID3v2 attached pictures reading and writing
198 - WMA Lossless decoder
199 - XBM encoder
200 - RealAudio Lossless decoder
201 - ZeroCodec decoder
202 - drop support for avconv without libavfilter
203 - add libavresample audio conversion library
204 - audio filters support in libavfilter and avconv
205 - add fps filter
206 - audio split filter
207 - audio mix filter
208 - avprobe output is now standard INI or JSON. The old format can still
209   be used with -of old.
210 - Indeo Audio decoder
211 - channelsplit audio filter
212 - RTMPT protocol support
213 - iLBC encoding/decoding via libilbc
214 - Microsoft Screen 1 decoder
215 - join audio filter
216 - audio channel mapping filter
217 - Microsoft ATC Screen decoder
218 - RTSP listen mode
219 - TechSmith Screen Codec 2 decoder
220 - AAC encoding via libfdk-aac
221 - Microsoft Expression Encoder Screen decoder
222 - RTMPS protocol support
223 - RTMPTS protocol support
224 - JPEG 2000 encoding support through OpenJPEG
225 - G.723.1 demuxer and decoder
226 - RTMPE protocol support
227 - RTMPTE protocol support
228 - Canopus Lossless Codec decoder
229 - avconv -shortest option is now per-output file,
230   -pass and -passlogfile are now per-output stream
231 - Ut Video encoder
232 - Microsoft Screen 2 decoder
233 - RTP depacketization of JPEG
234 - Smooth Streaming live segmenter muxer
235 - RTP packetization of JPEG
236 - Opus decoder and encoder using libopus
237 - remove -same_quant, it hasn't worked for years
238 - support for building with MSVC
239
240
241 version 0.8:
242
243 - GSM audio parser
244 - SMJPEG muxer
245
246
247 version 0.8_beta2:
248
249 - Automatic thread count based on detection number of (available) CPU cores
250 - Deprecate libpostproc. If desired, the switch --enable-postproc will
251   enable it but it may be removed in a later Libav release.
252 - rv34: frame-level multi-threading
253 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
254
255
256 version 0.8_beta1:
257
258 - BWF muxer
259 - Flash Screen Video 2 decoder
260 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
261 - ffmpeg deprecated, added avconv, which is almost the same for now, except
262 for a few incompatible changes in the options, which will hopefully make them
263 easier to use. The changes are:
264     * The options placement is now strictly enforced! While in theory the
265       options for ffmpeg should be given in [input options] -i INPUT [output
266       options] OUTPUT order, in practice it was possible to give output options
267       before the -i and it mostly worked. Except when it didn't - the behavior was
268       a bit inconsistent. In avconv, it is not possible to mix input and output
269       options. All non-global options are reset after an input or output filename.
270     * All per-file options are now truly per-file - they apply only to the next
271       input or output file and specifying different values for different files
272       will now work properly (notably -ss and -t options).
273     * All per-stream options are now truly per-stream - it is possible to
274       specify which stream(s) should a given option apply to. See the Stream
275       specifiers section in the avconv manual for details.
276     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
277       sense that they're specified after the output filename instead of before,
278       like all other options. In avconv this irregularity is removed, all options
279       apply to the next input or output file.
280     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
281       irregular and highly confusing, they were also redundant. In avconv the -map
282       option will create new streams in the output file and map input streams to
283       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
284       each stream in the first input file.
285     * The -map option now has slightly different and more powerful syntax:
286         + Colons (':') are used to separate file index/stream type/stream index
287           instead of dots. Comma (',') is used to separate the sync stream instead
288           of colon.. This is done for consistency with other options.
289         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
290           output stream from the third input audio stream.
291         + Omitting the stream index now maps all the streams of the given type,
292           not just the first. E.g. -map 0:s creates output streams for all the
293           subtitle streams in the first input file.
294         + Since -map can now match multiple streams, negative mappings were
295           introduced. Negative mappings disable some streams from an already
296           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
297           all the stream in the first input file, except for the second audio
298           stream'.
299     * There is a new option -c (or -codec) for choosing the decoder/encoder to
300       use, which allows to precisely specify target stream(s) consistently with
301       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
302       libvorbis sets the codec for the first audio stream and -c copy copies all
303       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
304       aliases to -c:v/a/s
305     * It is now possible to precisely specify which stream should an AVOption
306       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
307       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
308       syntax is deprecated and will stop working soon.
309     * -map_chapters now takes only an input file index and applies to the next
310       output file. This is consistent with how all the other options work.
311     * -map_metadata now takes only an input metadata specifier and applies to
312       the next output file. Output metadata specifier is now part of the option
313       name, similarly to the AVOptions/map/codec feature above.
314     * -metadata can now be used to set metadata on streams and chapters, e.g.
315       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
316       This made -vlang/-alang/-slang options redundant, so they were removed.
317     * -qscale option now uses stream specifiers and applies to all streams, not
318       just video. I.e. plain -qscale number would now apply to all streams. To get
319       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
320       and -aq is now an alias for -q:a.
321     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
322       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
323     * -itsscale option now uses stream specifiers, so its argument is only the
324       scale parameter.
325     * -intra option was removed, use -g 0 for the same effect.
326     * -psnr option was removed, use -flags +psnr for the same effect.
327     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
328     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
329     * -vtag/-atag/-stag options are now aliases to the new -tag option.
330 - XMV demuxer
331 - Windows Media Image decoder
332 - LATM muxer/demuxer
333 - showinfo filter
334 - split filter
335 - libcdio-paranoia input device for audio CD grabbing
336 - select filter
337 - Apple ProRes decoder
338 - CELT in Ogg demuxing
339 - VC-1 interlaced decoding
340 - lut, lutrgb, and lutyuv filters
341 - boxblur filter
342 - Ut Video decoder
343 - Speex encoding via libspeex
344 - 4:2:2 H.264 decoding support
345 - 4:2:2 and 4:4:4 H.264 encoding with libx264
346 - Pulseaudio input device
347 - replacement Indeo 3 decoder
348 - TLS/SSL and HTTPS protocol support
349 - AVOptions API rewritten and documented
350 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
351   AVCodecContext deprecated. Codec private options should be used instead.
352 - Properly working defaults in libx264 wrapper, support for native presets.
353 - Encrypted OMA files support
354 - Discworld II BMV decoding support
355 - VBLE Decoder
356 - OS X Video Decoder Acceleration (VDA) support
357 - CRI ADX audio format muxer and demuxer
358 - Playstation Portable PMP format demuxer
359 - PCM format support in OMA demuxer
360 - CLJR encoder
361 - Dxtory capture format decoder
362 - v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
363 - OpenMG Audio muxer
364 - Simple segmenting muxer
365 - Indeo 4 decoder
366 - SMJPEG demuxer
367
368
369 version 0.7:
370
371 - E-AC-3 audio encoder
372 - ac3enc: add channel coupling support
373 - floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
374 - H.264/MPEG frame-level multithreading
375 - av_metadata_* functions renamed to av_dict_* and moved to libavutil
376 - 4:4:4 H.264 decoding support
377 - 10-bit H.264 optimizations for x86
378 - bump libswscale for recently reported ABI break
379
380
381 version 0.7_beta2:
382
383 - VP8 frame-level multithreading
384 - NEON optimizations for VP8
385 - removed a lot of deprecated API cruft
386 - FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
387 - DPX image encoder
388 - SMPTE 302M AES3 audio decoder
389 - ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
390 - 9bit and 10bit per sample support in the H.264 decoder
391
392
393 version 0.7_beta1:
394
395 - WebM support in Matroska de/muxer
396 - low overhead Ogg muxing
397 - MMS-TCP support
398 - VP8 de/encoding via libvpx
399 - Demuxer for On2's IVF format
400 - Pictor/PC Paint decoder
401 - HE-AAC v2 decoder
402 - libfaad2 wrapper removed
403 - DTS-ES extension (XCh) decoding support
404 - native VP8 decoder
405 - RTSP tunneling over HTTP
406 - RTP depacketization of SVQ3
407 - -strict inofficial replaced by -strict unofficial
408 - ffplay -exitonkeydown and -exitonmousedown options added
409 - native GSM / GSM MS decoder
410 - RTP depacketization of QDM2
411 - ANSI/ASCII art playback system
412 - Lego Mindstorms RSO de/muxer
413 - SubRip subtitle file muxer and demuxer
414 - Chinese AVS encoding via libxavs
415 - ffprobe -show_packets option added
416 - RTP packetization of Theora and Vorbis
417 - RTP depacketization of MP4A-LATM
418 - RTP packetization and depacketization of VP8
419 - hflip filter
420 - Apple HTTP Live Streaming demuxer
421 - a64 codec
422 - MMS-HTTP support
423 - G.722 ADPCM audio encoder/decoder
424 - R10k video decoder
425 - ocv_smooth filter
426 - frei0r wrapper filter
427 - change crop filter syntax to width:height:x:y
428 - make the crop filter accept parametric expressions
429 - make ffprobe accept AVFormatContext options
430 - yadif filter
431 - blackframe filter
432 - Demuxer for Leitch/Harris' VR native stream format (LXF)
433 - RTP depacketization of the X-QT QuickTime format
434 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
435 - cropdetect filter
436 - ffmpeg -crop* options removed
437 - transpose filter added
438 - ffmpeg -force_key_frames option added
439 - demuxer for receiving raw rtp:// URLs without an SDP description
440 - single stream LATM/LOAS decoder
441 - setpts filter added
442 - Win64 support for optimized x86 assembly functions
443 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
444 - ASS subtitle encoder and decoder
445 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
446 - overlay filter added
447 - rename aspect filter to setdar, and pixelaspect to setsar
448 - IEC 61937 demuxer
449 - Mobotix .mxg demuxer
450 - frei0r source added
451 - hqdn3d filter added
452 - RTP depacketization of QCELP
453 - FLAC parser added
454 - gradfun filter added
455 - AMR-WB decoder
456 - replace the ocv_smooth filter with a more generic ocv filter
457 - Windows Televison (WTV) demuxer
458 - FFmpeg metadata format muxer and demuxer
459 - SubRip (srt) subtitle decoder
460 - floating-point AC-3 encoder added
461 - Lagarith decoder
462 - ffmpeg -copytb option added
463 - IVF muxer added
464 - Wing Commander IV movies decoder added
465 - movie source added
466 - Bink version 'b' audio and video decoder
467 - Bitmap Brothers JV playback system
468 - Apple HTTP Live Streaming protocol handler
469 - sndio support for playback and record
470 - Linux framebuffer input device added
471 - Chronomaster DFA decoder
472 - Mobotix MxPEG decoder
473 - AAC encoding via libvo-aacenc
474 - AMR-WB encoding via libvo-amrwbenc
475 - xWMA demuxer
476 - fieldorder video filter added
477
478
479 version 0.6:
480
481 - PB-frame decoding for H.263
482 - deprecated vhook subsystem removed
483 - deprecated old scaler removed
484 - VQF demuxer
485 - Alpha channel scaler
486 - PCX encoder
487 - RTP packetization of H.263
488 - RTP packetization of AMR
489 - RTP depacketization of Vorbis
490 - CorePNG decoding support
491 - Cook multichannel decoding support
492 - introduced avlanguage helpers in libavformat
493 - 8088flex TMV demuxer and decoder
494 - per-stream language-tags extraction in asfdec
495 - V210 decoder and encoder
496 - remaining GPL parts in AC-3 decoder converted to LGPL
497 - QCP demuxer
498 - SoX native format muxer and demuxer
499 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
500 - DPX image decoder
501 - Electronic Arts Madcow decoder
502 - DivX (XSUB) subtitle encoder
503 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
504 - experimental AAC encoder
505 - RTP depacketization of ASF and RTSP from WMS servers
506 - RTMP support in libavformat
507 - noX handling for OPT_BOOL X options
508 - Wave64 demuxer
509 - IEC-61937 compatible Muxer
510 - TwinVQ decoder
511 - Bluray (PGS) subtitle decoder
512 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
513 - WMA Pro decoder
514 - Core Audio Format demuxer
515 - ATRAC1 decoder
516 - MD STUDIO audio demuxer
517 - RF64 support in WAV demuxer
518 - MPEG-4 Audio Lossless Coding (ALS) decoder
519 - -formats option split into -formats, -codecs, -bsfs, and -protocols
520 - IV8 demuxer
521 - CDG demuxer and decoder
522 - R210 decoder
523 - Auravision Aura 1 and 2 decoders
524 - Deluxe Paint Animation playback system
525 - SIPR decoder
526 - Adobe Filmstrip muxer and demuxer
527 - RTP depacketization of H.263
528 - Bink demuxer and audio/video decoders
529 - enable symbol versioning by default for linkers that support it
530 - IFF PBM/ILBM bitmap decoder
531 - concat protocol
532 - Indeo 5 decoder
533 - RTP depacketization of AMR
534 - WMA Voice decoder
535 - ffprobe tool
536 - AMR-NB decoder
537 - RTSP muxer
538 - HE-AAC v1 decoder
539 - Kega Game Video (KGV1) decoder
540 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
541 - RTP depacketization of Theora
542 - HTTP Digest authentication
543 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
544 - Psygnosis YOP demuxer and video decoder
545 - spectral extension support in the E-AC-3 decoder
546 - unsharp video filter
547 - RTP hinting in the mov/3gp/mp4 muxer
548 - Dirac in Ogg demuxing
549 - seek to keyframes in Ogg
550 - 4:2:2 and 4:4:4 Theora decoding
551 - 35% faster VP3/Theora decoding
552 - faster AAC decoding
553 - faster H.264 decoding
554 - RealAudio 1.0 (14.4K) encoder
555
556
557 version 0.5:
558
559 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
560 - TechSmith Camtasia (TSCC) video decoder
561 - IBM Ultimotion (ULTI) video decoder
562 - Sierra Online audio file demuxer and decoder
563 - Apple QuickDraw (qdrw) video decoder
564 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
565 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
566 - Miro VideoXL (VIXL) video decoder
567 - H.261 video encoder
568 - QPEG video decoder
569 - Nullsoft Video (NSV) file demuxer
570 - Shorten audio decoder
571 - LOCO video decoder
572 - Apple Lossless Audio Codec (ALAC) decoder
573 - Winnov WNV1 video decoder
574 - Autodesk Animator Studio Codec (AASC) decoder
575 - Indeo 2 video decoder
576 - Fraps FPS1 video decoder
577 - Snow video encoder/decoder
578 - Sonic audio encoder/decoder
579 - Vorbis audio decoder
580 - Macromedia ADPCM decoder
581 - Duck TrueMotion 2 video decoder
582 - support for decoding FLX and DTA extensions in FLIC files
583 - H.264 custom quantization matrices support
584 - ffserver fixed, it should now be usable again
585 - QDM2 audio decoder
586 - Real Cooker audio decoder
587 - TrueSpeech audio decoder
588 - WMA2 audio decoder fixed, now all files should play correctly
589 - RealAudio 14.4 and 28.8 decoders fixed
590 - JPEG-LS decoder
591 - build system improvements
592 - tabs and trailing whitespace removed from the codebase
593 - CamStudio video decoder
594 - AIFF/AIFF-C audio format, encoding and decoding
595 - ADTS AAC file reading and writing
596 - Creative VOC file reading and writing
597 - American Laser Games multimedia (*.mm) playback system
598 - Zip Motion Blocks Video decoder
599 - improved Theora/VP3 decoder
600 - True Audio (TTA) decoder
601 - AVS demuxer and video decoder
602 - JPEG-LS encoder
603 - Smacker demuxer and decoder
604 - NuppelVideo/MythTV demuxer and RTjpeg decoder
605 - KMVC decoder
606 - MPEG-2 intra VLC support
607 - MPEG-2 4:2:2 encoder
608 - Flash Screen Video decoder
609 - GXF demuxer
610 - Chinese AVS decoder
611 - GXF muxer
612 - MXF demuxer
613 - VC-1/WMV3/WMV9 video decoder
614 - MacIntel support
615 - AviSynth support
616 - VMware video decoder
617 - VP5 video decoder
618 - VP6 video decoder
619 - WavPack lossless audio decoder
620 - Targa (.TGA) picture decoder
621 - Vorbis audio encoder
622 - Delphine Software .cin demuxer/audio and video decoder
623 - Tiertex .seq demuxer/video decoder
624 - MTV demuxer
625 - TIFF picture encoder and decoder
626 - GIF picture decoder
627 - Intel Music Coder decoder
628 - Zip Motion Blocks Video encoder
629 - Musepack decoder
630 - Flash Screen Video encoder
631 - Theora encoding via libtheora
632 - BMP encoder
633 - WMA encoder
634 - GSM-MS encoder and decoder
635 - DCA decoder
636 - DXA demuxer and decoder
637 - DNxHD decoder
638 - Gamecube movie (.THP) playback system
639 - Blackfin optimizations
640 - Interplay C93 demuxer and video decoder
641 - Bethsoft VID demuxer and video decoder
642 - CRYO APC demuxer
643 - ATRAC3 decoder
644 - V.Flash PTX decoder
645 - RoQ muxer, RoQ audio encoder
646 - Renderware TXD demuxer and decoder
647 - extern C declarations for C++ removed from headers
648 - sws_flags command line option
649 - codebook generator
650 - RoQ video encoder
651 - QTRLE encoder
652 - OS/2 support removed and restored again
653 - AC-3 decoder
654 - NUT muxer
655 - additional SPARC (VIS) optimizations
656 - Matroska muxer
657 - slice-based parallel H.264 decoding
658 - Monkey's Audio demuxer and decoder
659 - AMV audio and video decoder
660 - DNxHD encoder
661 - H.264 PAFF decoding
662 - Nellymoser ASAO decoder
663 - Beam Software SIFF demuxer and decoder
664 - libvorbis Vorbis decoding removed in favor of native decoder
665 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
666 - Ogg (Theora, Vorbis and FLAC) muxer
667 - The "device" muxers and demuxers are now in a new libavdevice library
668 - PC Paintbrush PCX decoder
669 - Sun Rasterfile decoder
670 - TechnoTrend PVA demuxer
671 - Linux Media Labs MPEG-4 (LMLM4) demuxer
672 - AVM2 (Flash 9) SWF muxer
673 - QT variant of IMA ADPCM encoder
674 - VFW grabber
675 - iPod/iPhone compatible mp4 muxer
676 - Mimic decoder
677 - MSN TCP Webcam stream demuxer
678 - RL2 demuxer / decoder
679 - IFF demuxer
680 - 8SVX audio decoder
681 - non-recursive Makefiles
682 - BFI demuxer
683 - MAXIS EA XA (.xa) demuxer / decoder
684 - BFI video decoder
685 - OMA demuxer
686 - MLP/TrueHD decoder
687 - Electronic Arts CMV decoder
688 - Motion Pixels Video decoder
689 - Motion Pixels MVI demuxer
690 - removed animated GIF decoder/demuxer
691 - D-Cinema audio muxer
692 - Electronic Arts TGV decoder
693 - Apple Lossless Audio Codec (ALAC) encoder
694 - AAC decoder
695 - floating point PCM encoder/decoder
696 - MXF muxer
697 - DV100 AKA DVCPRO HD decoder and demuxer
698 - E-AC-3 support added to AC-3 decoder
699 - Nellymoser ASAO encoder
700 - ASS and SSA demuxer and muxer
701 - liba52 wrapper removed
702 - SVQ3 watermark decoding support
703 - Speex decoding via libspeex
704 - Electronic Arts TGQ decoder
705 - RV40 decoder
706 - QCELP / PureVoice decoder
707 - RV30 decoder
708 - hybrid WavPack support
709 - R3D REDCODE demuxer
710 - ALSA support for playback and record
711 - Electronic Arts TQI decoder
712 - OpenJPEG based JPEG 2000 decoder
713 - NC (NC4600) camera file demuxer
714 - Gopher client support
715 - MXF D-10 muxer
716 - generic metadata API
717
718
719 version 0.4.9-pre1:
720
721 - DV encoder, DV muxer
722 - Microsoft RLE video decoder
723 - Microsoft Video-1 decoder
724 - Apple Animation (RLE) decoder
725 - Apple Graphics (SMC) decoder
726 - Apple Video (RPZA) decoder
727 - Cinepak decoder
728 - Sega FILM (CPK) file demuxer
729 - Westwood multimedia support (VQA & AUD files)
730 - Id Quake II CIN playback support
731 - 8BPS video decoder
732 - FLIC playback support
733 - RealVideo 2.0 (RV20) decoder
734 - Duck TrueMotion v1 (DUCK) video decoder
735 - Sierra VMD demuxer and video decoder
736 - MSZH and ZLIB decoder support
737 - SVQ1 video encoder
738 - AMR-WB support
739 - PPC optimizations
740 - rate distortion optimal cbp support
741 - rate distorted optimal ac prediction for MPEG-4
742 - rate distorted optimal lambda->qp support
743 - AAC encoding with libfaac
744 - Sunplus JPEG codec (SP5X) support
745 - use Lagrange multipler instead of QP for ratecontrol
746 - Theora/VP3 decoding support
747 - XA and ADX ADPCM codecs
748 - export MPEG-2 active display area / pan scan
749 - Add support for configuring with IBM XLC
750 - floating point AAN DCT
751 - initial support for zygo video (not complete)
752 - RGB ffv1 support
753 - new audio/video parser API
754 - av_log() system
755 - av_read_frame() and av_seek_frame() support
756 - missing last frame fixes
757 - seek by mouse in ffplay
758 - noise reduction of DCT coefficients
759 - H.263 OBMC & 4MV support
760 - H.263 alternative inter vlc support
761 - H.263 loop filter
762 - H.263 slice structured mode
763 - interlaced DCT support for MPEG-2 encoding
764 - stuffing to stay above min_bitrate
765 - MB type & QP visualization
766 - frame stepping for ffplay
767 - interlaced motion estimation
768 - alternate scantable support
769 - SVCD scan offset support
770 - closed GOP support
771 - SSE2 FDCT
772 - quantizer noise shaping
773 - G.726 ADPCM audio codec
774 - MS ADPCM encoding
775 - multithreaded/SMP motion estimation
776 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
777 - multithreaded/SMP decoding for MPEG-2
778 - FLAC decoder
779 - Metrowerks CodeWarrior suppport
780 - H.263+ custom pcf support
781 - nicer output for 'ffmpeg -formats'
782 - Matroska demuxer
783 - SGI image format, encoding and decoding
784 - H.264 loop filter support
785 - H.264 CABAC support
786 - nicer looking arrows for the motion vector visualization
787 - improved VCD support
788 - audio timestamp drift compensation
789 - MPEG-2 YUV 422/444 support
790 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
791 - better image scaling
792 - H.261 support
793 - correctly interleave packets during encoding
794 - VIS optimized motion compensation
795 - intra_dc_precision>0 encoding support
796 - support reuse of motion vectors/MB types/field select values of the source video
797 - more accurate deblock filter
798 - padding support
799 - many optimizations and bugfixes
800 - FunCom ISS audio file demuxer and according ADPCM decoding
801
802
803 version 0.4.8:
804
805 - MPEG-2 video encoding (Michael)
806 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
807 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
808   and Mario Brito)
809 - Xan DPCM audio decoder (Mario Brito)
810 - Interplay MVE playback subsystem (Mike Melanson)
811 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
812
813
814 version 0.4.7:
815
816 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
817   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
818 - current version now also compiles with older GCC (Fabrice)
819 - 4X multimedia playback system including 4xm file demuxer (Mike
820   Melanson), and 4X video and audio codecs (Michael)
821 - Creative YUV (CYUV) decoder (Mike Melanson)
822 - FFV1 codec (our very simple lossless intra only codec, compresses much better
823   than HuffYUV) (Michael)
824 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
825 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
826   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
827 - ffplay has been replaced with a newer version which uses SDL (optionally)
828   for multiplatform support (Fabrice)
829 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
830   by anonymous
831 - AMR format has been added (Johannes Carlsson)
832 - 3GP support has been added (Johannes Carlsson)
833 - VP3 codec has been added (Mike Melanson)
834 - more MPEG-1/2 fixes
835 - better multiplatform support, MS Visual Studio fixes (various)
836 - AltiVec optimizations (Magnus Damn and others)
837 - SH4 processor support has been added (BERO)
838 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
839 - VOB streaming support (Brian Foley)
840 - better MP3 autodetection (Andriy Rysin)
841 - qpel encoding (Michael)
842 - 4mv+b frames encoding finally fixed (Michael)
843 - chroma ME (Michael)
844 - 5 comparison functions for ME (Michael)
845 - B-frame encoding speedup (Michael)
846 - WMV2 codec (unfinished - Michael)
847 - user specified diamond size for EPZS (Michael)
848 - Playstation STR playback subsystem, still experimental (Mike and Michael)
849 - ASV2 codec (Michael)
850 - CLJR decoder (Alex)
851
852 .. And lots more new enhancements and fixes.
853
854
855 version 0.4.6:
856
857 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
858   from scratch
859 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
860 - fix quantization bug in AC3 encoder
861 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
862 - added prototype ffplay program
863 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
864 - bug fix on MCBPC tables of H.263 (Juanjo)
865 - bug fix on DC coefficients of H.263 (Juanjo)
866 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
867 - now we can decode H.263 streams found in QuickTime files (Juanjo)
868 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
869 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
870 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
871 - now H.263 picture size is returned on the first decoded frame (Juanjo)
872 - added first regression tests
873 - added MPEG-2 TS demuxer
874 - new demux API for libav
875 - more accurate and faster IDCT (Michael)
876 - faster and entropy-controlled motion search (Michael)
877 - two pass video encoding (Michael)
878 - new video rate control (Michael)
879 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
880 - great performance improvement of video encoders and decoders (Michael)
881 - new and faster bit readers and vlc parsers (Michael)
882 - high quality encoding mode: tries all macroblock/VLC types (Michael)
883 - added DV video decoder
884 - preliminary RTP/RTSP support in ffserver and libavformat
885 - H.263+ AIC decoding/encoding support (Juanjo)
886 - VCD MPEG-PS mode (Juanjo)
887 - PSNR stuff (Juanjo)
888 - simple stats output (Juanjo)
889 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
890
891
892 version 0.4.5:
893
894 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
895 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
896 - added configure system (actually a small shell script)
897 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
898   Michael Hipp (temporary solution - waiting for integer only
899   decoder)
900 - fixed VIDIOCSYNC interrupt
901 - added Intel H.263 decoding support ('I263' AVI fourCC)
902 - added Real Video 1.0 decoding (needs further testing)
903 - simplified image formats again. Added PGM format (=grey
904   pgm). Renamed old PGM to PGMYUV.
905 - fixed msmpeg4 slice issues (tell me if you still find problems)
906 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
907 - added support for MPlayer interface
908 - added macroblock skip optimization
909 - added MJPEG decoder
910 - added mmx/mmxext IDCT from libmpeg2
911 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
912   <celer at shell.scrypt.net>)
913 - added pixel format conversion layer (e.g. for MJPEG or PPM)
914 - added deinterlacing option
915 - MPEG-1/2 fixes
916 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
917 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
918 - Windows porting of file converter
919 - added MJPEG raw format (input/ouput)
920 - added JPEG image format support (input/output)
921
922
923 version 0.4.4:
924
925 - fixed some std header definitions (Bjorn Lindgren
926   <bjorn.e.lindgren at telia.com>).
927 - added MPEG demuxer (MPEG-1 and 2 compatible).
928 - added ASF demuxer
929 - added prototype RM demuxer
930 - added AC3 decoding (done with libac3 by Aaron Holtzman)
931 - added decoding codec parameter guessing (.e.g. for MPEG, because the
932   header does not include them)
933 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
934   play them (only tested video)
935 - fixed H.263 white bug
936 - fixed phase rounding in img resample filter
937 - add MMX code for polyphase img resample filter
938 - added CPU autodetection
939 - added generic title/author/copyright/comment string handling (ASF and RM
940   use them)
941 - added SWF demux to extract MP3 track (not usable yet because no MP3
942   decoder)
943 - added fractional frame rate support
944 - codecs are no longer searched by read_header() (should fix ffserver
945   segfault)
946
947
948 version 0.4.3:
949
950 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
951 - fixed raw yuv output
952 - added motion rounding support in MPEG-4
953 - fixed motion bug rounding in MSMPEG4
954 - added B-frame handling in video core
955 - added full MPEG-1 decoding support
956 - added partial (frame only) MPEG-2 support
957 - changed the FOURCC code for H.263 to "U263" to be able to see the
958   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
959   this +codec ;) (JuanJo).
960 - Halfpel motion estimation after MB type selection (JuanJo)
961 - added pgm and .Y.U.V output format
962 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
963   output.
964 - added pgmpipe I/O format (original patch from Martin Aumueller
965   <lists at reserv.at>, but changed completely since we use a format
966   instead of a protocol)
967
968
969 version 0.4.2:
970
971 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
972   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
973   missing. MSMPEG4 support is complete.
974 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
975   can decode ffmpeg MPEGs :-)).
976 - added libavcodec API documentation (see apiexample.c).
977 - fixed image polyphase bug (the bottom of some images could be
978   greenish)
979 - added support for non clipped motion vectors (decoding only)
980   and image sizes non-multiple of 16
981 - added support for AC prediction (decoding only)
982 - added file overwrite confirmation (can be disabled with -y)
983 - added custom size picture to H.263 using H.263+ (Juanjo)
984
985
986 version 0.4.1:
987
988 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
989   of AVI and ASF to DIV3.
990 - added -me option to set motion estimation method
991   (default=log). suppressed redundant -hq option.
992 - added options -acodec and -vcodec to force a given codec (useful for
993   AVI for example)
994 - fixed -an option
995 - improved dct_quantize speed
996 - factorized some motion estimation code
997
998
999 version 0.4.0:
1000
1001 - removing grab code from ffserver and moved it to ffmpeg. Added
1002   multistream support to ffmpeg.
1003 - added timeshifting support for live feeds (option ?date=xxx in the
1004   URL)
1005 - added high quality image resize code with polyphase filter (need
1006   mmx/see optimization). Enable multiple image size support in ffserver.
1007 - added multi live feed support in ffserver
1008 - suppressed master feature from ffserver (it should be done with an
1009   external program which opens the .ffm url and writes it to another
1010   ffserver)
1011 - added preliminary support for video stream parsing (WAV and AVI half
1012   done). Added proper support for audio/video file conversion in
1013   ffmpeg.
1014 - added preliminary support for video file sending from ffserver
1015 - redesigning I/O subsystem: now using URL based input and output
1016   (see avio.h)
1017 - added WAV format support
1018 - added "tty user interface" to ffmpeg to stop grabbing gracefully
1019 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
1020   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
1021 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
1022 - added new motion estimation algorithms, log and phods (Juanjo)
1023 - changed directories: libav for format handling, libavcodec for
1024   codecs
1025
1026
1027 version 0.3.4:
1028
1029 - added stereo in MPEG audio encoder
1030
1031
1032 version 0.3.3:
1033
1034 - added 'high quality' mode which use motion vectors. It can be used in
1035   real time at low resolution.
1036 - fixed rounding problems which caused quality problems at high
1037   bitrates and large GOP size
1038
1039
1040 version 0.3.2: small fixes
1041
1042 - ASF fixes
1043 - put_seek bug fix
1044
1045
1046 version 0.3.1: added avi/divx support
1047
1048 - added AVI support
1049 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
1050 - added sound for flash format (not tested)
1051
1052
1053 version 0.3: initial public release