second try of improved lambda/qp guessing for motion estimation RD in first pass
[libav.git] / Changelog
1 version <next>
2 - TechSmith Camtasia (TSCC) video decoder
3 - IBM Ultimotion (ULTI) video decoder
4 - Sierra Online audio file demuxer and decoder
5 - Apple QuickDraw (qdrw) video decoder
6 - Creative ADPCM audio decoder
7 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
8 - Miro VideoXL (VIXL) video decoder
9 - H.261 video encoder
10 - QPEG video decoder
11 - Nullsoft Video (NSV) file demuxer
12 - Shorten audio decoder
13 - LOCO video decoder
14 - Apple Lossless Audio Codec (ALAC) decoder
15 - Winnov WNV1 video decoder
16 - Autodesk Animator Studio Codec (AASC) decoder
17 - Indeo 2 video decoder
18 - Fraps FPS1 video decoder
19 - SNOW video encoder/decoder
20 - Sonic audio encoder/decoder
21 - Vorbis decoder
22 - Macromedia ADPCM decoder
23 - Duck TrueMotion 2 decoder
24 - Support for decoding FLX and DTA extensions in FLIC files
25 - H.264 custom quantization matrices support
26 - ffserver fixed, it should now be usable again
27 - QDM2 audio decoder
28 - cook decoder
29 - wma2 fixed, now all files should be decodeable
30
31 version 0.4.9-pre1:
32
33 - DV encoder, DV muxer
34 - Microsoft RLE video decoder
35 - Microsoft Video-1 decoder
36 - Apple Animation (RLE) decoder
37 - Apple Graphics (SMC) decoder
38 - Apple Video (RPZA) decoder
39 - Cinepak decoder
40 - Sega FILM (CPK) file demuxer
41 - Westwood multimedia support (VQA & AUD files)
42 - Id Quake II CIN playback support
43 - 8BPS video decoder
44 - FLIC playback support
45 - RealVideo 2.0 (RV20) decoder
46 - Duck TrueMotion v1 (DUCK) video decoder
47 - Sierra VMD demuxer and video decoder
48 - MSZH and ZLIB decoder support
49 - SVQ1 video encoder
50 - AMR-WB support
51 - PPC optimisations
52 - rate distortion optimal cbp support
53 - rate distorted optimal ac prediction for mpeg4
54 - rate distorted optimal lambda->qp support
55 - AAC encoding with libfaac
56 - Sunplus JPEG codec (SP5X) support
57 - use lagrange multipler instead of qp for ratecontrol
58 - theora/VP3 decoding support
59 - XA and ADX ADPCM codecs
60 - export mpeg2 active display area / pan scan
61 - Add support for configuring with IBM XLC
62 - floating point AAN DCT
63 - initial support for zygovideo (not complete)
64 - rgb ffv1 support
65 - new audio/video parser API
66 - av_log() system
67 - av_read_frame() and av_seek_frame() support
68 - missing last frame fixes
69 - seek by mouse in ffplay
70 - noise reduction of dct coefficients
71 - h263 OBMC & 4MV support
72 - h263 alternative inter vlc support
73 - h263 loop filter
74 - h263 slice structured mode
75 - interlaced DCT support for MPEG2 encoding
76 - stuffing to stay above min_bitrate
77 - mb type & qp vissualization
78 - frame stepping for ffplay
79 - interlaced motion estimation
80 - alternate scantable support
81 - SVCD scan offset support
82 - closed gop support
83 - SSE2 fdct
84 - quantizer noise shaping
85 - G.726 ADPCM audio codec
86 - MS ADPCM encoding
87 - multithreaded/SMP motion estimation
88 - multithreaded/SMP encoding for MPEG1/MPEG2/MPEG4/H263
89 - multithreaded/SMP decoding for MPEG2
90 - FLAC decoder
91 - Metrowerks CodeWarrior suppport
92 - h263+ custom pcf support
93 - nicer output for 'ffmpeg -formats'
94 - matroska demuxer
95 - SGI image format, encoding and decoding
96 - h264 loop filter support
97 - h264 CABAC support
98 - nicer looking arrows for the motion vector vissualization
99 - improved VCD support
100 - audio timestamp drift compensation
101 - mpeg2 YUV 422/444 support
102 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
103 - better image scaling
104 - h261 support
105 - correctly interleave packets during encoding
106 - VIS optimized motion compensation
107 - intra_dc_precission>0 encoding support
108 - support reuse of motion vectors/mb types/field select values of the source video
109 - more accurate deblock filter
110 - padding support
111 - many optimizations and bugfixes
112
113 version 0.4.8:
114
115 - MPEG2 video encoding (Michael)
116 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
117 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
118   and Mario Brito)
119 - Xan DPCM audio decoder (Mario Brito)
120 - Interplay MVE playback subsystem (Mike Melanson)
121 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
122
123 version 0.4.7:
124
125 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from a mplayerhq
126   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
127 - Current version now also compiles with older GCC (Fabrice)
128 - 4X multimedia playback system including 4xm file demuxer (Mike
129   Melanson), and 4X video and audio codecs (Michael)
130 - Creative YUV (CYUV) decoder (Mike Melanson)
131 - FFV1 codec (our very simple lossless intra only codec, compresses much better
132   then huffyuv) (Michael)
133 - ASV1 (Asus), H.264, Intel indeo3 codecs has been added (Various)
134 - Tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
135   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
136 - ffplay has been replaced with a newer version which uses SDL (optionally)
137   for multi platform support (fabrice)
138 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
139   by anonymous
140 - AMR format has been added (Johannes Carlsson)
141 - 3gp support has been added (Johannes Carlsson)
142 - VP3 codec has been added (Mike Melanson)
143 - more MPEG-1/2 fixes
144 - Better Multi platform support, MS Visual Studio fixes (various)
145 - Altivec optimizations (Magnus Damn and others)
146 - SH4 processor support has been added (BERO)
147 - New public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
148 - VOB Streaming support (Brian Foley)
149 - Better MP3 Autodetection (Andriy Rysin)
150 - qpel encoding (Michael)
151 - 4mv+b frames encoding finally fixed (Michael)
152 - chroma ME (Michael)
153 - 5 comparission functions for ME (Michael)
154 - b frame encoding speedup (Michael)
155 - wmv2 codec (unfinished - Michael)
156 - user specified diamond size for EPZS (Michael)
157 - Playstation STR playback subsystem, still experimental (Mike and Michael)
158 - ASV2 codec (Michael)
159 - CLJR decoder (Alex)
160
161 .. And lots more new enhances and fixes.
162
163 version 0.4.6:
164
165 - completely new integer only mpeg audio layer 1/2/3 decoder rewritten
166   from scratch.
167 - recoded dct and motion vector search with gcc (no longer depends on
168   nasm).
169 - fix quantization bug in AC3 encoder.
170 - added PCM codecs and format. Corrected wav/avi/asf pcm issues.
171 - added prototype ffplay program.
172 - added GOB header parsing on H.263/H.263+ decoder. (Juanjo)
173 - bug fix on MCBPC tables of H.263. (Juanjo)
174 - bug fix on DC coefficients of H.263. (Juanjo)
175 - added Advanced Prediction Mode on H.263/H.263+ decoder. (Juanjo)
176 - now we can decode H.263 streams found on QuickTime files. (Juanjo)
177 - now we can decode H.263 streams found on VIVO v1 files.(Juanjo)
178 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
179 - added GOB header for H.263/H.263+ coding on RTP mode. (Juanjo)
180 - now H.263 picture size is returned on the first decoded frame. (Juanjo)
181 - added first regression tests
182 - added MPEG2 TS demux
183 - new demux API for libav
184 - more accurate and faster IDCT (Michael)
185 - faster and entropy controlled motion search (Michael)
186 - two pass video encoding (Michael)
187 - new video rate control (Michael)
188 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
189 - great performance improvement of video encoders and decoders (Michael)
190 - new and faster bit readers and vlc parsers (Michael)
191 - high quality encoding mode : tries all macroblock/VLC types (Michael)
192 - added DV video decoder
193 - preliminary RTP/RTSP support in ffserver and libavformat
194 - H.263+ AIC decoding/encoding support. (Juanjo)
195 - VCD MPEG-PS mode. (Juanjo)
196 - PSNR stuff. (Juanjo)
197 - Simple stats output. (Juanjo)
198 - 16-bit and 15-bit rgb/bgr/gbr support (Bisqwit)
199
200 version 0.4.5:
201
202 - some header fixes (Zdenek Kabelac &lt;kabi@informatics.muni.cz&gt;).
203 - many MMX optimizations (Nick Kurshev &lt;nickols_k@mail.ru&gt;).
204 - added configure system (actually a small shell script).
205 - added mpeg audio layer 1/2/3 decoding using LGPL'ed mpglib by
206   Michael Hipp (temporary solution - waiting for integer only
207   decoder).
208 - fixed VIDIOCSYNC interrupt.
209 - added Intel H263 decoding support ('I263' avi fourCC)
210 - added Real Video 1.0 decoding (needs further testing).
211 - simplified image formats again. Added PGM format (=grey
212   pgm). Renamed old PGM to PGMYUV.
213 - fixed msmpeg4 slice issues (tell me if you still find problems).
214 - fixed opendivx bugs with newer versions (added VOL header decoding).
215 - added support for mplayer interface.
216 - added macroblock skip optimization.
217 - added MJPEG decoder.
218 - added mmx/mmxext idct from libmpeg2.
219 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
220   &lt;celer@shell.scrypt.net&gt;).
221 - added pixel format convertion layer (e.g. for MJPEG or PPM).
222 - added deinterlacing option.
223 - mpeg1/2 fixes.
224 - mpeg4 vol header fixes (Jonathan Marsden &lt;snmjbm@pacbell.net&gt;).
225 - ARM optimizations (Lionel Ulmer &lt;lionel.ulmer@free.fr&gt;).
226 - Windows porting of file converter.
227 - added MJPEG raw format (input/ouput).
228 - added JPEG image format support (input/output).
229
230 version 0.4.4:
231
232 - fixed some std header definitions (Bjorn Lindgren
233   &lt;bjorn.e.lindgren@telia.com&gt;).
234 - added mpeg demux (mpeg 1 and 2 compatible).
235 - added ASF demux.
236 - added prototype RM demux.
237 - added AC3 decoding (done with libac3 by Aaron Holtzman).
238 - added decoding codec parameter guessing (.e.g. for mpeg, because the
239   header does not include them).
240 - fixed header generation in mpeg1, AVI and ASF mux : wmplayer can now
241   play them (only tested video).
242 - fixed h263 white bug.
243 - fixed phase rounding in img resample filter.
244 - add mmx code for polyphase img resample filter.
245 - added CPU autodetect.
246 - added generic title/author/copyright/comment string handling (ASF and RM use them).
247 - added SWF demux to extract MP3 track (not usable yet because no MP3
248   decoder).
249 - added fractional frame rate support.
250 - codecs are no longer searched by read_header() (should fix ffserver
251   segfault).
252
253 version 0.4.3:
254
255 - BGR24 patch (initial patch by Jeroen Vreeken &lt;pe1rxq@amsat.org&gt;).
256 - fixed raw yuv output.
257 - added motion rounding support in MPEG4.
258 - fixed motion bug rounding in MSMPEG4.
259 - added B frame handling in video core.
260 - added full MPEG1 decoding support.
261 - added partial (frame only) MPEG2 support.
262 - changed the FOURCC code for H.263 to "U263" to be able to see the
263 +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
264 this +codec ;) (JuanJo).
265 - Halfpel motion estimation after mb type selection (JuanJo).
266 - added pgm and .Y.U.V output format.
267 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
268   output.
269 - added pgmpipe I/O format (original patch from Martin Aumueller
270   &lt;lists@reserv.at&gt;, but changed completely since we use a format
271   instead of a protocol).
272
273 version 0.4.2:
274
275 - added H263/MPEG4/MSMPEG4 decoding support. MPEG4 decoding support
276   (for openDIVX) is almost complete: 8x8 MVs and rounding are
277   missing. MSMPEG4 support is complete.
278 - added prototype MPEG1 decoder. Only I and P frames handled yet (it
279   can decode ffmpeg mpegs :-)).
280 - added libavcodec API documentation (see apiexample.c).
281 - fixed image polyphase bug (the bottom of some images could be
282   greenish).
283 - added support for non clipped motion vectors (decoding only)
284   and image sizes non multiple of 16.
285 - added support for AC prediction (decoding only).
286 - added file overwrite confirmation (can be disabled with -y).
287 - Added custom size picture to H.263 using H.263+ (Juanjo).
288
289 version 0.4.1:
290
291 - added MSMPEG4 (aka DIVX) compatible encoder. Changed default codec
292   of avi and asf to DIV3.
293 - added -me option to set motion estimation method
294   (default=log). suppressed redundant -hq option.
295 - added options -acodec and -vcodec to force a given codec (useful for
296   AVI for example).
297 - fixed -an option.
298 - improved dct_quantize speed.
299 - factorized some motion estimation code.
300
301 version 0.4.0:
302
303 - removing grab code from ffserver and moved it to ffmpeg. Added multi
304   stream support to ffmpeg.
305 - added timeshifting support for live feeds (option ?date=xxx in the
306   URL).
307 - added high quality image resize code with polyphase filter (need
308   mmx/see optimisation). Enable multiple image size support in ffserver.
309 - added multi live feed support in ffserver.
310 - suppressed master feature from ffserver (it should be done with an
311   external program which opens the .ffm url and writes it to another
312   ffserver).
313 - added preliminary support for video stream parsing (wav and avi half
314   done). Added proper support for audio/video file convertion in
315   ffmpeg.
316 - added preliminary support for video file sending from ffserver.
317 - redesigning I/O subsystem : now using URL based input and output
318   (see avio.h).
319 - added wav format support.
320 - added "tty user interface" to ffmpeg to stop grabbing gracefully.
321 - added MMX/SSE optimizations to SAD (Sums of Absolutes Diferences)
322   (Juan J. Sierralta P. a.k.a. "Juanjo" &lt;juanjo@atmlab.utfsm.cl&gt;).
323 - added MMX DCT from mpeg2_movie 1.5 (Juanjo).
324 - added new motion estimation algorithms, log and phods (Juanjo).
325 - changed directories : libav for format handling, libavcodec for
326   codecs.
327
328 version 0.3.4:
329
330 - added stereo in mpeg audio encoder.
331
332 version 0.3.3:
333
334 - added 'high quality' mode which use motion vectors. It can be used in
335   real time at low resolution.
336 - fixed rounding problems which caused quality problems at high
337   bitrates and large gop size.
338
339 version 0.3.2: small fixes
340
341 - asf fixes
342 - put_seek bug fix
343
344 version 0.3.1: added avi/divx support
345
346 - added avi support
347 - added mpeg4 codec compatible with open divx. It is based on the h263
348   codec.
349 - added sound for flash format (not tested)
350
351 version 0.3: initial public release