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