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