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