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