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