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