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