avconv: add an assert to silence an uninitialized variable warning.
[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 version <next>:
5
6 - XWD encoder and decoder
7 - Support for fragmentation in the mov/mp4 muxer
8 - ISMV (Smooth Streaming) muxer
9 - CDXL demuxer and decoder
10 - Apple ProRes encoder
11 - Sun Rasterfile Encoder
12 - remove libpostproc
13 - ID3v2 attached pictures reading and writing
14 - WMA Lossless decoder
15 - XBM encoder
16 - RealAudio Lossless decoder
17 - ZeroCodec decoder
18 - drop support for avconv without libavfilter
19 - add libavresample audio conversion library
20 - audio filters support in libavfilter and avconv
21 - add fps filter
22 - audio split filter
23 - audio mix filter
24 - avprobe output is now standard INI or JSON. The old format can still
25   be used with -of old.
26 - Indeo Audio decoder
27 - channelsplit audio filter
28 - RTMPT protocol support
29 - iLBC encoding/decoding via libilbc
30 - Microsoft Screen 1 decoder
31 - join audio filter
32 - audio channel mapping filter
33
34
35 version 0.8:
36
37 - GSM audio parser
38 - SMJPEG muxer
39
40
41 version 0.8_beta2:
42
43 - Automatic thread count based on detection number of (available) CPU cores
44 - Deprecate libpostproc. If desired, the switch --enable-postproc will
45   enable it but it may be removed in a later Libav release.
46 - rv34: frame-level multi-threading
47 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
48
49
50 version 0.8_beta1:
51
52 - BWF muxer
53 - Flash Screen Video 2 decoder
54 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
55 - ffmpeg deprecated, added avconv, which is almost the same for now, except
56 for a few incompatible changes in the options, which will hopefully make them
57 easier to use. The changes are:
58     * The options placement is now strictly enforced! While in theory the
59       options for ffmpeg should be given in [input options] -i INPUT [output
60       options] OUTPUT order, in practice it was possible to give output options
61       before the -i and it mostly worked. Except when it didn't - the behavior was
62       a bit inconsistent. In avconv, it is not possible to mix input and output
63       options. All non-global options are reset after an input or output filename.
64     * All per-file options are now truly per-file - they apply only to the next
65       input or output file and specifying different values for different files
66       will now work properly (notably -ss and -t options).
67     * All per-stream options are now truly per-stream - it is possible to
68       specify which stream(s) should a given option apply to. See the Stream
69       specifiers section in the avconv manual for details.
70     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
71       sense that they're specified after the output filename instead of before,
72       like all other options. In avconv this irregularity is removed, all options
73       apply to the next input or output file.
74     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
75       irregular and highly confusing, they were also redundant. In avconv the -map
76       option will create new streams in the output file and map input streams to
77       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
78       each stream in the first input file.
79     * The -map option now has slightly different and more powerful syntax:
80         + Colons (':') are used to separate file index/stream type/stream index
81           instead of dots. Comma (',') is used to separate the sync stream instead
82           of colon.. This is done for consistency with other options.
83         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
84           output stream from the third input audio stream.
85         + Omitting the stream index now maps all the streams of the given type,
86           not just the first. E.g. -map 0:s creates output streams for all the
87           subtitle streams in the first input file.
88         + Since -map can now match multiple streams, negative mappings were
89           introduced. Negative mappings disable some streams from an already
90           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
91           all the stream in the first input file, except for the second audio
92           stream'.
93     * There is a new option -c (or -codec) for choosing the decoder/encoder to
94       use, which allows to precisely specify target stream(s) consistently with
95       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
96       libvorbis sets the codec for the first audio stream and -c copy copies all
97       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
98       aliases to -c:v/a/s
99     * It is now possible to precisely specify which stream should an AVOption
100       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
101       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
102       syntax is deprecated and will stop working soon.
103     * -map_chapters now takes only an input file index and applies to the next
104       output file. This is consistent with how all the other options work.
105     * -map_metadata now takes only an input metadata specifier and applies to
106       the next output file. Output metadata specifier is now part of the option
107       name, similarly to the AVOptions/map/codec feature above.
108     * -metadata can now be used to set metadata on streams and chapters, e.g.
109       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
110       This made -vlang/-alang/-slang options redundant, so they were removed.
111     * -qscale option now uses stream specifiers and applies to all streams, not
112       just video. I.e. plain -qscale number would now apply to all streams. To get
113       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
114       and -aq is now an alias for -q:a.
115     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
116       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
117     * -itsscale option now uses stream specifiers, so its argument is only the
118       scale parameter.
119     * -intra option was removed, use -g 0 for the same effect.
120     * -psnr option was removed, use -flags +psnr for the same effect.
121     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
122     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
123     * -vtag/-atag/-stag options are now aliases to the new -tag option.
124 - XMV demuxer
125 - Windows Media Image decoder
126 - LATM muxer/demuxer
127 - showinfo filter
128 - split filter
129 - libcdio-paranoia input device for audio CD grabbing
130 - select filter
131 - Apple ProRes decoder
132 - CELT in Ogg demuxing
133 - VC-1 interlaced decoding
134 - lut, lutrgb, and lutyuv filters
135 - boxblur filter
136 - Ut Video decoder
137 - Speex encoding via libspeex
138 - 4:2:2 H.264 decoding support
139 - 4:2:2 and 4:4:4 H.264 encoding with libx264
140 - Pulseaudio input device
141 - replacement Indeo 3 decoder
142 - TLS/SSL and HTTPS protocol support
143 - AVOptions API rewritten and documented
144 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
145   AVCodecContext deprecated. Codec private options should be used instead.
146 - Properly working defaults in libx264 wrapper, support for native presets.
147 - Encrypted OMA files support
148 - Discworld II BMV decoding support
149 - VBLE Decoder
150 - OS X Video Decoder Acceleration (VDA) support
151 - CRI ADX audio format muxer and demuxer
152 - Playstation Portable PMP format demuxer
153 - PCM format support in OMA demuxer
154 - CLJR encoder
155 - Dxtory capture format decoder
156 - v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
157 - OpenMG Audio muxer
158 - Simple segmenting muxer
159 - Indeo 4 decoder
160 - SMJPEG demuxer
161
162
163 version 0.7:
164
165 - E-AC-3 audio encoder
166 - ac3enc: add channel coupling support
167 - floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
168 - H.264/MPEG frame-level multithreading
169 - av_metadata_* functions renamed to av_dict_* and moved to libavutil
170 - 4:4:4 H.264 decoding support
171 - 10-bit H.264 optimizations for x86
172 - bump libswscale for recently reported ABI break
173
174
175 version 0.7_beta2:
176
177 - VP8 frame-level multithreading
178 - NEON optimizations for VP8
179 - removed a lot of deprecated API cruft
180 - FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
181 - DPX image encoder
182 - SMPTE 302M AES3 audio decoder
183 - ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
184 - 9bit and 10bit per sample support in the H.264 decoder
185
186
187 version 0.7_beta1:
188
189 - WebM support in Matroska de/muxer
190 - low overhead Ogg muxing
191 - MMS-TCP support
192 - VP8 de/encoding via libvpx
193 - Demuxer for On2's IVF format
194 - Pictor/PC Paint decoder
195 - HE-AAC v2 decoder
196 - libfaad2 wrapper removed
197 - DTS-ES extension (XCh) decoding support
198 - native VP8 decoder
199 - RTSP tunneling over HTTP
200 - RTP depacketization of SVQ3
201 - -strict inofficial replaced by -strict unofficial
202 - ffplay -exitonkeydown and -exitonmousedown options added
203 - native GSM / GSM MS decoder
204 - RTP depacketization of QDM2
205 - ANSI/ASCII art playback system
206 - Lego Mindstorms RSO de/muxer
207 - SubRip subtitle file muxer and demuxer
208 - Chinese AVS encoding via libxavs
209 - ffprobe -show_packets option added
210 - RTP packetization of Theora and Vorbis
211 - RTP depacketization of MP4A-LATM
212 - RTP packetization and depacketization of VP8
213 - hflip filter
214 - Apple HTTP Live Streaming demuxer
215 - a64 codec
216 - MMS-HTTP support
217 - G.722 ADPCM audio encoder/decoder
218 - R10k video decoder
219 - ocv_smooth filter
220 - frei0r wrapper filter
221 - change crop filter syntax to width:height:x:y
222 - make the crop filter accept parametric expressions
223 - make ffprobe accept AVFormatContext options
224 - yadif filter
225 - blackframe filter
226 - Demuxer for Leitch/Harris' VR native stream format (LXF)
227 - RTP depacketization of the X-QT QuickTime format
228 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
229 - cropdetect filter
230 - ffmpeg -crop* options removed
231 - transpose filter added
232 - ffmpeg -force_key_frames option added
233 - demuxer for receiving raw rtp:// URLs without an SDP description
234 - single stream LATM/LOAS decoder
235 - setpts filter added
236 - Win64 support for optimized x86 assembly functions
237 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
238 - ASS subtitle encoder and decoder
239 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
240 - overlay filter added
241 - rename aspect filter to setdar, and pixelaspect to setsar
242 - IEC 61937 demuxer
243 - Mobotix .mxg demuxer
244 - frei0r source added
245 - hqdn3d filter added
246 - RTP depacketization of QCELP
247 - FLAC parser added
248 - gradfun filter added
249 - AMR-WB decoder
250 - replace the ocv_smooth filter with a more generic ocv filter
251 - Windows Televison (WTV) demuxer
252 - FFmpeg metadata format muxer and demuxer
253 - SubRip (srt) subtitle decoder
254 - floating-point AC-3 encoder added
255 - Lagarith decoder
256 - ffmpeg -copytb option added
257 - IVF muxer added
258 - Wing Commander IV movies decoder added
259 - movie source added
260 - Bink version 'b' audio and video decoder
261 - Bitmap Brothers JV playback system
262 - Apple HTTP Live Streaming protocol handler
263 - sndio support for playback and record
264 - Linux framebuffer input device added
265 - Chronomaster DFA decoder
266 - Mobotix MxPEG decoder
267 - AAC encoding via libvo-aacenc
268 - AMR-WB encoding via libvo-amrwbenc
269 - xWMA demuxer
270 - fieldorder video filter added
271
272
273 version 0.6:
274
275 - PB-frame decoding for H.263
276 - deprecated vhook subsystem removed
277 - deprecated old scaler removed
278 - VQF demuxer
279 - Alpha channel scaler
280 - PCX encoder
281 - RTP packetization of H.263
282 - RTP packetization of AMR
283 - RTP depacketization of Vorbis
284 - CorePNG decoding support
285 - Cook multichannel decoding support
286 - introduced avlanguage helpers in libavformat
287 - 8088flex TMV demuxer and decoder
288 - per-stream language-tags extraction in asfdec
289 - V210 decoder and encoder
290 - remaining GPL parts in AC-3 decoder converted to LGPL
291 - QCP demuxer
292 - SoX native format muxer and demuxer
293 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
294 - DPX image decoder
295 - Electronic Arts Madcow decoder
296 - DivX (XSUB) subtitle encoder
297 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
298 - experimental AAC encoder
299 - RTP depacketization of ASF and RTSP from WMS servers
300 - RTMP support in libavformat
301 - noX handling for OPT_BOOL X options
302 - Wave64 demuxer
303 - IEC-61937 compatible Muxer
304 - TwinVQ decoder
305 - Bluray (PGS) subtitle decoder
306 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
307 - WMA Pro decoder
308 - Core Audio Format demuxer
309 - Atrac1 decoder
310 - MD STUDIO audio demuxer
311 - RF64 support in WAV demuxer
312 - MPEG-4 Audio Lossless Coding (ALS) decoder
313 - -formats option split into -formats, -codecs, -bsfs, and -protocols
314 - IV8 demuxer
315 - CDG demuxer and decoder
316 - R210 decoder
317 - Auravision Aura 1 and 2 decoders
318 - Deluxe Paint Animation playback system
319 - SIPR decoder
320 - Adobe Filmstrip muxer and demuxer
321 - RTP depacketization of H.263
322 - Bink demuxer and audio/video decoders
323 - enable symbol versioning by default for linkers that support it
324 - IFF PBM/ILBM bitmap decoder
325 - concat protocol
326 - Indeo 5 decoder
327 - RTP depacketization of AMR
328 - WMA Voice decoder
329 - ffprobe tool
330 - AMR-NB decoder
331 - RTSP muxer
332 - HE-AAC v1 decoder
333 - Kega Game Video (KGV1) decoder
334 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
335 - RTP depacketization of Theora
336 - HTTP Digest authentication
337 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
338 - Psygnosis YOP demuxer and video decoder
339 - spectral extension support in the E-AC-3 decoder
340 - unsharp video filter
341 - RTP hinting in the mov/3gp/mp4 muxer
342 - Dirac in Ogg demuxing
343 - seek to keyframes in Ogg
344 - 4:2:2 and 4:4:4 Theora decoding
345 - 35% faster VP3/Theora decoding
346 - faster AAC decoding
347 - faster H.264 decoding
348 - RealAudio 1.0 (14.4K) encoder
349
350
351 version 0.5:
352
353 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
354 - TechSmith Camtasia (TSCC) video decoder
355 - IBM Ultimotion (ULTI) video decoder
356 - Sierra Online audio file demuxer and decoder
357 - Apple QuickDraw (qdrw) video decoder
358 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
359 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
360 - Miro VideoXL (VIXL) video decoder
361 - H.261 video encoder
362 - QPEG video decoder
363 - Nullsoft Video (NSV) file demuxer
364 - Shorten audio decoder
365 - LOCO video decoder
366 - Apple Lossless Audio Codec (ALAC) decoder
367 - Winnov WNV1 video decoder
368 - Autodesk Animator Studio Codec (AASC) decoder
369 - Indeo 2 video decoder
370 - Fraps FPS1 video decoder
371 - Snow video encoder/decoder
372 - Sonic audio encoder/decoder
373 - Vorbis audio decoder
374 - Macromedia ADPCM decoder
375 - Duck TrueMotion 2 video decoder
376 - support for decoding FLX and DTA extensions in FLIC files
377 - H.264 custom quantization matrices support
378 - ffserver fixed, it should now be usable again
379 - QDM2 audio decoder
380 - Real Cooker audio decoder
381 - TrueSpeech audio decoder
382 - WMA2 audio decoder fixed, now all files should play correctly
383 - RealAudio 14.4 and 28.8 decoders fixed
384 - JPEG-LS decoder
385 - build system improvements
386 - tabs and trailing whitespace removed from the codebase
387 - CamStudio video decoder
388 - AIFF/AIFF-C audio format, encoding and decoding
389 - ADTS AAC file reading and writing
390 - Creative VOC file reading and writing
391 - American Laser Games multimedia (*.mm) playback system
392 - Zip Motion Blocks Video decoder
393 - improved Theora/VP3 decoder
394 - True Audio (TTA) decoder
395 - AVS demuxer and video decoder
396 - JPEG-LS encoder
397 - Smacker demuxer and decoder
398 - NuppelVideo/MythTV demuxer and RTjpeg decoder
399 - KMVC decoder
400 - MPEG-2 intra VLC support
401 - MPEG-2 4:2:2 encoder
402 - Flash Screen Video decoder
403 - GXF demuxer
404 - Chinese AVS decoder
405 - GXF muxer
406 - MXF demuxer
407 - VC-1/WMV3/WMV9 video decoder
408 - MacIntel support
409 - AVISynth support
410 - VMware video decoder
411 - VP5 video decoder
412 - VP6 video decoder
413 - WavPack lossless audio decoder
414 - Targa (.TGA) picture decoder
415 - Vorbis audio encoder
416 - Delphine Software .cin demuxer/audio and video decoder
417 - Tiertex .seq demuxer/video decoder
418 - MTV demuxer
419 - TIFF picture encoder and decoder
420 - GIF picture decoder
421 - Intel Music Coder decoder
422 - Zip Motion Blocks Video encoder
423 - Musepack decoder
424 - Flash Screen Video encoder
425 - Theora encoding via libtheora
426 - BMP encoder
427 - WMA encoder
428 - GSM-MS encoder and decoder
429 - DCA decoder
430 - DXA demuxer and decoder
431 - DNxHD decoder
432 - Gamecube movie (.THP) playback system
433 - Blackfin optimizations
434 - Interplay C93 demuxer and video decoder
435 - Bethsoft VID demuxer and video decoder
436 - CRYO APC demuxer
437 - Atrac3 decoder
438 - V.Flash PTX decoder
439 - RoQ muxer, RoQ audio encoder
440 - Renderware TXD demuxer and decoder
441 - extern C declarations for C++ removed from headers
442 - sws_flags command line option
443 - codebook generator
444 - RoQ video encoder
445 - QTRLE encoder
446 - OS/2 support removed and restored again
447 - AC-3 decoder
448 - NUT muxer
449 - additional SPARC (VIS) optimizations
450 - Matroska muxer
451 - slice-based parallel H.264 decoding
452 - Monkey's Audio demuxer and decoder
453 - AMV audio and video decoder
454 - DNxHD encoder
455 - H.264 PAFF decoding
456 - Nellymoser ASAO decoder
457 - Beam Software SIFF demuxer and decoder
458 - libvorbis Vorbis decoding removed in favor of native decoder
459 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
460 - Ogg (Theora, Vorbis and FLAC) muxer
461 - The "device" muxers and demuxers are now in a new libavdevice library
462 - PC Paintbrush PCX decoder
463 - Sun Rasterfile decoder
464 - TechnoTrend PVA demuxer
465 - Linux Media Labs MPEG-4 (LMLM4) demuxer
466 - AVM2 (Flash 9) SWF muxer
467 - QT variant of IMA ADPCM encoder
468 - VFW grabber
469 - iPod/iPhone compatible mp4 muxer
470 - Mimic decoder
471 - MSN TCP Webcam stream demuxer
472 - RL2 demuxer / decoder
473 - IFF demuxer
474 - 8SVX audio decoder
475 - non-recursive Makefiles
476 - BFI demuxer
477 - MAXIS EA XA (.xa) demuxer / decoder
478 - BFI video decoder
479 - OMA demuxer
480 - MLP/TrueHD decoder
481 - Electronic Arts CMV decoder
482 - Motion Pixels Video decoder
483 - Motion Pixels MVI demuxer
484 - removed animated GIF decoder/demuxer
485 - D-Cinema audio muxer
486 - Electronic Arts TGV decoder
487 - Apple Lossless Audio Codec (ALAC) encoder
488 - AAC decoder
489 - floating point PCM encoder/decoder
490 - MXF muxer
491 - DV100 AKA DVCPRO HD decoder and demuxer
492 - E-AC-3 support added to AC-3 decoder
493 - Nellymoser ASAO encoder
494 - ASS and SSA demuxer and muxer
495 - liba52 wrapper removed
496 - SVQ3 watermark decoding support
497 - Speex decoding via libspeex
498 - Electronic Arts TGQ decoder
499 - RV40 decoder
500 - QCELP / PureVoice decoder
501 - RV30 decoder
502 - hybrid WavPack support
503 - R3D REDCODE demuxer
504 - ALSA support for playback and record
505 - Electronic Arts TQI decoder
506 - OpenJPEG based JPEG 2000 decoder
507 - NC (NC4600) camera file demuxer
508 - Gopher client support
509 - MXF D-10 muxer
510 - generic metadata API
511
512
513 version 0.4.9-pre1:
514
515 - DV encoder, DV muxer
516 - Microsoft RLE video decoder
517 - Microsoft Video-1 decoder
518 - Apple Animation (RLE) decoder
519 - Apple Graphics (SMC) decoder
520 - Apple Video (RPZA) decoder
521 - Cinepak decoder
522 - Sega FILM (CPK) file demuxer
523 - Westwood multimedia support (VQA & AUD files)
524 - Id Quake II CIN playback support
525 - 8BPS video decoder
526 - FLIC playback support
527 - RealVideo 2.0 (RV20) decoder
528 - Duck TrueMotion v1 (DUCK) video decoder
529 - Sierra VMD demuxer and video decoder
530 - MSZH and ZLIB decoder support
531 - SVQ1 video encoder
532 - AMR-WB support
533 - PPC optimizations
534 - rate distortion optimal cbp support
535 - rate distorted optimal ac prediction for MPEG-4
536 - rate distorted optimal lambda->qp support
537 - AAC encoding with libfaac
538 - Sunplus JPEG codec (SP5X) support
539 - use Lagrange multipler instead of QP for ratecontrol
540 - Theora/VP3 decoding support
541 - XA and ADX ADPCM codecs
542 - export MPEG-2 active display area / pan scan
543 - Add support for configuring with IBM XLC
544 - floating point AAN DCT
545 - initial support for zygo video (not complete)
546 - RGB ffv1 support
547 - new audio/video parser API
548 - av_log() system
549 - av_read_frame() and av_seek_frame() support
550 - missing last frame fixes
551 - seek by mouse in ffplay
552 - noise reduction of DCT coefficients
553 - H.263 OBMC & 4MV support
554 - H.263 alternative inter vlc support
555 - H.263 loop filter
556 - H.263 slice structured mode
557 - interlaced DCT support for MPEG-2 encoding
558 - stuffing to stay above min_bitrate
559 - MB type & QP visualization
560 - frame stepping for ffplay
561 - interlaced motion estimation
562 - alternate scantable support
563 - SVCD scan offset support
564 - closed GOP support
565 - SSE2 FDCT
566 - quantizer noise shaping
567 - G.726 ADPCM audio codec
568 - MS ADPCM encoding
569 - multithreaded/SMP motion estimation
570 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
571 - multithreaded/SMP decoding for MPEG-2
572 - FLAC decoder
573 - Metrowerks CodeWarrior suppport
574 - H.263+ custom pcf support
575 - nicer output for 'ffmpeg -formats'
576 - Matroska demuxer
577 - SGI image format, encoding and decoding
578 - H.264 loop filter support
579 - H.264 CABAC support
580 - nicer looking arrows for the motion vector visualization
581 - improved VCD support
582 - audio timestamp drift compensation
583 - MPEG-2 YUV 422/444 support
584 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
585 - better image scaling
586 - H.261 support
587 - correctly interleave packets during encoding
588 - VIS optimized motion compensation
589 - intra_dc_precision>0 encoding support
590 - support reuse of motion vectors/MB types/field select values of the source video
591 - more accurate deblock filter
592 - padding support
593 - many optimizations and bugfixes
594 - FunCom ISS audio file demuxer and according ADPCM decoding
595
596
597 version 0.4.8:
598
599 - MPEG-2 video encoding (Michael)
600 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
601 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
602   and Mario Brito)
603 - Xan DPCM audio decoder (Mario Brito)
604 - Interplay MVE playback subsystem (Mike Melanson)
605 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
606
607
608 version 0.4.7:
609
610 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
611   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
612 - current version now also compiles with older GCC (Fabrice)
613 - 4X multimedia playback system including 4xm file demuxer (Mike
614   Melanson), and 4X video and audio codecs (Michael)
615 - Creative YUV (CYUV) decoder (Mike Melanson)
616 - FFV1 codec (our very simple lossless intra only codec, compresses much better
617   than HuffYUV) (Michael)
618 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
619 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
620   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
621 - ffplay has been replaced with a newer version which uses SDL (optionally)
622   for multiplatform support (Fabrice)
623 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
624   by anonymous
625 - AMR format has been added (Johannes Carlsson)
626 - 3GP support has been added (Johannes Carlsson)
627 - VP3 codec has been added (Mike Melanson)
628 - more MPEG-1/2 fixes
629 - better multiplatform support, MS Visual Studio fixes (various)
630 - AltiVec optimizations (Magnus Damn and others)
631 - SH4 processor support has been added (BERO)
632 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
633 - VOB streaming support (Brian Foley)
634 - better MP3 autodetection (Andriy Rysin)
635 - qpel encoding (Michael)
636 - 4mv+b frames encoding finally fixed (Michael)
637 - chroma ME (Michael)
638 - 5 comparison functions for ME (Michael)
639 - B-frame encoding speedup (Michael)
640 - WMV2 codec (unfinished - Michael)
641 - user specified diamond size for EPZS (Michael)
642 - Playstation STR playback subsystem, still experimental (Mike and Michael)
643 - ASV2 codec (Michael)
644 - CLJR decoder (Alex)
645
646 .. And lots more new enhancements and fixes.
647
648
649 version 0.4.6:
650
651 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
652   from scratch
653 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
654 - fix quantization bug in AC3 encoder
655 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
656 - added prototype ffplay program
657 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
658 - bug fix on MCBPC tables of H.263 (Juanjo)
659 - bug fix on DC coefficients of H.263 (Juanjo)
660 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
661 - now we can decode H.263 streams found in QuickTime files (Juanjo)
662 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
663 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
664 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
665 - now H.263 picture size is returned on the first decoded frame (Juanjo)
666 - added first regression tests
667 - added MPEG-2 TS demuxer
668 - new demux API for libav
669 - more accurate and faster IDCT (Michael)
670 - faster and entropy-controlled motion search (Michael)
671 - two pass video encoding (Michael)
672 - new video rate control (Michael)
673 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
674 - great performance improvement of video encoders and decoders (Michael)
675 - new and faster bit readers and vlc parsers (Michael)
676 - high quality encoding mode: tries all macroblock/VLC types (Michael)
677 - added DV video decoder
678 - preliminary RTP/RTSP support in ffserver and libavformat
679 - H.263+ AIC decoding/encoding support (Juanjo)
680 - VCD MPEG-PS mode (Juanjo)
681 - PSNR stuff (Juanjo)
682 - simple stats output (Juanjo)
683 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
684
685
686 version 0.4.5:
687
688 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
689 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
690 - added configure system (actually a small shell script)
691 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
692   Michael Hipp (temporary solution - waiting for integer only
693   decoder)
694 - fixed VIDIOCSYNC interrupt
695 - added Intel H.263 decoding support ('I263' AVI fourCC)
696 - added Real Video 1.0 decoding (needs further testing)
697 - simplified image formats again. Added PGM format (=grey
698   pgm). Renamed old PGM to PGMYUV.
699 - fixed msmpeg4 slice issues (tell me if you still find problems)
700 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
701 - added support for MPlayer interface
702 - added macroblock skip optimization
703 - added MJPEG decoder
704 - added mmx/mmxext IDCT from libmpeg2
705 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
706   <celer at shell.scrypt.net>)
707 - added pixel format conversion layer (e.g. for MJPEG or PPM)
708 - added deinterlacing option
709 - MPEG-1/2 fixes
710 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
711 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
712 - Windows porting of file converter
713 - added MJPEG raw format (input/ouput)
714 - added JPEG image format support (input/output)
715
716
717 version 0.4.4:
718
719 - fixed some std header definitions (Bjorn Lindgren
720   <bjorn.e.lindgren at telia.com>).
721 - added MPEG demuxer (MPEG-1 and 2 compatible).
722 - added ASF demuxer
723 - added prototype RM demuxer
724 - added AC3 decoding (done with libac3 by Aaron Holtzman)
725 - added decoding codec parameter guessing (.e.g. for MPEG, because the
726   header does not include them)
727 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
728   play them (only tested video)
729 - fixed H.263 white bug
730 - fixed phase rounding in img resample filter
731 - add MMX code for polyphase img resample filter
732 - added CPU autodetection
733 - added generic title/author/copyright/comment string handling (ASF and RM
734   use them)
735 - added SWF demux to extract MP3 track (not usable yet because no MP3
736   decoder)
737 - added fractional frame rate support
738 - codecs are no longer searched by read_header() (should fix ffserver
739   segfault)
740
741
742 version 0.4.3:
743
744 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
745 - fixed raw yuv output
746 - added motion rounding support in MPEG-4
747 - fixed motion bug rounding in MSMPEG4
748 - added B-frame handling in video core
749 - added full MPEG-1 decoding support
750 - added partial (frame only) MPEG-2 support
751 - changed the FOURCC code for H.263 to "U263" to be able to see the
752   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
753   this +codec ;) (JuanJo).
754 - Halfpel motion estimation after MB type selection (JuanJo)
755 - added pgm and .Y.U.V output format
756 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
757   output.
758 - added pgmpipe I/O format (original patch from Martin Aumueller
759   <lists at reserv.at>, but changed completely since we use a format
760   instead of a protocol)
761
762
763 version 0.4.2:
764
765 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
766   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
767   missing. MSMPEG4 support is complete.
768 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
769   can decode ffmpeg MPEGs :-)).
770 - added libavcodec API documentation (see apiexample.c).
771 - fixed image polyphase bug (the bottom of some images could be
772   greenish)
773 - added support for non clipped motion vectors (decoding only)
774   and image sizes non-multiple of 16
775 - added support for AC prediction (decoding only)
776 - added file overwrite confirmation (can be disabled with -y)
777 - added custom size picture to H.263 using H.263+ (Juanjo)
778
779
780 version 0.4.1:
781
782 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
783   of AVI and ASF to DIV3.
784 - added -me option to set motion estimation method
785   (default=log). suppressed redundant -hq option.
786 - added options -acodec and -vcodec to force a given codec (useful for
787   AVI for example)
788 - fixed -an option
789 - improved dct_quantize speed
790 - factorized some motion estimation code
791
792
793 version 0.4.0:
794
795 - removing grab code from ffserver and moved it to ffmpeg. Added
796   multistream support to ffmpeg.
797 - added timeshifting support for live feeds (option ?date=xxx in the
798   URL)
799 - added high quality image resize code with polyphase filter (need
800   mmx/see optimization). Enable multiple image size support in ffserver.
801 - added multi live feed support in ffserver
802 - suppressed master feature from ffserver (it should be done with an
803   external program which opens the .ffm url and writes it to another
804   ffserver)
805 - added preliminary support for video stream parsing (WAV and AVI half
806   done). Added proper support for audio/video file conversion in
807   ffmpeg.
808 - added preliminary support for video file sending from ffserver
809 - redesigning I/O subsystem: now using URL based input and output
810   (see avio.h)
811 - added WAV format support
812 - added "tty user interface" to ffmpeg to stop grabbing gracefully
813 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
814   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
815 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
816 - added new motion estimation algorithms, log and phods (Juanjo)
817 - changed directories: libav for format handling, libavcodec for
818   codecs
819
820
821 version 0.3.4:
822
823 - added stereo in MPEG audio encoder
824
825
826 version 0.3.3:
827
828 - added 'high quality' mode which use motion vectors. It can be used in
829   real time at low resolution.
830 - fixed rounding problems which caused quality problems at high
831   bitrates and large GOP size
832
833
834 version 0.3.2: small fixes
835
836 - ASF fixes
837 - put_seek bug fix
838
839
840 version 0.3.1: added avi/divx support
841
842 - added AVI support
843 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
844 - added sound for flash format (not tested)
845
846
847 version 0.3: initial public release