cmdutils: allow matching by metadata in stream specifiers
[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 - libx265 encoder
6 - shuffleplanes filter
7 - replaygain data export
8 - Alias PIX image encoder and decoder
9 - BRender PIX image decoder
10 - Amazing Studio PAF playback support
11 - XBM decoder
12 - bmp standalone parser
13 - OpenEXR image decoder
14 - support encoding and decoding 4-channel SGI images
15 - support decoding 16-bit RLE SGI images
16 - VP7 video decoder
17 - LucasArts SMUSH SANM video decoder
18 - LucasArts SMUSH VIMA audio decoder (ADPCM)
19 - LucasArts SMUSH demuxer
20 - MP2 encoding via TwoLAME
21 - asettb filter
22 - Silicon Graphics RLE 8-bit video decoder
23 - Silicon Graphics Motion Video Compressor 1 & 2 decoder
24 - Silicon Graphics Movie demuxer
25 - On2 AVC (Audio for Video) decoder
26 - support for decoding through DXVA2 in avconv
27 - libbs2b-based stereo-to-binaural audio filter
28 - native Opus decoder
29 - display matrix export and rotation api
30 - drop avserver, it was unmaintained for years and largely broken
31 - Icecast protocol
32 - request icecast metadata by default
33 - support for using metadata in stream specifiers in avtools
34
35
36 version 10:
37 - av_strnstr
38 - support ID3v2 tags in ASF files
39 - reference-counting for AVFrame and AVPacket data
40 - avconv now fails when input options are used for output file
41   or vice versa
42 - avconv options -filter_script and -filter_complex_script, which allow a
43   filtergraph description to be read from a file
44 - uniform options syntax across all filters
45 - interlace filter
46 - JPEG 2000 decoder
47 - asetpts filter (same as setpts, but for audio)
48 - trim and atrim filters
49 - avconv -t and -ss (output-only) options are now sample-accurate when
50   transcoding audio
51 - Matroska muxer can now put the index at the beginning of the file.
52 - avconv -deinterlace option removed, the yadif filter should be used instead
53 - Apple Intermediate Codec decoder
54 - Escape 130 video decoder
55 - support for slice multithreading in libavfilter
56 - VC-1 interlaced B-frame support
57 - support for WavPack muxing (raw and in Matroska)
58 - Go2Webinar decoder
59 - WavPack encoding through libwavpack
60 - Added the -n parameter to avconv
61 - RTMP seek support
62 - when transcoding with avconv (i.e. not streamcopying), -ss is now accurate
63   even when used as an input option. Previous behavior can be restored with
64   the -noaccurate_seek option.
65 - avconv -t option can now be used for inputs, to limit the duration of
66   data read from an input file
67 - Voxware MetaSound decoder
68 - WebP decoder
69 - Error Resilient AAC syntax (ER AAC LC) decoding
70 - Low Delay AAC (ER AAC LD) decoding
71 - mux chapters in ASF files
72 - Opus in Ogg demuxing
73 - Enhanced Low Delay AAC (ER AAC ELD) decoding (no LD SBR support)
74 - F4V muxer
75 - HNM version 4 demuxer and video decoder
76 - HEVC decoder
77 - raw HEVC, HEVC in MOV/MP4, HEVC in Matroska, HEVC in MPEG-TS demuxing
78 - remove avplay -vismv option, which has not worked for a long time
79 - Live HDS muxer
80 - setsar/setdar filters now support variables in ratio expressions
81 - dar variable in the scale filter now returns the actual DAR (i.e. a * sar)
82 - VP9 decoder
83 - support for decoding through VDPAU in avconv (the -hwaccel option)
84 - remove mp3_header_(de)compress bitstream filters
85 - stereoscopic 3d metadata handling
86 - png standalone parser
87 - WebP encoding via libwebp
88 - ATRAC3+ decoder
89 - framepack filter
90 - Mirillis FIC video decoder
91 - Support DNx444
92 - compand audio filter
93
94
95 version 9:
96 - av_basename and av_dirname
97 - adobe and limelight publisher authentication in RTMP
98 - VDPAU hardware acceleration through normal hwaccel
99 - SRTP support
100
101
102 version 9_beta3:
103 - ashowinfo audio filter
104 - 24-bit FLAC encoding
105 - audio volume filter
106 - deprecated the avconv -vol option. the volume filter is to be used instead.
107 - multi-channel ALAC encoding up to 7.1
108 - TAK demuxer, parser, and decoder
109 - adaptive frame-level multithreading for H.264
110
111
112 version 9_beta2:
113 - metadata (INFO tag) support in WAV muxer
114 - support for building DLLs using MSVC
115 - remove avserver daemon mode
116 - support building on the Plan 9 operating system
117 - ffv1: support version 1.3
118
119
120 version 9_beta1:
121
122 - XWD encoder and decoder
123 - Support for fragmentation in the mov/mp4 muxer
124 - ISMV (Smooth Streaming) muxer
125 - CDXL demuxer and decoder
126 - Apple ProRes encoder
127 - Sun Rasterfile Encoder
128 - remove libpostproc
129 - ID3v2 attached pictures reading and writing
130 - WMA Lossless decoder
131 - XBM encoder
132 - RealAudio Lossless decoder
133 - ZeroCodec decoder
134 - drop support for avconv without libavfilter
135 - add libavresample audio conversion library
136 - audio filters support in libavfilter and avconv
137 - add fps filter
138 - audio split filter
139 - audio mix filter
140 - avprobe output is now standard INI or JSON. The old format can still
141   be used with -of old.
142 - Indeo Audio decoder
143 - channelsplit audio filter
144 - RTMPT protocol support
145 - iLBC encoding/decoding via libilbc
146 - Microsoft Screen 1 decoder
147 - join audio filter
148 - audio channel mapping filter
149 - Microsoft ATC Screen decoder
150 - RTSP listen mode
151 - TechSmith Screen Codec 2 decoder
152 - AAC encoding via libfdk-aac
153 - Microsoft Expression Encoder Screen decoder
154 - RTMPS protocol support
155 - RTMPTS protocol support
156 - JPEG 2000 encoding support through OpenJPEG
157 - G.723.1 demuxer and decoder
158 - RTMPE protocol support
159 - RTMPTE protocol support
160 - Canopus Lossless Codec decoder
161 - avconv -shortest option is now per-output file,
162   -pass and -passlogfile are now per-output stream
163 - Ut Video encoder
164 - Microsoft Screen 2 decoder
165 - RTP depacketization of JPEG
166 - Smooth Streaming live segmenter muxer
167 - RTP packetization of JPEG
168 - Opus decoder and encoder using libopus
169 - remove -same_quant, it hasn't worked for years
170 - support for building with MSVC
171
172
173 version 0.8:
174
175 - GSM audio parser
176 - SMJPEG muxer
177
178
179 version 0.8_beta2:
180
181 - Automatic thread count based on detection number of (available) CPU cores
182 - Deprecate libpostproc. If desired, the switch --enable-postproc will
183   enable it but it may be removed in a later Libav release.
184 - rv34: frame-level multi-threading
185 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
186
187
188 version 0.8_beta1:
189
190 - BWF muxer
191 - Flash Screen Video 2 decoder
192 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
193 - ffmpeg deprecated, added avconv, which is almost the same for now, except
194 for a few incompatible changes in the options, which will hopefully make them
195 easier to use. The changes are:
196     * The options placement is now strictly enforced! While in theory the
197       options for ffmpeg should be given in [input options] -i INPUT [output
198       options] OUTPUT order, in practice it was possible to give output options
199       before the -i and it mostly worked. Except when it didn't - the behavior was
200       a bit inconsistent. In avconv, it is not possible to mix input and output
201       options. All non-global options are reset after an input or output filename.
202     * All per-file options are now truly per-file - they apply only to the next
203       input or output file and specifying different values for different files
204       will now work properly (notably -ss and -t options).
205     * All per-stream options are now truly per-stream - it is possible to
206       specify which stream(s) should a given option apply to. See the Stream
207       specifiers section in the avconv manual for details.
208     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
209       sense that they're specified after the output filename instead of before,
210       like all other options. In avconv this irregularity is removed, all options
211       apply to the next input or output file.
212     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
213       irregular and highly confusing, they were also redundant. In avconv the -map
214       option will create new streams in the output file and map input streams to
215       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
216       each stream in the first input file.
217     * The -map option now has slightly different and more powerful syntax:
218         + Colons (':') are used to separate file index/stream type/stream index
219           instead of dots. Comma (',') is used to separate the sync stream instead
220           of colon.. This is done for consistency with other options.
221         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
222           output stream from the third input audio stream.
223         + Omitting the stream index now maps all the streams of the given type,
224           not just the first. E.g. -map 0:s creates output streams for all the
225           subtitle streams in the first input file.
226         + Since -map can now match multiple streams, negative mappings were
227           introduced. Negative mappings disable some streams from an already
228           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
229           all the stream in the first input file, except for the second audio
230           stream'.
231     * There is a new option -c (or -codec) for choosing the decoder/encoder to
232       use, which allows to precisely specify target stream(s) consistently with
233       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
234       libvorbis sets the codec for the first audio stream and -c copy copies all
235       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
236       aliases to -c:v/a/s
237     * It is now possible to precisely specify which stream should an AVOption
238       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
239       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
240       syntax is deprecated and will stop working soon.
241     * -map_chapters now takes only an input file index and applies to the next
242       output file. This is consistent with how all the other options work.
243     * -map_metadata now takes only an input metadata specifier and applies to
244       the next output file. Output metadata specifier is now part of the option
245       name, similarly to the AVOptions/map/codec feature above.
246     * -metadata can now be used to set metadata on streams and chapters, e.g.
247       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
248       This made -vlang/-alang/-slang options redundant, so they were removed.
249     * -qscale option now uses stream specifiers and applies to all streams, not
250       just video. I.e. plain -qscale number would now apply to all streams. To get
251       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
252       and -aq is now an alias for -q:a.
253     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
254       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
255     * -itsscale option now uses stream specifiers, so its argument is only the
256       scale parameter.
257     * -intra option was removed, use -g 0 for the same effect.
258     * -psnr option was removed, use -flags +psnr for the same effect.
259     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
260     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
261     * -vtag/-atag/-stag options are now aliases to the new -tag option.
262 - XMV demuxer
263 - Windows Media Image decoder
264 - LATM muxer/demuxer
265 - showinfo filter
266 - split filter
267 - libcdio-paranoia input device for audio CD grabbing
268 - select filter
269 - Apple ProRes decoder
270 - CELT in Ogg demuxing
271 - VC-1 interlaced decoding
272 - lut, lutrgb, and lutyuv filters
273 - boxblur filter
274 - Ut Video decoder
275 - Speex encoding via libspeex
276 - 4:2:2 H.264 decoding support
277 - 4:2:2 and 4:4:4 H.264 encoding with libx264
278 - Pulseaudio input device
279 - replacement Indeo 3 decoder
280 - TLS/SSL and HTTPS protocol support
281 - AVOptions API rewritten and documented
282 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
283   AVCodecContext deprecated. Codec private options should be used instead.
284 - Properly working defaults in libx264 wrapper, support for native presets.
285 - Encrypted OMA files support
286 - Discworld II BMV decoding support
287 - VBLE Decoder
288 - OS X Video Decoder Acceleration (VDA) support
289 - CRI ADX audio format muxer and demuxer
290 - Playstation Portable PMP format demuxer
291 - PCM format support in OMA demuxer
292 - CLJR encoder
293 - Dxtory capture format decoder
294 - v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
295 - OpenMG Audio muxer
296 - Simple segmenting muxer
297 - Indeo 4 decoder
298 - SMJPEG demuxer
299
300
301 version 0.7:
302
303 - E-AC-3 audio encoder
304 - ac3enc: add channel coupling support
305 - floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
306 - H.264/MPEG frame-level multithreading
307 - av_metadata_* functions renamed to av_dict_* and moved to libavutil
308 - 4:4:4 H.264 decoding support
309 - 10-bit H.264 optimizations for x86
310 - bump libswscale for recently reported ABI break
311
312
313 version 0.7_beta2:
314
315 - VP8 frame-level multithreading
316 - NEON optimizations for VP8
317 - removed a lot of deprecated API cruft
318 - FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
319 - DPX image encoder
320 - SMPTE 302M AES3 audio decoder
321 - ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
322 - 9bit and 10bit per sample support in the H.264 decoder
323
324
325 version 0.7_beta1:
326
327 - WebM support in Matroska de/muxer
328 - low overhead Ogg muxing
329 - MMS-TCP support
330 - VP8 de/encoding via libvpx
331 - Demuxer for On2's IVF format
332 - Pictor/PC Paint decoder
333 - HE-AAC v2 decoder
334 - libfaad2 wrapper removed
335 - DTS-ES extension (XCh) decoding support
336 - native VP8 decoder
337 - RTSP tunneling over HTTP
338 - RTP depacketization of SVQ3
339 - -strict inofficial replaced by -strict unofficial
340 - ffplay -exitonkeydown and -exitonmousedown options added
341 - native GSM / GSM MS decoder
342 - RTP depacketization of QDM2
343 - ANSI/ASCII art playback system
344 - Lego Mindstorms RSO de/muxer
345 - SubRip subtitle file muxer and demuxer
346 - Chinese AVS encoding via libxavs
347 - ffprobe -show_packets option added
348 - RTP packetization of Theora and Vorbis
349 - RTP depacketization of MP4A-LATM
350 - RTP packetization and depacketization of VP8
351 - hflip filter
352 - Apple HTTP Live Streaming demuxer
353 - a64 codec
354 - MMS-HTTP support
355 - G.722 ADPCM audio encoder/decoder
356 - R10k video decoder
357 - ocv_smooth filter
358 - frei0r wrapper filter
359 - change crop filter syntax to width:height:x:y
360 - make the crop filter accept parametric expressions
361 - make ffprobe accept AVFormatContext options
362 - yadif filter
363 - blackframe filter
364 - Demuxer for Leitch/Harris' VR native stream format (LXF)
365 - RTP depacketization of the X-QT QuickTime format
366 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
367 - cropdetect filter
368 - ffmpeg -crop* options removed
369 - transpose filter added
370 - ffmpeg -force_key_frames option added
371 - demuxer for receiving raw rtp:// URLs without an SDP description
372 - single stream LATM/LOAS decoder
373 - setpts filter added
374 - Win64 support for optimized x86 assembly functions
375 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
376 - ASS subtitle encoder and decoder
377 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
378 - overlay filter added
379 - rename aspect filter to setdar, and pixelaspect to setsar
380 - IEC 61937 demuxer
381 - Mobotix .mxg demuxer
382 - frei0r source added
383 - hqdn3d filter added
384 - RTP depacketization of QCELP
385 - FLAC parser added
386 - gradfun filter added
387 - AMR-WB decoder
388 - replace the ocv_smooth filter with a more generic ocv filter
389 - Windows Televison (WTV) demuxer
390 - FFmpeg metadata format muxer and demuxer
391 - SubRip (srt) subtitle decoder
392 - floating-point AC-3 encoder added
393 - Lagarith decoder
394 - ffmpeg -copytb option added
395 - IVF muxer added
396 - Wing Commander IV movies decoder added
397 - movie source added
398 - Bink version 'b' audio and video decoder
399 - Bitmap Brothers JV playback system
400 - Apple HTTP Live Streaming protocol handler
401 - sndio support for playback and record
402 - Linux framebuffer input device added
403 - Chronomaster DFA decoder
404 - Mobotix MxPEG decoder
405 - AAC encoding via libvo-aacenc
406 - AMR-WB encoding via libvo-amrwbenc
407 - xWMA demuxer
408 - fieldorder video filter added
409
410
411 version 0.6:
412
413 - PB-frame decoding for H.263
414 - deprecated vhook subsystem removed
415 - deprecated old scaler removed
416 - VQF demuxer
417 - Alpha channel scaler
418 - PCX encoder
419 - RTP packetization of H.263
420 - RTP packetization of AMR
421 - RTP depacketization of Vorbis
422 - CorePNG decoding support
423 - Cook multichannel decoding support
424 - introduced avlanguage helpers in libavformat
425 - 8088flex TMV demuxer and decoder
426 - per-stream language-tags extraction in asfdec
427 - V210 decoder and encoder
428 - remaining GPL parts in AC-3 decoder converted to LGPL
429 - QCP demuxer
430 - SoX native format muxer and demuxer
431 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
432 - DPX image decoder
433 - Electronic Arts Madcow decoder
434 - DivX (XSUB) subtitle encoder
435 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
436 - experimental AAC encoder
437 - RTP depacketization of ASF and RTSP from WMS servers
438 - RTMP support in libavformat
439 - noX handling for OPT_BOOL X options
440 - Wave64 demuxer
441 - IEC-61937 compatible Muxer
442 - TwinVQ decoder
443 - Bluray (PGS) subtitle decoder
444 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
445 - WMA Pro decoder
446 - Core Audio Format demuxer
447 - ATRAC1 decoder
448 - MD STUDIO audio demuxer
449 - RF64 support in WAV demuxer
450 - MPEG-4 Audio Lossless Coding (ALS) decoder
451 - -formats option split into -formats, -codecs, -bsfs, and -protocols
452 - IV8 demuxer
453 - CDG demuxer and decoder
454 - R210 decoder
455 - Auravision Aura 1 and 2 decoders
456 - Deluxe Paint Animation playback system
457 - SIPR decoder
458 - Adobe Filmstrip muxer and demuxer
459 - RTP depacketization of H.263
460 - Bink demuxer and audio/video decoders
461 - enable symbol versioning by default for linkers that support it
462 - IFF PBM/ILBM bitmap decoder
463 - concat protocol
464 - Indeo 5 decoder
465 - RTP depacketization of AMR
466 - WMA Voice decoder
467 - ffprobe tool
468 - AMR-NB decoder
469 - RTSP muxer
470 - HE-AAC v1 decoder
471 - Kega Game Video (KGV1) decoder
472 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
473 - RTP depacketization of Theora
474 - HTTP Digest authentication
475 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
476 - Psygnosis YOP demuxer and video decoder
477 - spectral extension support in the E-AC-3 decoder
478 - unsharp video filter
479 - RTP hinting in the mov/3gp/mp4 muxer
480 - Dirac in Ogg demuxing
481 - seek to keyframes in Ogg
482 - 4:2:2 and 4:4:4 Theora decoding
483 - 35% faster VP3/Theora decoding
484 - faster AAC decoding
485 - faster H.264 decoding
486 - RealAudio 1.0 (14.4K) encoder
487
488
489 version 0.5:
490
491 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
492 - TechSmith Camtasia (TSCC) video decoder
493 - IBM Ultimotion (ULTI) video decoder
494 - Sierra Online audio file demuxer and decoder
495 - Apple QuickDraw (qdrw) video decoder
496 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
497 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
498 - Miro VideoXL (VIXL) video decoder
499 - H.261 video encoder
500 - QPEG video decoder
501 - Nullsoft Video (NSV) file demuxer
502 - Shorten audio decoder
503 - LOCO video decoder
504 - Apple Lossless Audio Codec (ALAC) decoder
505 - Winnov WNV1 video decoder
506 - Autodesk Animator Studio Codec (AASC) decoder
507 - Indeo 2 video decoder
508 - Fraps FPS1 video decoder
509 - Snow video encoder/decoder
510 - Sonic audio encoder/decoder
511 - Vorbis audio decoder
512 - Macromedia ADPCM decoder
513 - Duck TrueMotion 2 video decoder
514 - support for decoding FLX and DTA extensions in FLIC files
515 - H.264 custom quantization matrices support
516 - ffserver fixed, it should now be usable again
517 - QDM2 audio decoder
518 - Real Cooker audio decoder
519 - TrueSpeech audio decoder
520 - WMA2 audio decoder fixed, now all files should play correctly
521 - RealAudio 14.4 and 28.8 decoders fixed
522 - JPEG-LS decoder
523 - build system improvements
524 - tabs and trailing whitespace removed from the codebase
525 - CamStudio video decoder
526 - AIFF/AIFF-C audio format, encoding and decoding
527 - ADTS AAC file reading and writing
528 - Creative VOC file reading and writing
529 - American Laser Games multimedia (*.mm) playback system
530 - Zip Motion Blocks Video decoder
531 - improved Theora/VP3 decoder
532 - True Audio (TTA) decoder
533 - AVS demuxer and video decoder
534 - JPEG-LS encoder
535 - Smacker demuxer and decoder
536 - NuppelVideo/MythTV demuxer and RTjpeg decoder
537 - KMVC decoder
538 - MPEG-2 intra VLC support
539 - MPEG-2 4:2:2 encoder
540 - Flash Screen Video decoder
541 - GXF demuxer
542 - Chinese AVS decoder
543 - GXF muxer
544 - MXF demuxer
545 - VC-1/WMV3/WMV9 video decoder
546 - MacIntel support
547 - AviSynth support
548 - VMware video decoder
549 - VP5 video decoder
550 - VP6 video decoder
551 - WavPack lossless audio decoder
552 - Targa (.TGA) picture decoder
553 - Vorbis audio encoder
554 - Delphine Software .cin demuxer/audio and video decoder
555 - Tiertex .seq demuxer/video decoder
556 - MTV demuxer
557 - TIFF picture encoder and decoder
558 - GIF picture decoder
559 - Intel Music Coder decoder
560 - Zip Motion Blocks Video encoder
561 - Musepack decoder
562 - Flash Screen Video encoder
563 - Theora encoding via libtheora
564 - BMP encoder
565 - WMA encoder
566 - GSM-MS encoder and decoder
567 - DCA decoder
568 - DXA demuxer and decoder
569 - DNxHD decoder
570 - Gamecube movie (.THP) playback system
571 - Blackfin optimizations
572 - Interplay C93 demuxer and video decoder
573 - Bethsoft VID demuxer and video decoder
574 - CRYO APC demuxer
575 - ATRAC3 decoder
576 - V.Flash PTX decoder
577 - RoQ muxer, RoQ audio encoder
578 - Renderware TXD demuxer and decoder
579 - extern C declarations for C++ removed from headers
580 - sws_flags command line option
581 - codebook generator
582 - RoQ video encoder
583 - QTRLE encoder
584 - OS/2 support removed and restored again
585 - AC-3 decoder
586 - NUT muxer
587 - additional SPARC (VIS) optimizations
588 - Matroska muxer
589 - slice-based parallel H.264 decoding
590 - Monkey's Audio demuxer and decoder
591 - AMV audio and video decoder
592 - DNxHD encoder
593 - H.264 PAFF decoding
594 - Nellymoser ASAO decoder
595 - Beam Software SIFF demuxer and decoder
596 - libvorbis Vorbis decoding removed in favor of native decoder
597 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
598 - Ogg (Theora, Vorbis and FLAC) muxer
599 - The "device" muxers and demuxers are now in a new libavdevice library
600 - PC Paintbrush PCX decoder
601 - Sun Rasterfile decoder
602 - TechnoTrend PVA demuxer
603 - Linux Media Labs MPEG-4 (LMLM4) demuxer
604 - AVM2 (Flash 9) SWF muxer
605 - QT variant of IMA ADPCM encoder
606 - VFW grabber
607 - iPod/iPhone compatible mp4 muxer
608 - Mimic decoder
609 - MSN TCP Webcam stream demuxer
610 - RL2 demuxer / decoder
611 - IFF demuxer
612 - 8SVX audio decoder
613 - non-recursive Makefiles
614 - BFI demuxer
615 - MAXIS EA XA (.xa) demuxer / decoder
616 - BFI video decoder
617 - OMA demuxer
618 - MLP/TrueHD decoder
619 - Electronic Arts CMV decoder
620 - Motion Pixels Video decoder
621 - Motion Pixels MVI demuxer
622 - removed animated GIF decoder/demuxer
623 - D-Cinema audio muxer
624 - Electronic Arts TGV decoder
625 - Apple Lossless Audio Codec (ALAC) encoder
626 - AAC decoder
627 - floating point PCM encoder/decoder
628 - MXF muxer
629 - DV100 AKA DVCPRO HD decoder and demuxer
630 - E-AC-3 support added to AC-3 decoder
631 - Nellymoser ASAO encoder
632 - ASS and SSA demuxer and muxer
633 - liba52 wrapper removed
634 - SVQ3 watermark decoding support
635 - Speex decoding via libspeex
636 - Electronic Arts TGQ decoder
637 - RV40 decoder
638 - QCELP / PureVoice decoder
639 - RV30 decoder
640 - hybrid WavPack support
641 - R3D REDCODE demuxer
642 - ALSA support for playback and record
643 - Electronic Arts TQI decoder
644 - OpenJPEG based JPEG 2000 decoder
645 - NC (NC4600) camera file demuxer
646 - Gopher client support
647 - MXF D-10 muxer
648 - generic metadata API
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/ouput)
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