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