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