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