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