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