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