diff options
author | Michael Niedermayer <michaelni@gmx.at> | 2011-12-16 01:23:15 +0100 |
---|---|---|
committer | Michael Niedermayer <michaelni@gmx.at> | 2011-12-16 01:23:15 +0100 |
commit | 175cc378b3bd970caf1641e5df3361d6233747e1 (patch) | |
tree | d237cb08b1b6909154a007d3c06f0dab61b9700f /libavcodec | |
parent | 56669837ce18d15d757a144712a082b9cb535c94 (diff) | |
parent | d3b8bde2f14f78109a892e57f544bf840cf6d4fc (diff) | |
download | ffmpeg-175cc378b3bd970caf1641e5df3361d6233747e1.tar.gz |
Merge remote-tracking branch 'qatar/master'
* qatar/master:
movenc: Rudimentary IODs support.
v410enc: fix output buffer size check
v410enc: include correct headers
fate: add -pix_fmt rgb48le to r210 test
flvenc: Support muxing 16 kHz nellymoser
configure: refactor list of programs into a variable
fate: add r210 decoder test
fate: split off Indeo FATE tests into their own file
fate: split off ATRAC FATE tests into their own file
fate: Add FATE tests for v410 encoder and decoder
ARM: fix external symbol refs in rv40 asm
westwood: Make sure audio header info is present when parsing audio packets
libgsm: Reset the MS mode of GSM in the flush function
libgsm: Set options on the right object
ARM: dca: disable optimised decode_blockcodes() for old gcc
Conflicts:
configure
libavformat/movenc.c
libavformat/movenc.h
tests/fate2.mak
tests/ref/acodec/alac
tests/ref/vsynth1/mpeg4
tests/ref/vsynth2/mpeg4
Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/arm/dca.h | 2 | ||||
-rw-r--r-- | libavcodec/arm/rv40dsp_neon.S | 4 | ||||
-rw-r--r-- | libavcodec/libgsm.c | 5 | ||||
-rw-r--r-- | libavcodec/v410enc.c | 4 |
4 files changed, 9 insertions, 6 deletions
diff --git a/libavcodec/arm/dca.h b/libavcodec/arm/dca.h index 9ff7f7c75e..9b0efc0e64 100644 --- a/libavcodec/arm/dca.h +++ b/libavcodec/arm/dca.h @@ -25,7 +25,7 @@ #include "config.h" #include "libavutil/intmath.h" -#if HAVE_ARMV6 && HAVE_INLINE_ASM +#if HAVE_ARMV6 && HAVE_INLINE_ASM && AV_GCC_VERSION_AT_LEAST(4,4) #define decode_blockcodes decode_blockcodes static inline int decode_blockcodes(int code1, int code2, int levels, diff --git a/libavcodec/arm/rv40dsp_neon.S b/libavcodec/arm/rv40dsp_neon.S index a4313d89f9..d9e1b7c959 100644 --- a/libavcodec/arm/rv40dsp_neon.S +++ b/libavcodec/arm/rv40dsp_neon.S @@ -372,7 +372,7 @@ endfunc function ff_\type\()_rv40_qpel8_mc33_neon, export=1 mov r3, #8 - b ff_\type\()_pixels8_xy2_neon + b X(ff_\type\()_pixels8_xy2_neon) endfunc function ff_\type\()_rv40_qpel8_mc13_neon, export=1 @@ -652,7 +652,7 @@ endfunc function ff_\type\()_rv40_qpel16_mc33_neon, export=1 mov r3, #16 - b ff_\type\()_pixels16_xy2_neon + b X(ff_\type\()_pixels16_xy2_neon) endfunc .endm diff --git a/libavcodec/libgsm.c b/libavcodec/libgsm.c index 9ba9da9e3f..ed4962a3b2 100644 --- a/libavcodec/libgsm.c +++ b/libavcodec/libgsm.c @@ -155,7 +155,7 @@ static av_cold int libgsm_decode_init(AVCodecContext *avctx) { break; case CODEC_ID_GSM_MS: { int one = 1; - gsm_option(avctx->priv_data, GSM_OPT_WAV49, &one); + gsm_option(s->state, GSM_OPT_WAV49, &one); avctx->frame_size = 2 * GSM_FRAME_SIZE; avctx->block_align = GSM_MS_BLOCK_SIZE; } @@ -212,9 +212,12 @@ static int libgsm_decode_frame(AVCodecContext *avctx, void *data, static void libgsm_flush(AVCodecContext *avctx) { LibGSMDecodeContext *s = avctx->priv_data; + int one = 1; gsm_destroy(s->state); s->state = gsm_create(); + if (avctx->codec_id == CODEC_ID_GSM_MS) + gsm_option(s->state, GSM_OPT_WAV49, &one); } AVCodec ff_libgsm_decoder = { diff --git a/libavcodec/v410enc.c b/libavcodec/v410enc.c index ea66653412..e6c837eef6 100644 --- a/libavcodec/v410enc.c +++ b/libavcodec/v410enc.c @@ -20,8 +20,8 @@ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ +#include "libavutil/intreadwrite.h" #include "avcodec.h" -#include "put_bits.h" static av_cold int v410_encode_init(AVCodecContext *avctx) { @@ -50,7 +50,7 @@ static int v410_encode_frame(AVCodecContext *avctx, uint8_t *buf, int i, j; int output_size = 0; - if (buf_size < avctx->width * avctx->height * 3) { + if (buf_size < avctx->width * avctx->height * 4) { av_log(avctx, AV_LOG_ERROR, "Out buffer is too small.\n"); return AVERROR(ENOMEM); } |