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