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