Correctly handle empty frames
[libav.git] / Changelog
CommitLineData
9d53d58e 1version <next>
c721d803 2- The "device" muxers and demuxers are now in a new libavdevice library
06ab9cff 3- DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
9d53d58e 4- TechSmith Camtasia (TSCC) video decoder
d0a0bbd2 5- IBM Ultimotion (ULTI) video decoder
d08d7142
MM
6- Sierra Online audio file demuxer and decoder
7- Apple QuickDraw (qdrw) video decoder
22052247 8- Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
ad81a9fe 9- Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
ab711b3c 10- Miro VideoXL (VIXL) video decoder
b06b45c4 11- H.261 video encoder
acfd8f0f 12- QPEG video decoder
353147ed 13- Nullsoft Video (NSV) file demuxer
13dfd2b9 14- Shorten audio decoder
9c7fb608 15- LOCO video decoder
115329f1 16- Apple Lossless Audio Codec (ALAC) decoder
a8a15e9d 17- Winnov WNV1 video decoder
589f8220 18- Autodesk Animator Studio Codec (AASC) decoder
bfaad39f 19- Indeo 2 video decoder
b81f8949 20- Fraps FPS1 video decoder
e0db8cfb 21- Snow video encoder/decoder
af4ca324 22- Sonic audio encoder/decoder
a3cad047 23- Vorbis audio encoder/decoder
af4ca324 24- Macromedia ADPCM decoder
e0db8cfb
DB
25- Duck TrueMotion 2 video decoder
26- support for decoding FLX and DTA extensions in FLIC files
b2909f1a 27- H.264 custom quantization matrices support
a8289180 28- ffserver fixed, it should now be usable again
8d1018bf 29- QDM2 audio decoder
8a2d410e 30- Real Cooker audio decoder
bf3027c8 31- TrueSpeech audio decoder
65694974
DB
32- WMA2 audio decoder fixed, now all files should play correctly
33- RealAudio 14.4 and 28.8 decoders fixed
26d6d032 34- JPEG-LS encoder and decoder
45e63d13 35- CamStudio video decoder
3f45598a
DB
36- build system improvements
37- tabs and trailing whitespace removed from the codebase
f11288da 38- AIFF/AIFF-C audio format, encoding and decoding
4accd1fd 39- ADTS AAC file reading and writing
ea395e8c 40- Creative VOC file reading and writing
4e114829 41- American Laser Games multimedia (*.mm) playback system
f48d6e1b 42- Zip Blocks Motion Video decoder and encoder
8a2d410e
AB
43- Improved Theora/VP3 decoder
44- True Audio (TTA) decoder
26376701 45- AVS demuxer and video decoder
348efc18 46- Smacker demuxer and decoder
dfca23e3 47- NuppelVideo/MythTV demuxer and RTjpeg decoder
fd7b1991 48- KMVC decoder
2d974017
BC
49- MPEG-2 intra vlc support
50- MPEG-2 4:2:2 encoder
0919e788 51- Flash Screen Video decoder
cc0bc648 52- GXF demuxer
6a09487e 53- Chinese AVS decoder
43dcf590 54- GXF muxer
07bf2af8 55- MXF demuxer
b394e39a 56- VC-1/WMV3/WMV9 video decoder
0ccd1bb5 57- MacIntel support
8ac17293 58- AVISynth support
eb57c889 59- VMware video decoder
5ce117c3
AJ
60- VP5 video decoder
61- VP6 video decoder
730581f3 62- WavPack lossless audio decoder
3689cf16 63- Targa (.TGA) picture decoder
dc56e0de 64- Delphine Software .cin demuxer/audio and video decoder
29f86228 65- Tiertex .seq demuxer/video decoder
f7bc5837 66- MTV demuxer
716222db 67- TIFF picture encoder and decoder
06d392a7 68- GIF picture decoder
84ed36da 69- Intel Music decoder
185c7b6b 70- Musepack decoder
8adc51f2 71- Flash Screen Video encoder
150d2772 72- Theora encoding via libtheora
52548eee 73- BMP encoder
039cd4a7 74- WMA encoder
346a655d 75- GSM-MS encoder and decoder
01ca9ac3 76- DCA decoder
33a0dd37 77- DXA demuxer and decoder
52b6bad2 78- DNxHD decoder
efb0c399 79- Gamecube movie (.THP) playback system
a5fbe001 80- Blackfin optimizations
9a0ddd09 81- Interplay C93 demuxer and video decoder
1e6c6759 82- Bethsoft VID demuxer and video decoder
8e952e4d 83- CRYO APC demuxer
10e26bc7 84- Atrac3 decoder
b46d68c6 85- V.Flash PTX decoder
9020e697 86- RoQ muxer, audio encoder
ad39f1a7 87- Renderware TXD demuxer and decoder
4d5588cf 88- extern C declarations for C++ removed from headers
82e60541 89- sws_flags command line option
ddcf4b5d 90- codebook generator
03e3e765 91- RoQ video encoder
d3b7406c 92- QTRLE encoder
d22e8442 93- OS/2 support removed and restored again
6ea67bbb 94- AC-3 decoder
717c4eb0 95- NUT muxer (since r10052)
e09f7d61 96- Matroska muxer
13a579fc 97- Slice-based parallel H.264 decoding
bf4a1f17 98- Monkey's Audio demuxer and decoder
7b933617 99- additional SPARC (VIS) optimizations
8787d837 100- AMV audio and video decoder
fc4cbc16 101- DNxHD encoder
d6c52130 102- H.264 PAFF decoding
636b13c5 103- Nellymoser ASAO decoder
66f7679c 104- Beam Software SIFF demuxer and decoder
f9def9cc 105- libvorbis Vorbis decoding removed in favor of native decoder
541432c3
DB
106- IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
107- Ogg muxer
540945eb
IP
108- PC Paintbrush PCX decoder
109- Sun Rasterfile decoder
920d3609 110- TechnoTrend PVA demuxer
77c1d04d 111- Linux Media Labs MPEG-4 (LMLM4) demuxer
b264a084 112- AVM2 (Flash 9) SWF muxer
9dc92a38 113- QT variant of IMA ADPCM encoder
39fc859e 114- VFW grabber
9d53d58e 115
1defd2a8
MN
116version 0.4.9-pre1:
117
4fa1c4fa 118- DV encoder, DV muxer
2fdf638b
MM
119- Microsoft RLE video decoder
120- Microsoft Video-1 decoder
070ed1bc 121- Apple Animation (RLE) decoder
42cad81a 122- Apple Graphics (SMC) decoder
2fdf638b
MM
123- Apple Video (RPZA) decoder
124- Cinepak decoder
125- Sega FILM (CPK) file demuxer
42cad81a 126- Westwood multimedia support (VQA & AUD files)
4120a53a 127- Id Quake II CIN playback support
42cad81a
MM
128- 8BPS video decoder
129- FLIC playback support
9a4117d5
MM
130- RealVideo 2.0 (RV20) decoder
131- Duck TrueMotion v1 (DUCK) video decoder
da00f30e 132- Sierra VMD demuxer and video decoder
1defd2a8 133- MSZH and ZLIB decoder support
3b64893d 134- SVQ1 video encoder
1defd2a8 135- AMR-WB support
e0db8cfb 136- PPC optimizations
1defd2a8 137- rate distortion optimal cbp support
e0db8cfb 138- rate distorted optimal ac prediction for MPEG-4
1defd2a8
MN
139- rate distorted optimal lambda->qp support
140- AAC encoding with libfaac
141- Sunplus JPEG codec (SP5X) support
e0db8cfb
DB
142- use Lagrange multipler instead of QP for ratecontrol
143- Theora/VP3 decoding support
1defd2a8 144- XA and ADX ADPCM codecs
e0db8cfb 145- export MPEG-2 active display area / pan scan
1defd2a8
MN
146- Add support for configuring with IBM XLC
147- floating point AAN DCT
e0db8cfb
DB
148- initial support for zygo video (not complete)
149- RGB ffv1 support
1defd2a8
MN
150- new audio/video parser API
151- av_log() system
152- av_read_frame() and av_seek_frame() support
153- missing last frame fixes
154- seek by mouse in ffplay
e0db8cfb
DB
155- noise reduction of DCT coefficients
156- H.263 OBMC & 4MV support
157- H.263 alternative inter vlc support
158- H.263 loop filter
159- H.263 slice structured mode
160- interlaced DCT support for MPEG-2 encoding
1defd2a8 161- stuffing to stay above min_bitrate
e0db8cfb 162- MB type & QP visualization
1defd2a8
MN
163- frame stepping for ffplay
164- interlaced motion estimation
165- alternate scantable support
166- SVCD scan offset support
e0db8cfb
DB
167- closed GOP support
168- SSE2 FDCT
1defd2a8
MN
169- quantizer noise shaping
170- G.726 ADPCM audio codec
171- MS ADPCM encoding
172- multithreaded/SMP motion estimation
e0db8cfb
DB
173- multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
174- multithreaded/SMP decoding for MPEG-2
1defd2a8
MN
175- FLAC decoder
176- Metrowerks CodeWarrior suppport
e0db8cfb 177- H.263+ custom pcf support
1defd2a8 178- nicer output for 'ffmpeg -formats'
e0db8cfb 179- Matroska demuxer
1defd2a8 180- SGI image format, encoding and decoding
e0db8cfb
DB
181- H.264 loop filter support
182- H.264 CABAC support
f073a393 183- nicer looking arrows for the motion vector visualization
1defd2a8
MN
184- improved VCD support
185- audio timestamp drift compensation
e0db8cfb 186- MPEG-2 YUV 422/444 support
1defd2a8
MN
187- polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
188- better image scaling
e0db8cfb 189- H.261 support
1defd2a8
MN
190- correctly interleave packets during encoding
191- VIS optimized motion compensation
e0db8cfb
DB
192- intra_dc_precision>0 encoding support
193- support reuse of motion vectors/MB types/field select values of the source video
1defd2a8
MN
194- more accurate deblock filter
195- padding support
196- many optimizations and bugfixes
2fdf638b 197
8c522a40
FB
198version 0.4.8:
199
e0db8cfb 200- MPEG-2 video encoding (Michael)
d9d8910b 201- Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
b17e9c99
MM
202- Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
203 and Mario Brito)
204- Xan DPCM audio decoder (Mario Brito)
186447f8 205- Interplay MVE playback subsystem (Mike Melanson)
b17e9c99
MM
206- Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
207
208version 0.4.7:
e07702ba 209
e0db8cfb 210- RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
124ba583 211 (originally from public domain player for Amiga at http://www.honeypot.net/audio)
e0db8cfb 212- current version now also compiles with older GCC (Fabrice)
e07702ba
HBH
213- 4X multimedia playback system including 4xm file demuxer (Mike
214 Melanson), and 4X video and audio codecs (Michael)
215- Creative YUV (CYUV) decoder (Mike Melanson)
216- FFV1 codec (our very simple lossless intra only codec, compresses much better
e0db8cfb
DB
217 than HuffYUV) (Michael)
218- ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
219- tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
e07702ba
HBH
220 alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
221- ffplay has been replaced with a newer version which uses SDL (optionally)
e0db8cfb 222 for multiplatform support (Fabrice)
e07702ba
HBH
223- Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
224 by anonymous
225- AMR format has been added (Johannes Carlsson)
e0db8cfb 226- 3GP support has been added (Johannes Carlsson)
e07702ba
HBH
227- VP3 codec has been added (Mike Melanson)
228- more MPEG-1/2 fixes
e0db8cfb
DB
229- better multiplatform support, MS Visual Studio fixes (various)
230- AltiVec optimizations (Magnus Damn and others)
e07702ba 231- SH4 processor support has been added (BERO)
e0db8cfb
DB
232- new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
233- VOB streaming support (Brian Foley)
234- better MP3 autodetection (Andriy Rysin)
d3d10087
FB
235- qpel encoding (Michael)
236- 4mv+b frames encoding finally fixed (Michael)
237- chroma ME (Michael)
e0db8cfb
DB
238- 5 comparison functions for ME (Michael)
239- B-frame encoding speedup (Michael)
240- WMV2 codec (unfinished - Michael)
d3d10087 241- user specified diamond size for EPZS (Michael)
b17e9c99
MM
242- Playstation STR playback subsystem, still experimental (Mike and Michael)
243- ASV2 codec (Michael)
244- CLJR decoder (Alex)
d3d10087 245
e0db8cfb 246.. And lots more new enhancements and fixes.
e07702ba 247
d3d10087 248version 0.4.6:
739d6efa 249
e0db8cfb
DB
250- completely new integer only MPEG audio layer 1/2/3 decoder rewritten
251 from scratch
252- Recoded DCT and motion vector search with gcc (no longer depends on nasm)
253- fix quantization bug in AC3 encoder
254- added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
255- added prototype ffplay program
256- added GOB header parsing on H.263/H.263+ decoder (Juanjo)
257- bug fix on MCBPC tables of H.263 (Juanjo)
258- bug fix on DC coefficients of H.263 (Juanjo)
259- added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
260- now we can decode H.263 streams found in QuickTime files (Juanjo)
261- now we can decode H.263 streams found in VIVO v1 files(Juanjo)
644d98a4 262- preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
e0db8cfb
DB
263- added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
264- now H.263 picture size is returned on the first decoded frame (Juanjo)
7f913a35 265- added first regression tests
e0db8cfb 266- added MPEG-2 TS demuxer
a31e01c5 267- new demux API for libav
6d291820 268- more accurate and faster IDCT (Michael)
e0db8cfb 269- faster and entropy-controlled motion search (Michael)
6d291820
FB
270- two pass video encoding (Michael)
271- new video rate control (Michael)
272- added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
273- great performance improvement of video encoders and decoders (Michael)
274- new and faster bit readers and vlc parsers (Michael)
e0db8cfb 275- high quality encoding mode: tries all macroblock/VLC types (Michael)
6d291820
FB
276- added DV video decoder
277- preliminary RTP/RTSP support in ffserver and libavformat
e0db8cfb
DB
278- H.263+ AIC decoding/encoding support (Juanjo)
279- VCD MPEG-PS mode (Juanjo)
280- PSNR stuff (Juanjo)
281- simple stats output (Juanjo)
282- 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
739d6efa 283
de6d9b64
FB
284version 0.4.5:
285
dd5cf2ad
BF
286- some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
287- many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
e0db8cfb
DB
288- added configure system (actually a small shell script)
289- added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
de6d9b64 290 Michael Hipp (temporary solution - waiting for integer only
e0db8cfb
DB
291 decoder)
292- fixed VIDIOCSYNC interrupt
293- added Intel H.263 decoding support ('I263' AVI fourCC)
294- added Real Video 1.0 decoding (needs further testing)
de6d9b64
FB
295- simplified image formats again. Added PGM format (=grey
296 pgm). Renamed old PGM to PGMYUV.
e0db8cfb
DB
297- fixed msmpeg4 slice issues (tell me if you still find problems)
298- fixed OpenDivX bugs with newer versions (added VOL header decoding)
299- added support for MPlayer interface
300- added macroblock skip optimization
301- added MJPEG decoder
302- added mmx/mmxext IDCT from libmpeg2
0c1e384c 303- added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
dd5cf2ad 304 <celer at shell.scrypt.net>)
e0db8cfb
DB
305- added pixel format conversion layer (e.g. for MJPEG or PPM)
306- added deinterlacing option
307- MPEG-1/2 fixes
dd5cf2ad
BF
308- MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
309- ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
e0db8cfb
DB
310- Windows porting of file converter
311- added MJPEG raw format (input/ouput)
312- added JPEG image format support (input/output)
de6d9b64
FB
313
314version 0.4.4:
315
316- fixed some std header definitions (Bjorn Lindgren
dd5cf2ad 317 <bjorn.e.lindgren at telia.com>).
e0db8cfb
DB
318- added MPEG demuxer (MPEG-1 and 2 compatible).
319- added ASF demuxer
320- added prototype RM demuxer
321- added AC3 decoding (done with libac3 by Aaron Holtzman)
322- added decoding codec parameter guessing (.e.g. for MPEG, because the
323 header does not include them)
324- fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
325 play them (only tested video)
326- fixed H.263 white bug
327- fixed phase rounding in img resample filter
328- add MMX code for polyphase img resample filter
329- added CPU autodetection
330- added generic title/author/copyright/comment string handling (ASF and RM
331 use them)
de6d9b64 332- added SWF demux to extract MP3 track (not usable yet because no MP3
e0db8cfb
DB
333 decoder)
334- added fractional frame rate support
de6d9b64 335- codecs are no longer searched by read_header() (should fix ffserver
e0db8cfb 336 segfault)
de6d9b64
FB
337
338version 0.4.3:
339
dd5cf2ad 340- BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
e0db8cfb
DB
341- fixed raw yuv output
342- added motion rounding support in MPEG-4
343- fixed motion bug rounding in MSMPEG4
344- added B-frame handling in video core
345- added full MPEG-1 decoding support
346- added partial (frame only) MPEG-2 support
de6d9b64 347- changed the FOURCC code for H.263 to "U263" to be able to see the
e0db8cfb
DB
348 +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
349 this +codec ;) (JuanJo).
350- Halfpel motion estimation after MB type selection (JuanJo)
351- added pgm and .Y.U.V output format
de6d9b64
FB
352- suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
353 output.
354- added pgmpipe I/O format (original patch from Martin Aumueller
dd5cf2ad 355 <lists at reserv.at>, but changed completely since we use a format
e0db8cfb 356 instead of a protocol)
de6d9b64
FB
357
358version 0.4.2:
359
e0db8cfb
DB
360- added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
361 (for OpenDivX) is almost complete: 8x8 MVs and rounding are
de6d9b64 362 missing. MSMPEG4 support is complete.
e0db8cfb
DB
363- added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
364 can decode ffmpeg MPEGs :-)).
de6d9b64
FB
365- added libavcodec API documentation (see apiexample.c).
366- fixed image polyphase bug (the bottom of some images could be
e0db8cfb 367 greenish)
de6d9b64 368- added support for non clipped motion vectors (decoding only)
e0db8cfb
DB
369 and image sizes non-multiple of 16
370- added support for AC prediction (decoding only)
371- added file overwrite confirmation (can be disabled with -y)
372- added custom size picture to H.263 using H.263+ (Juanjo)
de6d9b64
FB
373
374version 0.4.1:
375
e0db8cfb
DB
376- added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
377 of AVI and ASF to DIV3.
de6d9b64
FB
378- added -me option to set motion estimation method
379 (default=log). suppressed redundant -hq option.
380- added options -acodec and -vcodec to force a given codec (useful for
e0db8cfb
DB
381 AVI for example)
382- fixed -an option
383- improved dct_quantize speed
384- factorized some motion estimation code
de6d9b64
FB
385
386version 0.4.0:
387
e0db8cfb
DB
388- removing grab code from ffserver and moved it to ffmpeg. Added
389 multistream support to ffmpeg.
de6d9b64 390- added timeshifting support for live feeds (option ?date=xxx in the
e0db8cfb 391 URL)
de6d9b64 392- added high quality image resize code with polyphase filter (need
56cc85a0 393 mmx/see optimization). Enable multiple image size support in ffserver.
e0db8cfb 394- added multi live feed support in ffserver
de6d9b64
FB
395- suppressed master feature from ffserver (it should be done with an
396 external program which opens the .ffm url and writes it to another
e0db8cfb
DB
397 ffserver)
398- added preliminary support for video stream parsing (WAV and AVI half
399 done). Added proper support for audio/video file conversion in
de6d9b64 400 ffmpeg.
e0db8cfb
DB
401- added preliminary support for video file sending from ffserver
402- redesigning I/O subsystem: now using URL based input and output
403 (see avio.h)
404- added WAV format support
405- added "tty user interface" to ffmpeg to stop grabbing gracefully
406- added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
dd5cf2ad 407 (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
e0db8cfb
DB
408- added MMX DCT from mpeg2_movie 1.5 (Juanjo)
409- added new motion estimation algorithms, log and phods (Juanjo)
410- changed directories: libav for format handling, libavcodec for
411 codecs
de6d9b64
FB
412
413version 0.3.4:
414
e0db8cfb 415- added stereo in MPEG audio encoder
de6d9b64
FB
416
417version 0.3.3:
418
419- added 'high quality' mode which use motion vectors. It can be used in
420 real time at low resolution.
421- fixed rounding problems which caused quality problems at high
e0db8cfb 422 bitrates and large GOP size
de6d9b64
FB
423
424version 0.3.2: small fixes
425
e0db8cfb 426- ASF fixes
de6d9b64
FB
427- put_seek bug fix
428
429version 0.3.1: added avi/divx support
430
e0db8cfb
DB
431- added AVI support
432- added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
de6d9b64
FB
433- added sound for flash format (not tested)
434
435version 0.3: initial public release