Update Changelog
[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 9.9:
5 - 4xm: check that bits per sample is strictly positive
6 - 4xm: Check that the read track value is non-negative
7 - 4xm: Reject not a multiple of 16 dimension
8 - 8bps: Bound-check the input buffer
9 - aac: Check init_get_bits return value
10 - aac: return meaningful errors
11 - ac3: Clean up the error paths
12 - ac3dec: Don't consume more data than the actual input packet size
13 - ac3dec: Increment channel pointers only once per channel
14 - ac3: Do not clash with normal AVERROR
15 - ac3: Return proper error codes
16 - adpcm: Write the correct number of samples for ima-dk4
17 - alac: Check that the channels fit at the given offset
18 - alac: Limit max_samples_per_frame
19 - alsdec: Clean up error paths
20 - alsdec: Fix the clipping range
21 - ape demuxer: check for EOF in potentially long loops
22 - atrac3: Error on impossible encoding/channel combinations
23 - atrac3: fix error handling
24 - atrac3: set the getbits context the right buffer_end
25 - avconv: do not use lavfi direct rendering with -deinterlace
26 - avidec: Let the inner dv demuxer take care of discarding
27 - avio: Handle AVERROR_EOF in the same way as the return value 0
28 - bink: Bound check the quantization matrix.
29 - dca: Error out on missing DSYNC
30 - dca: Respect the current limits in the downmixing capabilities
31 - dsicinav: Bound-check the source buffer when needed
32 - dsicinav: Clip the source size to the expected maximum
33 - dv: Add a guard to not overread the ppcm array
34 - dxa: Make sure the reference frame exists
35 - h261: check the mtype index
36 - iff: Do not read over the source buffer
37 - imc: Catch a division by zero
38 - indeo4: Check the quantization matrix index
39 - indeo4: Do not access missing reference MV
40 - indeo4: Validate scantable dimension
41 - indeo5: return proper error codes
42 - indeo: Bound-check before applying motion compensation
43 - indeo: Bound-check before applying transform
44 - indeo: Do not reference mismatched tiles
45 - indeo: Reject impossible FRAMETYPE_NULL
46 - indeo: Sanitize ff_ivi_init_planes fail paths
47 - lavf: avoid integer overflow when estimating bitrate
48 - lavf: Make sure avg_frame_rate can be calculated without integer overflow
49 - matroskadec: Check that .lang was allocated and set before reading it
50 - mjpegb: Detect changing number of planes in interlaced video
51 - mlpdec: Do not set invalid context in read_restart_header
52 - mov: Do not allow updating the time scale after it has been set
53 - mov: Seek back if overreading an individual atom
54 - mpegvideo: Avoid 32-bit wrapping of linesize multiplications
55 - nuv: check ff_rtjpeg_decode_frame_yuv420 return value
56 - nuv: Do not ignore lzo decompression failures
57 - nuv: Pad the lzo outbuf
58 - nuv: Reset the frame on resize
59 - nuv: return meaningful error codes.
60 - nuv: Use av_fast_realloc
61 - ogg: Always alloc the private context in vorbis_header
62 - ogg: Fix potential infinite discard loop
63 - oma: check geob tag boundary
64 - oma: correctly mark and decrypt partial packets
65 - oma: refactor seek function
66 - pcm: always use codec->id instead of codec_id
67 - pcx: Do not overread source buffer in pcx_rle_decode
68 - pictordec: break out of both decoding loops when y drops below 0
69 - pictordec: pass correct context to avpriv_request_sample
70 - qdm2: check and reset dithering index per channel
71 - qdm2: Conceal broken samples
72 - qdm2: refactor joined stereo support
73 - qdm2: use init_static_data
74 - rmdec: Use the AVIOContext given as parameter in rm_read_metadata()
75 - rtjpeg: Use init_get_bits8
76 - rtmp: Do not misuse memcmp
77 - rtmp: rename data_size to size
78 - segafilm: Error out on impossible packet size
79 - vc1: check mb_height validity.
80 - vc1: check the source buffer in vc1_mc functions
81 - vcr1: add sanity checks
82 - vqavideo: check the version
83 - westwood_vqa: do not free extradata on error in read_header
84 - wmavoice: conceal clearly corrupted blocks
85 - wtv: Mark attachment with a negative stream id
86 - xl: Make sure the width is valid
87
88 version 9.8:
89 - kmvc: Clip pixel position to valid range
90 - kmvc: Use fixed sized arrays in the context
91 - indeo: Reject negative array indexes
92 - indeo: Check for reference when inheriting motion vectors
93 - indeo: Properly forward the error codes
94 - mjpeg: Check the unescaped size for overflows
95 - wmapro: Error out on impossible scale factor offsets
96 - wmapro: Check the min_samples_per_subframe
97 - wmapro: Return early on unsupported condition
98 - wmapro: Check num_vec_coeffs against the actual available buffer
99 - wmapro: Make sure there is room to store the current packet
100 - lavc: Move put_bits_left in put_bits.h
101 - 4xm: Do not overread the source buffer in decode_p_block
102 - 4xm: Check bitstream_size boundary before using it
103
104 version 9.7:
105
106 Most of the following fixes resulted from test samples that the Google
107 Security Team has kindly made available to us:
108
109 - 4xm: fix several programming errors to avoid crashes, etc.
110 - apetag: use int64_t for filesize
111 - jpegls: Fix invalid writes to memory
112 - ljpeg: use the correct number of components in YUV
113 - mjpeg: Validate sampling factors
114 - mjpegdec: properly report unsupported disabled features
115 - mjpegdec: validate parameters in mjpeg_decode_scan_progressive_ac
116 - mpegvideo: allocate sufficiently large scratch buffer for interlaced vid
117 - pixdesc: mark gray8 as pseudopal
118 - smacker: fix several programming errors to avoid crashes, etc.
119 - tiff: do not overread the source buffer
120 - vmd: drop incomplete chunks and spurious samples
121 - vmdav: convert to bytestream2 to avoid invalid reads and writes
122 - wavpack: check packet size early
123 - wavpack: use bytestream2 in wavpack_decode_block
124 - wavpack: validate samples size parsed in wavpack_decode_block
125
126
127 version 9.6:
128 - aac: check the maximum number of channels to avoid invalid writes
129 - indeo3: fix off by one in MV validity check
130 - id3v2: check for end of file while unescaping tags to avoid invalid
131   writes, reported by Google Security Team
132 - afifo: fix request_samples on the last frame in certain cases
133 - hls, segment: fix splitting for audio-only streams
134 - wav: Always seek to an even offset, Bug #500, LP: #1174737
135 - swscale: Use alpha from the right row in yuva2rgba_c, Bug #504
136 - indeo3: use unaligned reads on reference blocks, Bug #503
137 - oma: properly forward errors in oma_read_packet
138 - af_asyncts: fix offset calculation
139 - proresdec: support mixed interlaced/non-interlaced content
140
141 version 9.5:
142
143 Most of the following fixes resulted from test samples that the Google
144 Security Team has kindly made available to us:
145
146 - af_channelmap: sanity check input channel indices in all cases
147 - avfiltergraph: check for sws opts being non-NULL before using them
148 - bmv: check for len being valid in bmv_decode_frame()
149 - configure: Enable hwaccels without external dependencies by default
150 - dfa: check for invalid access in decode_wdlt()
151 - id3v2: pad the APIC packets as required by lavc
152 - indeo3: check motion vectors
153 - indeo3: fix data size check
154 - indeo3: switch parsing the header to bytestream2
155 - lavf: make sure stream probe data gets freed
156 - matroska: Update the available size after lace parsing
157 - matroska: fix a corner case in ebml-lace parsing
158 - matroska: pass the lace size to the matroska_parse_rm_audio
159 - mp3dec: fallback to generic seeking when a TOC is not present
160 - oggdec: fix faulty cleanup prototype
161 - oma: Validate sample rates
162 - qdm2: check that the FFT size is a power of 2
163 - riff: check for eof if chunk size and code are 0 to prevent an infinite loop
164 - rv10: check that extradata is large enough
165 - svq1dec: check that the reference frame has the same dimensions as the current one
166 - svq1dec: clip motion vectors to the frame size
167 - xmv: check audio track parameters validity
168 - xmv: do not leak memory in the error paths in xmv_read_header()
169
170
171 version 9.4:
172 - atrac3: avoid oversized shifting in decode_bytes()
173 - eamad: allocate a dummy reference frame when the real one is missing
174 - ffv1: fix calculating slice dimensions for version 2
175 - flacdec: simplify bounds checking in flac_probe()
176 - h264: check for luma and chroma bit dept being equal (CVE-2013-2277)
177 - hqdn3d: Fix out of array read in LOWPASS
178 - iff: validate CMAP palette size (CVE-2013-2495)
179 - ivi_common: do not call MC for intra frames when dc_transform is unset
180 - libmp3lame: use the correct remaining buffer size when flushing
181 - lzo: fix overflow checking in copy_backptr()
182 - mp3dec: Fix VBR bit rate parsing
183 - png: use av_mallocz_array() for the zlib zalloc function
184 - roqvideodec: fix a potential infinite loop in roqvideo_decode_frame()
185 - shorten: fix various programming mistakes
186 - vf_gradfun: fix uninitialized variable use
187 - vf_hqdn3d: fix uninitialized variable use
188 - vmdaudio: fix invalid reads when packet size is not a multiple of chunk size
189 - wmadec: require block_align to be set
190 - wmaprodec: require block_align to be set
191 - wmaprodec: return an error, not 0, when the input is too small
192 - xxan: fix invalid memory access in xan_decode_frame_type0()
193
194 version 9.3:
195 - h264: fix deadlocks with broken/fuzzed files
196 - flvdec: make decoder more robust
197 - vorbisdec: fix buffer overflow (CVE-2013-0894)
198 - ac3dec: validate channel output mode against channel count
199 - doc: minor improvements
200
201 version 9.2:
202 - loco: check that there is data left after decoding a plane.
203 - mov: use the format context for logging.
204 - lagarith: avoid infinite loop in lag_rac_refill() with corrupted files
205 - flicvideo: avoid an infinite loop in byte run compression
206 - av_memcpy_backptr: avoid an infinite loop for back = 0
207 - mlpdec: do not try to allocate a zero-sized output buffer.
208 - qtrle: add more checks against pixel_ptr being negative.
209 - 4xm: check the return value of read_huffman_tables().
210 - cavs: initialize various context tables, avoids crashes with corrupted files
211 - x86/H.264: Don't use redzone in AVX h264_deblock on Win64
212 - VQA video: check chunk sizes before reading chunks
213 - RoQ video decoder: check dimensions validity
214 - QDM2: check array index before use, fix out of array accesses
215 - mpegvideo: Do REBASE_PICTURE with byte pointers
216 - SVQ3: unbreak decoding
217 - libopencore-amrwb: Make AMR-WB ifdeffery more precise
218 - libopencore-amr: Conditionally compile decoder and encoder bits
219 - arm: Fall back to runtime cpu feature detection via /proc/cpuinfo
220 - xxan: properly handle odd heights
221 - msrledec: check bounds before constructing a possibly invalid pointer (CVE-2496)
222 - qtrle: fix the topmost line for 1bit
223 - aasc: fix output for msrle compression
224 - yop: check for input overreads
225 - yop: check that extradata is large enough
226 - fraps: fix off-by one bug for version 1
227 - vf_delogo: fix copying the input frame
228 - vf_delogo: fix an uninitialized read
229 - dnxhdenc: fix invalid reads in dnxhd_mb_var_thread()
230 - ATRAC3: use correct loop variable in add_tonal_components()
231 - MLP: store the channel layout for each substream
232 - MLP decoder: TrueHD: use Libav channel order
233 - x86: ac3: Fix HAVE_MMXEXT condition to only refer to external assembly
234 - arm: vp8: Fix the plain-armv6 version of vp8_luma_dc_wht
235 - lavr: call mix_function_init() in ff_audio_mix_set_matrix()
236 - rtpenc_chain: Use the original AVFormatContext for getting payload type
237 - rtp: Make sure the output format pointer is set
238 - rtp: Make sure priv_data is set before reading it
239 - videodsp_armv5te: remove #if HAVE_ARMV5TE_EXTERNAL
240 - get_bits: change the failure condition in init_get_bits
241 - mpegvideo: fix loop condition in draw_line()
242 - fate: update ref after rv30_loop_filter fix
243 - RV30: fix masking in rv30_loop_filter()
244 - libcdio: support recent cdio-paranoia
245 - Theora: Skip zero-sized headers
246 - H.264: add 3 pixels below for subpixel filter wait position
247 - H.264: fix ff_generate_sliding_window_mmcos() prototype
248 - H.264: don't clobber mmco opcode tables for non-first slice headers
249 - libx264: use the library specific default rc_initial_buffer_occupancy
250 - lavc: set the default rc_initial_buffer_occupancy
251 - lavc: introduce the convenience function init_get_bits8
252 - lavc: check for overflow in init_get_bits
253 - configure: enable pic for shared libs on AArch64
254 - zmbv: Reset the decoder on keyframe errors
255 - VC1 decoder: prevent a crash due missing pred_flag parameter
256 - matroska: Fix use after free
257 - VP3: Fix double free in vp3_decode_end()
258
259
260 version 9.1:
261 - Fix a crash on windows platforms related to automatic stack alignment
262   in libavresample
263 - Fix memleaks in the Ogg demuxer. Related to CVE-2012-2882
264
265
266 version 9:
267 - av_basename and av_dirname
268 - adobe and limelight publisher authentication in RTMP
269
270
271 version 9_beta3:
272 - ashowinfo audio filter
273 - 24-bit FLAC encoding
274 - audio volume filter
275 - deprecated the avconv -vol option. the volume filter is to be used instead.
276 - multi-channel ALAC encoding up to 7.1
277 - TAK demuxer, parser, and decoder
278 - adaptive frame-level multithreading for H.264
279
280
281 version 9_beta2:
282 - metadata (INFO tag) support in WAV muxer
283 - support for building DLLs using MSVC
284 - remove avserver daemon mode
285 - support building on the Plan 9 operating system
286 - ffv1: support version 1.3
287
288
289 version 9_beta1:
290
291 - XWD encoder and decoder
292 - Support for fragmentation in the mov/mp4 muxer
293 - ISMV (Smooth Streaming) muxer
294 - CDXL demuxer and decoder
295 - Apple ProRes encoder
296 - Sun Rasterfile Encoder
297 - remove libpostproc
298 - ID3v2 attached pictures reading and writing
299 - WMA Lossless decoder
300 - XBM encoder
301 - RealAudio Lossless decoder
302 - ZeroCodec decoder
303 - drop support for avconv without libavfilter
304 - add libavresample audio conversion library
305 - audio filters support in libavfilter and avconv
306 - add fps filter
307 - audio split filter
308 - audio mix filter
309 - avprobe output is now standard INI or JSON. The old format can still
310   be used with -of old.
311 - Indeo Audio decoder
312 - channelsplit audio filter
313 - RTMPT protocol support
314 - iLBC encoding/decoding via libilbc
315 - Microsoft Screen 1 decoder
316 - join audio filter
317 - audio channel mapping filter
318 - Microsoft ATC Screen decoder
319 - RTSP listen mode
320 - TechSmith Screen Codec 2 decoder
321 - AAC encoding via libfdk-aac
322 - Microsoft Expression Encoder Screen decoder
323 - RTMPS protocol support
324 - RTMPTS protocol support
325 - JPEG 2000 encoding support through OpenJPEG
326 - G.723.1 demuxer and decoder
327 - RTMPE protocol support
328 - RTMPTE protocol support
329 - Canopus Lossless Codec decoder
330 - avconv -shortest option is now per-output file,
331   -pass and -passlogfile are now per-output stream
332 - Ut Video encoder
333 - Microsoft Screen 2 decoder
334 - RTP depacketization of JPEG
335 - Smooth Streaming live segmenter muxer
336 - RTP packetization of JPEG
337 - Opus decoder and encoder using libopus
338 - remove -same_quant, it hasn't worked for years
339 - support for building with MSVC
340
341
342 version 0.8:
343
344 - GSM audio parser
345 - SMJPEG muxer
346
347
348 version 0.8_beta2:
349
350 - Automatic thread count based on detection number of (available) CPU cores
351 - Deprecate libpostproc. If desired, the switch --enable-postproc will
352   enable it but it may be removed in a later Libav release.
353 - rv34: frame-level multi-threading
354 - optimized iMDCT transform on x86 using SSE for for mpegaudiodec
355
356
357 version 0.8_beta1:
358
359 - BWF muxer
360 - Flash Screen Video 2 decoder
361 - ffplay/ffprobe/ffserver renamed to avplay/avprobe/avserver
362 - ffmpeg deprecated, added avconv, which is almost the same for now, except
363 for a few incompatible changes in the options, which will hopefully make them
364 easier to use. The changes are:
365     * The options placement is now strictly enforced! While in theory the
366       options for ffmpeg should be given in [input options] -i INPUT [output
367       options] OUTPUT order, in practice it was possible to give output options
368       before the -i and it mostly worked. Except when it didn't - the behavior was
369       a bit inconsistent. In avconv, it is not possible to mix input and output
370       options. All non-global options are reset after an input or output filename.
371     * All per-file options are now truly per-file - they apply only to the next
372       input or output file and specifying different values for different files
373       will now work properly (notably -ss and -t options).
374     * All per-stream options are now truly per-stream - it is possible to
375       specify which stream(s) should a given option apply to. See the Stream
376       specifiers section in the avconv manual for details.
377     * In ffmpeg some options (like -newvideo/-newaudio/...) are irregular in the
378       sense that they're specified after the output filename instead of before,
379       like all other options. In avconv this irregularity is removed, all options
380       apply to the next input or output file.
381     * -newvideo/-newaudio/-newsubtitle options were removed. Not only were they
382       irregular and highly confusing, they were also redundant. In avconv the -map
383       option will create new streams in the output file and map input streams to
384       them. E.g. avconv -i INPUT -map 0 OUTPUT will create an output stream for
385       each stream in the first input file.
386     * The -map option now has slightly different and more powerful syntax:
387         + Colons (':') are used to separate file index/stream type/stream index
388           instead of dots. Comma (',') is used to separate the sync stream instead
389           of colon.. This is done for consistency with other options.
390         + It's possible to specify stream type. E.g. -map 0:a:2 creates an
391           output stream from the third input audio stream.
392         + Omitting the stream index now maps all the streams of the given type,
393           not just the first. E.g. -map 0:s creates output streams for all the
394           subtitle streams in the first input file.
395         + Since -map can now match multiple streams, negative mappings were
396           introduced. Negative mappings disable some streams from an already
397           defined map. E.g. '-map 0 -map -0:a:1' means 'create output streams for
398           all the stream in the first input file, except for the second audio
399           stream'.
400     * There is a new option -c (or -codec) for choosing the decoder/encoder to
401       use, which allows to precisely specify target stream(s) consistently with
402       other options. E.g. -c:v lib264 sets the codec for all video streams, -c:a:0
403       libvorbis sets the codec for the first audio stream and -c copy copies all
404       the streams without reencoding. Old -vcodec/-acodec/-scodec options are now
405       aliases to -c:v/a/s
406     * It is now possible to precisely specify which stream should an AVOption
407       apply to. E.g. -b:v:0 2M sets the bitrate for the first video stream, while
408       -b:a 128k sets the bitrate for all audio streams. Note that the old -ab 128k
409       syntax is deprecated and will stop working soon.
410     * -map_chapters now takes only an input file index and applies to the next
411       output file. This is consistent with how all the other options work.
412     * -map_metadata now takes only an input metadata specifier and applies to
413       the next output file. Output metadata specifier is now part of the option
414       name, similarly to the AVOptions/map/codec feature above.
415     * -metadata can now be used to set metadata on streams and chapters, e.g.
416       -metadata:s:1 language=eng sets the language of the first stream to 'eng'.
417       This made -vlang/-alang/-slang options redundant, so they were removed.
418     * -qscale option now uses stream specifiers and applies to all streams, not
419       just video. I.e. plain -qscale number would now apply to all streams. To get
420       the old behavior, use -qscale:v. Also there is now a shortcut -q for -qscale
421       and -aq is now an alias for -q:a.
422     * -vbsf/-absf/-sbsf options were removed and replaced by a -bsf option which
423       uses stream specifiers. Use -bsf:v/a/s instead of the old options.
424     * -itsscale option now uses stream specifiers, so its argument is only the
425       scale parameter.
426     * -intra option was removed, use -g 0 for the same effect.
427     * -psnr option was removed, use -flags +psnr for the same effect.
428     * -vf option is now an alias to the new -filter option, which uses stream specifiers.
429     * -vframes/-aframes/-dframes options are now aliases to the new -frames option.
430     * -vtag/-atag/-stag options are now aliases to the new -tag option.
431 - XMV demuxer
432 - Windows Media Image decoder
433 - LATM muxer/demuxer
434 - showinfo filter
435 - split filter
436 - libcdio-paranoia input device for audio CD grabbing
437 - select filter
438 - Apple ProRes decoder
439 - CELT in Ogg demuxing
440 - VC-1 interlaced decoding
441 - lut, lutrgb, and lutyuv filters
442 - boxblur filter
443 - Ut Video decoder
444 - Speex encoding via libspeex
445 - 4:2:2 H.264 decoding support
446 - 4:2:2 and 4:4:4 H.264 encoding with libx264
447 - Pulseaudio input device
448 - replacement Indeo 3 decoder
449 - TLS/SSL and HTTPS protocol support
450 - AVOptions API rewritten and documented
451 - most of CODEC_FLAG2_*, some CODEC_FLAG_* and many codec-specific fields in
452   AVCodecContext deprecated. Codec private options should be used instead.
453 - Properly working defaults in libx264 wrapper, support for native presets.
454 - Encrypted OMA files support
455 - Discworld II BMV decoding support
456 - VBLE Decoder
457 - OS X Video Decoder Acceleration (VDA) support
458 - CRI ADX audio format muxer and demuxer
459 - Playstation Portable PMP format demuxer
460 - PCM format support in OMA demuxer
461 - CLJR encoder
462 - Dxtory capture format decoder
463 - v410 QuickTime uncompressed 4:4:4 10-bit encoder and decoder
464 - OpenMG Audio muxer
465 - Simple segmenting muxer
466 - Indeo 4 decoder
467 - SMJPEG demuxer
468
469
470 version 0.7:
471
472 - E-AC-3 audio encoder
473 - ac3enc: add channel coupling support
474 - floating-point sample format support for (E-)AC-3, DCA, AAC, Vorbis decoders
475 - H.264/MPEG frame-level multithreading
476 - av_metadata_* functions renamed to av_dict_* and moved to libavutil
477 - 4:4:4 H.264 decoding support
478 - 10-bit H.264 optimizations for x86
479 - bump libswscale for recently reported ABI break
480
481
482 version 0.7_beta2:
483
484 - VP8 frame-level multithreading
485 - NEON optimizations for VP8
486 - removed a lot of deprecated API cruft
487 - FFT and IMDCT optimizations for AVX (Sandy Bridge) processors
488 - DPX image encoder
489 - SMPTE 302M AES3 audio decoder
490 - ffmpeg no longer quits after the 'q' key is pressed; use 'ctrl+c' instead
491 - 9bit and 10bit per sample support in the H.264 decoder
492
493
494 version 0.7_beta1:
495
496 - WebM support in Matroska de/muxer
497 - low overhead Ogg muxing
498 - MMS-TCP support
499 - VP8 de/encoding via libvpx
500 - Demuxer for On2's IVF format
501 - Pictor/PC Paint decoder
502 - HE-AAC v2 decoder
503 - libfaad2 wrapper removed
504 - DTS-ES extension (XCh) decoding support
505 - native VP8 decoder
506 - RTSP tunneling over HTTP
507 - RTP depacketization of SVQ3
508 - -strict inofficial replaced by -strict unofficial
509 - ffplay -exitonkeydown and -exitonmousedown options added
510 - native GSM / GSM MS decoder
511 - RTP depacketization of QDM2
512 - ANSI/ASCII art playback system
513 - Lego Mindstorms RSO de/muxer
514 - SubRip subtitle file muxer and demuxer
515 - Chinese AVS encoding via libxavs
516 - ffprobe -show_packets option added
517 - RTP packetization of Theora and Vorbis
518 - RTP depacketization of MP4A-LATM
519 - RTP packetization and depacketization of VP8
520 - hflip filter
521 - Apple HTTP Live Streaming demuxer
522 - a64 codec
523 - MMS-HTTP support
524 - G.722 ADPCM audio encoder/decoder
525 - R10k video decoder
526 - ocv_smooth filter
527 - frei0r wrapper filter
528 - change crop filter syntax to width:height:x:y
529 - make the crop filter accept parametric expressions
530 - make ffprobe accept AVFormatContext options
531 - yadif filter
532 - blackframe filter
533 - Demuxer for Leitch/Harris' VR native stream format (LXF)
534 - RTP depacketization of the X-QT QuickTime format
535 - SAP (Session Announcement Protocol, RFC 2974) muxer and demuxer
536 - cropdetect filter
537 - ffmpeg -crop* options removed
538 - transpose filter added
539 - ffmpeg -force_key_frames option added
540 - demuxer for receiving raw rtp:// URLs without an SDP description
541 - single stream LATM/LOAS decoder
542 - setpts filter added
543 - Win64 support for optimized x86 assembly functions
544 - MJPEG/AVI1 to JPEG/JFIF bitstream filter
545 - ASS subtitle encoder and decoder
546 - IEC 61937 encapsulation for E-AC-3, TrueHD, DTS-HD (for HDMI passthrough)
547 - overlay filter added
548 - rename aspect filter to setdar, and pixelaspect to setsar
549 - IEC 61937 demuxer
550 - Mobotix .mxg demuxer
551 - frei0r source added
552 - hqdn3d filter added
553 - RTP depacketization of QCELP
554 - FLAC parser added
555 - gradfun filter added
556 - AMR-WB decoder
557 - replace the ocv_smooth filter with a more generic ocv filter
558 - Windows Televison (WTV) demuxer
559 - FFmpeg metadata format muxer and demuxer
560 - SubRip (srt) subtitle decoder
561 - floating-point AC-3 encoder added
562 - Lagarith decoder
563 - ffmpeg -copytb option added
564 - IVF muxer added
565 - Wing Commander IV movies decoder added
566 - movie source added
567 - Bink version 'b' audio and video decoder
568 - Bitmap Brothers JV playback system
569 - Apple HTTP Live Streaming protocol handler
570 - sndio support for playback and record
571 - Linux framebuffer input device added
572 - Chronomaster DFA decoder
573 - Mobotix MxPEG decoder
574 - AAC encoding via libvo-aacenc
575 - AMR-WB encoding via libvo-amrwbenc
576 - xWMA demuxer
577 - fieldorder video filter added
578
579
580 version 0.6:
581
582 - PB-frame decoding for H.263
583 - deprecated vhook subsystem removed
584 - deprecated old scaler removed
585 - VQF demuxer
586 - Alpha channel scaler
587 - PCX encoder
588 - RTP packetization of H.263
589 - RTP packetization of AMR
590 - RTP depacketization of Vorbis
591 - CorePNG decoding support
592 - Cook multichannel decoding support
593 - introduced avlanguage helpers in libavformat
594 - 8088flex TMV demuxer and decoder
595 - per-stream language-tags extraction in asfdec
596 - V210 decoder and encoder
597 - remaining GPL parts in AC-3 decoder converted to LGPL
598 - QCP demuxer
599 - SoX native format muxer and demuxer
600 - AMR-NB decoding/encoding, AMR-WB decoding via OpenCORE libraries
601 - DPX image decoder
602 - Electronic Arts Madcow decoder
603 - DivX (XSUB) subtitle encoder
604 - nonfree libamr support for AMR-NB/WB decoding/encoding removed
605 - experimental AAC encoder
606 - RTP depacketization of ASF and RTSP from WMS servers
607 - RTMP support in libavformat
608 - noX handling for OPT_BOOL X options
609 - Wave64 demuxer
610 - IEC-61937 compatible Muxer
611 - TwinVQ decoder
612 - Bluray (PGS) subtitle decoder
613 - LPCM support in MPEG-TS (HDMV RID as found on Blu-ray disks)
614 - WMA Pro decoder
615 - Core Audio Format demuxer
616 - Atrac1 decoder
617 - MD STUDIO audio demuxer
618 - RF64 support in WAV demuxer
619 - MPEG-4 Audio Lossless Coding (ALS) decoder
620 - -formats option split into -formats, -codecs, -bsfs, and -protocols
621 - IV8 demuxer
622 - CDG demuxer and decoder
623 - R210 decoder
624 - Auravision Aura 1 and 2 decoders
625 - Deluxe Paint Animation playback system
626 - SIPR decoder
627 - Adobe Filmstrip muxer and demuxer
628 - RTP depacketization of H.263
629 - Bink demuxer and audio/video decoders
630 - enable symbol versioning by default for linkers that support it
631 - IFF PBM/ILBM bitmap decoder
632 - concat protocol
633 - Indeo 5 decoder
634 - RTP depacketization of AMR
635 - WMA Voice decoder
636 - ffprobe tool
637 - AMR-NB decoder
638 - RTSP muxer
639 - HE-AAC v1 decoder
640 - Kega Game Video (KGV1) decoder
641 - VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files
642 - RTP depacketization of Theora
643 - HTTP Digest authentication
644 - RTMP/RTMPT/RTMPS/RTMPE/RTMPTE protocol support via librtmp
645 - Psygnosis YOP demuxer and video decoder
646 - spectral extension support in the E-AC-3 decoder
647 - unsharp video filter
648 - RTP hinting in the mov/3gp/mp4 muxer
649 - Dirac in Ogg demuxing
650 - seek to keyframes in Ogg
651 - 4:2:2 and 4:4:4 Theora decoding
652 - 35% faster VP3/Theora decoding
653 - faster AAC decoding
654 - faster H.264 decoding
655 - RealAudio 1.0 (14.4K) encoder
656
657
658 version 0.5:
659
660 - DV50 AKA DVCPRO50 encoder, decoder, muxer and demuxer
661 - TechSmith Camtasia (TSCC) video decoder
662 - IBM Ultimotion (ULTI) video decoder
663 - Sierra Online audio file demuxer and decoder
664 - Apple QuickDraw (qdrw) video decoder
665 - Creative ADPCM audio decoder (16 bits as well as 8 bits schemes)
666 - Electronic Arts Multimedia (WVE/UV2/etc.) file demuxer
667 - Miro VideoXL (VIXL) video decoder
668 - H.261 video encoder
669 - QPEG video decoder
670 - Nullsoft Video (NSV) file demuxer
671 - Shorten audio decoder
672 - LOCO video decoder
673 - Apple Lossless Audio Codec (ALAC) decoder
674 - Winnov WNV1 video decoder
675 - Autodesk Animator Studio Codec (AASC) decoder
676 - Indeo 2 video decoder
677 - Fraps FPS1 video decoder
678 - Snow video encoder/decoder
679 - Sonic audio encoder/decoder
680 - Vorbis audio decoder
681 - Macromedia ADPCM decoder
682 - Duck TrueMotion 2 video decoder
683 - support for decoding FLX and DTA extensions in FLIC files
684 - H.264 custom quantization matrices support
685 - ffserver fixed, it should now be usable again
686 - QDM2 audio decoder
687 - Real Cooker audio decoder
688 - TrueSpeech audio decoder
689 - WMA2 audio decoder fixed, now all files should play correctly
690 - RealAudio 14.4 and 28.8 decoders fixed
691 - JPEG-LS decoder
692 - build system improvements
693 - tabs and trailing whitespace removed from the codebase
694 - CamStudio video decoder
695 - AIFF/AIFF-C audio format, encoding and decoding
696 - ADTS AAC file reading and writing
697 - Creative VOC file reading and writing
698 - American Laser Games multimedia (*.mm) playback system
699 - Zip Motion Blocks Video decoder
700 - improved Theora/VP3 decoder
701 - True Audio (TTA) decoder
702 - AVS demuxer and video decoder
703 - JPEG-LS encoder
704 - Smacker demuxer and decoder
705 - NuppelVideo/MythTV demuxer and RTjpeg decoder
706 - KMVC decoder
707 - MPEG-2 intra VLC support
708 - MPEG-2 4:2:2 encoder
709 - Flash Screen Video decoder
710 - GXF demuxer
711 - Chinese AVS decoder
712 - GXF muxer
713 - MXF demuxer
714 - VC-1/WMV3/WMV9 video decoder
715 - MacIntel support
716 - AVISynth support
717 - VMware video decoder
718 - VP5 video decoder
719 - VP6 video decoder
720 - WavPack lossless audio decoder
721 - Targa (.TGA) picture decoder
722 - Vorbis audio encoder
723 - Delphine Software .cin demuxer/audio and video decoder
724 - Tiertex .seq demuxer/video decoder
725 - MTV demuxer
726 - TIFF picture encoder and decoder
727 - GIF picture decoder
728 - Intel Music Coder decoder
729 - Zip Motion Blocks Video encoder
730 - Musepack decoder
731 - Flash Screen Video encoder
732 - Theora encoding via libtheora
733 - BMP encoder
734 - WMA encoder
735 - GSM-MS encoder and decoder
736 - DCA decoder
737 - DXA demuxer and decoder
738 - DNxHD decoder
739 - Gamecube movie (.THP) playback system
740 - Blackfin optimizations
741 - Interplay C93 demuxer and video decoder
742 - Bethsoft VID demuxer and video decoder
743 - CRYO APC demuxer
744 - Atrac3 decoder
745 - V.Flash PTX decoder
746 - RoQ muxer, RoQ audio encoder
747 - Renderware TXD demuxer and decoder
748 - extern C declarations for C++ removed from headers
749 - sws_flags command line option
750 - codebook generator
751 - RoQ video encoder
752 - QTRLE encoder
753 - OS/2 support removed and restored again
754 - AC-3 decoder
755 - NUT muxer
756 - additional SPARC (VIS) optimizations
757 - Matroska muxer
758 - slice-based parallel H.264 decoding
759 - Monkey's Audio demuxer and decoder
760 - AMV audio and video decoder
761 - DNxHD encoder
762 - H.264 PAFF decoding
763 - Nellymoser ASAO decoder
764 - Beam Software SIFF demuxer and decoder
765 - libvorbis Vorbis decoding removed in favor of native decoder
766 - IntraX8 (J-Frame) subdecoder for WMV2 and VC-1
767 - Ogg (Theora, Vorbis and FLAC) muxer
768 - The "device" muxers and demuxers are now in a new libavdevice library
769 - PC Paintbrush PCX decoder
770 - Sun Rasterfile decoder
771 - TechnoTrend PVA demuxer
772 - Linux Media Labs MPEG-4 (LMLM4) demuxer
773 - AVM2 (Flash 9) SWF muxer
774 - QT variant of IMA ADPCM encoder
775 - VFW grabber
776 - iPod/iPhone compatible mp4 muxer
777 - Mimic decoder
778 - MSN TCP Webcam stream demuxer
779 - RL2 demuxer / decoder
780 - IFF demuxer
781 - 8SVX audio decoder
782 - non-recursive Makefiles
783 - BFI demuxer
784 - MAXIS EA XA (.xa) demuxer / decoder
785 - BFI video decoder
786 - OMA demuxer
787 - MLP/TrueHD decoder
788 - Electronic Arts CMV decoder
789 - Motion Pixels Video decoder
790 - Motion Pixels MVI demuxer
791 - removed animated GIF decoder/demuxer
792 - D-Cinema audio muxer
793 - Electronic Arts TGV decoder
794 - Apple Lossless Audio Codec (ALAC) encoder
795 - AAC decoder
796 - floating point PCM encoder/decoder
797 - MXF muxer
798 - DV100 AKA DVCPRO HD decoder and demuxer
799 - E-AC-3 support added to AC-3 decoder
800 - Nellymoser ASAO encoder
801 - ASS and SSA demuxer and muxer
802 - liba52 wrapper removed
803 - SVQ3 watermark decoding support
804 - Speex decoding via libspeex
805 - Electronic Arts TGQ decoder
806 - RV40 decoder
807 - QCELP / PureVoice decoder
808 - RV30 decoder
809 - hybrid WavPack support
810 - R3D REDCODE demuxer
811 - ALSA support for playback and record
812 - Electronic Arts TQI decoder
813 - OpenJPEG based JPEG 2000 decoder
814 - NC (NC4600) camera file demuxer
815 - Gopher client support
816 - MXF D-10 muxer
817 - generic metadata API
818
819
820 version 0.4.9-pre1:
821
822 - DV encoder, DV muxer
823 - Microsoft RLE video decoder
824 - Microsoft Video-1 decoder
825 - Apple Animation (RLE) decoder
826 - Apple Graphics (SMC) decoder
827 - Apple Video (RPZA) decoder
828 - Cinepak decoder
829 - Sega FILM (CPK) file demuxer
830 - Westwood multimedia support (VQA & AUD files)
831 - Id Quake II CIN playback support
832 - 8BPS video decoder
833 - FLIC playback support
834 - RealVideo 2.0 (RV20) decoder
835 - Duck TrueMotion v1 (DUCK) video decoder
836 - Sierra VMD demuxer and video decoder
837 - MSZH and ZLIB decoder support
838 - SVQ1 video encoder
839 - AMR-WB support
840 - PPC optimizations
841 - rate distortion optimal cbp support
842 - rate distorted optimal ac prediction for MPEG-4
843 - rate distorted optimal lambda->qp support
844 - AAC encoding with libfaac
845 - Sunplus JPEG codec (SP5X) support
846 - use Lagrange multipler instead of QP for ratecontrol
847 - Theora/VP3 decoding support
848 - XA and ADX ADPCM codecs
849 - export MPEG-2 active display area / pan scan
850 - Add support for configuring with IBM XLC
851 - floating point AAN DCT
852 - initial support for zygo video (not complete)
853 - RGB ffv1 support
854 - new audio/video parser API
855 - av_log() system
856 - av_read_frame() and av_seek_frame() support
857 - missing last frame fixes
858 - seek by mouse in ffplay
859 - noise reduction of DCT coefficients
860 - H.263 OBMC & 4MV support
861 - H.263 alternative inter vlc support
862 - H.263 loop filter
863 - H.263 slice structured mode
864 - interlaced DCT support for MPEG-2 encoding
865 - stuffing to stay above min_bitrate
866 - MB type & QP visualization
867 - frame stepping for ffplay
868 - interlaced motion estimation
869 - alternate scantable support
870 - SVCD scan offset support
871 - closed GOP support
872 - SSE2 FDCT
873 - quantizer noise shaping
874 - G.726 ADPCM audio codec
875 - MS ADPCM encoding
876 - multithreaded/SMP motion estimation
877 - multithreaded/SMP encoding for MPEG-1/MPEG-2/MPEG-4/H.263
878 - multithreaded/SMP decoding for MPEG-2
879 - FLAC decoder
880 - Metrowerks CodeWarrior suppport
881 - H.263+ custom pcf support
882 - nicer output for 'ffmpeg -formats'
883 - Matroska demuxer
884 - SGI image format, encoding and decoding
885 - H.264 loop filter support
886 - H.264 CABAC support
887 - nicer looking arrows for the motion vector visualization
888 - improved VCD support
889 - audio timestamp drift compensation
890 - MPEG-2 YUV 422/444 support
891 - polyphase kaiser windowed sinc and blackman nuttall windowed sinc audio resample
892 - better image scaling
893 - H.261 support
894 - correctly interleave packets during encoding
895 - VIS optimized motion compensation
896 - intra_dc_precision>0 encoding support
897 - support reuse of motion vectors/MB types/field select values of the source video
898 - more accurate deblock filter
899 - padding support
900 - many optimizations and bugfixes
901 - FunCom ISS audio file demuxer and according ADPCM decoding
902
903
904 version 0.4.8:
905
906 - MPEG-2 video encoding (Michael)
907 - Id RoQ playback subsystem (Mike Melanson and Tim Ferguson)
908 - Wing Commander III Movie (.mve) file playback subsystem (Mike Melanson
909   and Mario Brito)
910 - Xan DPCM audio decoder (Mario Brito)
911 - Interplay MVE playback subsystem (Mike Melanson)
912 - Duck DK3 and DK4 ADPCM audio decoders (Mike Melanson)
913
914
915 version 0.4.7:
916
917 - RealAudio 1.0 (14_4) and 2.0 (28_8) native decoders. Author unknown, code from mplayerhq
918   (originally from public domain player for Amiga at http://www.honeypot.net/audio)
919 - current version now also compiles with older GCC (Fabrice)
920 - 4X multimedia playback system including 4xm file demuxer (Mike
921   Melanson), and 4X video and audio codecs (Michael)
922 - Creative YUV (CYUV) decoder (Mike Melanson)
923 - FFV1 codec (our very simple lossless intra only codec, compresses much better
924   than HuffYUV) (Michael)
925 - ASV1 (Asus), H.264, Intel indeo3 codecs have been added (various)
926 - tiny PNG encoder and decoder, tiny GIF decoder, PAM decoder (PPM with
927   alpha support), JPEG YUV colorspace support. (Fabrice Bellard)
928 - ffplay has been replaced with a newer version which uses SDL (optionally)
929   for multiplatform support (Fabrice)
930 - Sorenson Version 3 codec (SVQ3) support has been added (decoding only) - donated
931   by anonymous
932 - AMR format has been added (Johannes Carlsson)
933 - 3GP support has been added (Johannes Carlsson)
934 - VP3 codec has been added (Mike Melanson)
935 - more MPEG-1/2 fixes
936 - better multiplatform support, MS Visual Studio fixes (various)
937 - AltiVec optimizations (Magnus Damn and others)
938 - SH4 processor support has been added (BERO)
939 - new public interfaces (avcodec_get_pix_fmt) (Roman Shaposhnick)
940 - VOB streaming support (Brian Foley)
941 - better MP3 autodetection (Andriy Rysin)
942 - qpel encoding (Michael)
943 - 4mv+b frames encoding finally fixed (Michael)
944 - chroma ME (Michael)
945 - 5 comparison functions for ME (Michael)
946 - B-frame encoding speedup (Michael)
947 - WMV2 codec (unfinished - Michael)
948 - user specified diamond size for EPZS (Michael)
949 - Playstation STR playback subsystem, still experimental (Mike and Michael)
950 - ASV2 codec (Michael)
951 - CLJR decoder (Alex)
952
953 .. And lots more new enhancements and fixes.
954
955
956 version 0.4.6:
957
958 - completely new integer only MPEG audio layer 1/2/3 decoder rewritten
959   from scratch
960 - Recoded DCT and motion vector search with gcc (no longer depends on nasm)
961 - fix quantization bug in AC3 encoder
962 - added PCM codecs and format. Corrected WAV/AVI/ASF PCM issues
963 - added prototype ffplay program
964 - added GOB header parsing on H.263/H.263+ decoder (Juanjo)
965 - bug fix on MCBPC tables of H.263 (Juanjo)
966 - bug fix on DC coefficients of H.263 (Juanjo)
967 - added Advanced Prediction Mode on H.263/H.263+ decoder (Juanjo)
968 - now we can decode H.263 streams found in QuickTime files (Juanjo)
969 - now we can decode H.263 streams found in VIVO v1 files(Juanjo)
970 - preliminary RTP "friendly" mode for H.263/H.263+ coding. (Juanjo)
971 - added GOB header for H.263/H.263+ coding on RTP mode (Juanjo)
972 - now H.263 picture size is returned on the first decoded frame (Juanjo)
973 - added first regression tests
974 - added MPEG-2 TS demuxer
975 - new demux API for libav
976 - more accurate and faster IDCT (Michael)
977 - faster and entropy-controlled motion search (Michael)
978 - two pass video encoding (Michael)
979 - new video rate control (Michael)
980 - added MSMPEG4V1, MSMPEGV2 and WMV1 support (Michael)
981 - great performance improvement of video encoders and decoders (Michael)
982 - new and faster bit readers and vlc parsers (Michael)
983 - high quality encoding mode: tries all macroblock/VLC types (Michael)
984 - added DV video decoder
985 - preliminary RTP/RTSP support in ffserver and libavformat
986 - H.263+ AIC decoding/encoding support (Juanjo)
987 - VCD MPEG-PS mode (Juanjo)
988 - PSNR stuff (Juanjo)
989 - simple stats output (Juanjo)
990 - 16-bit and 15-bit RGB/BGR/GBR support (Bisqwit)
991
992
993 version 0.4.5:
994
995 - some header fixes (Zdenek Kabelac <kabi at informatics.muni.cz>)
996 - many MMX optimizations (Nick Kurshev <nickols_k at mail.ru>)
997 - added configure system (actually a small shell script)
998 - added MPEG audio layer 1/2/3 decoding using LGPL'ed mpglib by
999   Michael Hipp (temporary solution - waiting for integer only
1000   decoder)
1001 - fixed VIDIOCSYNC interrupt
1002 - added Intel H.263 decoding support ('I263' AVI fourCC)
1003 - added Real Video 1.0 decoding (needs further testing)
1004 - simplified image formats again. Added PGM format (=grey
1005   pgm). Renamed old PGM to PGMYUV.
1006 - fixed msmpeg4 slice issues (tell me if you still find problems)
1007 - fixed OpenDivX bugs with newer versions (added VOL header decoding)
1008 - added support for MPlayer interface
1009 - added macroblock skip optimization
1010 - added MJPEG decoder
1011 - added mmx/mmxext IDCT from libmpeg2
1012 - added pgmyuvpipe, ppm, and ppm_pipe formats (original patch by Celer
1013   <celer at shell.scrypt.net>)
1014 - added pixel format conversion layer (e.g. for MJPEG or PPM)
1015 - added deinterlacing option
1016 - MPEG-1/2 fixes
1017 - MPEG-4 vol header fixes (Jonathan Marsden <snmjbm at pacbell.net>)
1018 - ARM optimizations (Lionel Ulmer <lionel.ulmer at free.fr>).
1019 - Windows porting of file converter
1020 - added MJPEG raw format (input/ouput)
1021 - added JPEG image format support (input/output)
1022
1023
1024 version 0.4.4:
1025
1026 - fixed some std header definitions (Bjorn Lindgren
1027   <bjorn.e.lindgren at telia.com>).
1028 - added MPEG demuxer (MPEG-1 and 2 compatible).
1029 - added ASF demuxer
1030 - added prototype RM demuxer
1031 - added AC3 decoding (done with libac3 by Aaron Holtzman)
1032 - added decoding codec parameter guessing (.e.g. for MPEG, because the
1033   header does not include them)
1034 - fixed header generation in MPEG-1, AVI and ASF muxer: wmplayer can now
1035   play them (only tested video)
1036 - fixed H.263 white bug
1037 - fixed phase rounding in img resample filter
1038 - add MMX code for polyphase img resample filter
1039 - added CPU autodetection
1040 - added generic title/author/copyright/comment string handling (ASF and RM
1041   use them)
1042 - added SWF demux to extract MP3 track (not usable yet because no MP3
1043   decoder)
1044 - added fractional frame rate support
1045 - codecs are no longer searched by read_header() (should fix ffserver
1046   segfault)
1047
1048
1049 version 0.4.3:
1050
1051 - BGR24 patch (initial patch by Jeroen Vreeken <pe1rxq at amsat.org>)
1052 - fixed raw yuv output
1053 - added motion rounding support in MPEG-4
1054 - fixed motion bug rounding in MSMPEG4
1055 - added B-frame handling in video core
1056 - added full MPEG-1 decoding support
1057 - added partial (frame only) MPEG-2 support
1058 - changed the FOURCC code for H.263 to "U263" to be able to see the
1059   +AVI/H.263 file with the UB Video H.263+ decoder. MPlayer works with
1060   this +codec ;) (JuanJo).
1061 - Halfpel motion estimation after MB type selection (JuanJo)
1062 - added pgm and .Y.U.V output format
1063 - suppressed 'img:' protocol. Simply use: /tmp/test%d.[pgm|Y] as input or
1064   output.
1065 - added pgmpipe I/O format (original patch from Martin Aumueller
1066   <lists at reserv.at>, but changed completely since we use a format
1067   instead of a protocol)
1068
1069
1070 version 0.4.2:
1071
1072 - added H.263/MPEG-4/MSMPEG4 decoding support. MPEG-4 decoding support
1073   (for OpenDivX) is almost complete: 8x8 MVs and rounding are
1074   missing. MSMPEG4 support is complete.
1075 - added prototype MPEG-1 decoder. Only I- and P-frames handled yet (it
1076   can decode ffmpeg MPEGs :-)).
1077 - added libavcodec API documentation (see apiexample.c).
1078 - fixed image polyphase bug (the bottom of some images could be
1079   greenish)
1080 - added support for non clipped motion vectors (decoding only)
1081   and image sizes non-multiple of 16
1082 - added support for AC prediction (decoding only)
1083 - added file overwrite confirmation (can be disabled with -y)
1084 - added custom size picture to H.263 using H.263+ (Juanjo)
1085
1086
1087 version 0.4.1:
1088
1089 - added MSMPEG4 (aka DivX) compatible encoder. Changed default codec
1090   of AVI and ASF to DIV3.
1091 - added -me option to set motion estimation method
1092   (default=log). suppressed redundant -hq option.
1093 - added options -acodec and -vcodec to force a given codec (useful for
1094   AVI for example)
1095 - fixed -an option
1096 - improved dct_quantize speed
1097 - factorized some motion estimation code
1098
1099
1100 version 0.4.0:
1101
1102 - removing grab code from ffserver and moved it to ffmpeg. Added
1103   multistream support to ffmpeg.
1104 - added timeshifting support for live feeds (option ?date=xxx in the
1105   URL)
1106 - added high quality image resize code with polyphase filter (need
1107   mmx/see optimization). Enable multiple image size support in ffserver.
1108 - added multi live feed support in ffserver
1109 - suppressed master feature from ffserver (it should be done with an
1110   external program which opens the .ffm url and writes it to another
1111   ffserver)
1112 - added preliminary support for video stream parsing (WAV and AVI half
1113   done). Added proper support for audio/video file conversion in
1114   ffmpeg.
1115 - added preliminary support for video file sending from ffserver
1116 - redesigning I/O subsystem: now using URL based input and output
1117   (see avio.h)
1118 - added WAV format support
1119 - added "tty user interface" to ffmpeg to stop grabbing gracefully
1120 - added MMX/SSE optimizations to SAD (Sums of Absolutes Differences)
1121   (Juan J. Sierralta P. a.k.a. "Juanjo" <juanjo at atmlab.utfsm.cl>)
1122 - added MMX DCT from mpeg2_movie 1.5 (Juanjo)
1123 - added new motion estimation algorithms, log and phods (Juanjo)
1124 - changed directories: libav for format handling, libavcodec for
1125   codecs
1126
1127
1128 version 0.3.4:
1129
1130 - added stereo in MPEG audio encoder
1131
1132
1133 version 0.3.3:
1134
1135 - added 'high quality' mode which use motion vectors. It can be used in
1136   real time at low resolution.
1137 - fixed rounding problems which caused quality problems at high
1138   bitrates and large GOP size
1139
1140
1141 version 0.3.2: small fixes
1142
1143 - ASF fixes
1144 - put_seek bug fix
1145
1146
1147 version 0.3.1: added avi/divx support
1148
1149 - added AVI support
1150 - added MPEG-4 codec compatible with OpenDivX. It is based on the H.263 codec
1151 - added sound for flash format (not tested)
1152
1153
1154 version 0.3: initial public release