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