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