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