matroska: do not set invalid default duration if frame rate is zero

If a video track specifies a zero frame rate (invalid but occurs),
this results in a division by zero and subsequent undefined conversion
to integer.  Setting the default duration from the frame rate only
if the latter is greater than zero avoids such problems.

Signed-off-by: Mans Rullgard <mans@mansr.com>
mpegaudiodec: Do not discard mp_decode_frame() return value.

This fixes the warning:
libavcodec/mpegaudiodec.c:1704:14: warning: variable ‘out_size’ set but not used
ppc: drop unused function dct_quantize_altivec()

This also allows dropping some PPC-specific ugliness from dsputil.[ch].
nutdec: add malloc check and fix const to non-const conversion warnings

Signed-off-by: Mans Rullgard <mans@mansr.com>
avio: make AVIOContext.av_class pointer to const

Fix this warning:
libavformat/aviobuf.c:663:20: warning: assignment discards qualifiers from pointer target type

Although this is a public header, it should remain source and
binary compatible.

Signed-off-by: Mans Rullgard <mans@mansr.com>
avconv: check for an incompatible changing channel layout

The decoder can change the layout and channel count during decoding,
but currently we only validate that the two are compatible when opening
the codec. This checks for incompatibilities after each decoded frame.
configure: detect PGI compiler and set suitable flags

Signed-off-by: Mans Rullgard <mans@mansr.com>
x86inc: support AVX abstraction for 2-operand instructions

Add cvtdq2ps and cvtps2dq to the AVX instruction list.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
FATE: specify the input format when decoding in enc_dec_pcm()

The output format is not always the same as the file extension,
which is sometimes required for correct probing. We can avoid
probing by specifying the format since it is already known.
FATE: pass the decoded output format and audio source file to enc_dec_pcm

This will allow decoding to md5 and doing a diff comparison to a reference
checksum instead of a fuzzy stddev or oneoff comparison.

Signed-off-by: Mans Rullgard <mans@mansr.com>
dv: Replace some magic numbers by the appropriate #define.
dv: Initialize encoder tables during encoder init.
avutil: add audio fifo buffer

The functions operate on the sample level rather than the byte level and work
with all audio sample formats.
FATE: optionally write a WAVE header in audiogen
FATE: add a pattern rule for generating asynth wav files
FATE: replace current g722 encoding tests with an encode/decode test

Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
FATE: replace the acodec-g726 test with 4 new encode/decode tests

Avoids resampling and channel mixing. This only tests the behavior
with respect to input and output audio rather than also testing changes
to the encoder or muxer that do not affect the resulting decoded output.
FATE: replace the acodec-pcm_s24daud test with an enc_dec_pcm checksum test

This avoids resampling and channel mixing by using a source with
the correct channel layout and sample rate.
FATE: allow lavf tests to alter input parameters

Change some lavf tests to avoid resampling and channel mixing.
avcodec: add a cook parser to get subpacket duration

Fixes jittery video playback of rm files with cook audio.