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