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