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