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