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