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