| @@ -2068,7 +2068,7 @@ static int decode_user_data(Mpeg4DecContext *ctx, GetBitContext *gb) | |||||
| } | } | ||||
| if (CONFIG_MPEG4_DECODER && ctx->xvid_build >= 0) | if (CONFIG_MPEG4_DECODER && ctx->xvid_build >= 0) | ||||
| ff_xvididct_init(&s->idsp, s->avctx); | |||||
| ff_xvid_idct_init(&s->idsp, s->avctx); | |||||
| return 0; | return 0; | ||||
| } | } | ||||
| @@ -2547,7 +2547,7 @@ static int mpeg4_update_thread_context(AVCodecContext *dst, | |||||
| return ret; | return ret; | ||||
| if (CONFIG_MPEG4_DECODER && !init && s1->xvid_build >= 0) | if (CONFIG_MPEG4_DECODER && !init && s1->xvid_build >= 0) | ||||
| ff_xvididct_init(&s->m.idsp, dst); | |||||
| ff_xvid_idct_init(&s->m.idsp, dst); | |||||
| s->shape = s1->shape; | s->shape = s1->shape; | ||||
| s->time_increment_bits = s1->time_increment_bits; | s->time_increment_bits = s1->time_increment_bits; | ||||
| @@ -66,8 +66,8 @@ MMX-OBJS-$(CONFIG_IDCTDSP) += x86/idctdsp_mmx.o \ | |||||
| MMX-OBJS-$(CONFIG_QPELDSP) += x86/fpel_mmx.o | MMX-OBJS-$(CONFIG_QPELDSP) += x86/fpel_mmx.o | ||||
| # decoders/encoders | # decoders/encoders | ||||
| MMX-OBJS-$(CONFIG_MPEG4_DECODER) += x86/idct_mmx_xvid.o \ | |||||
| x86/idct_sse2_xvid.o | |||||
| MMX-OBJS-$(CONFIG_MPEG4_DECODER) += x86/xvididct_mmx.o \ | |||||
| x86/xvididct_sse2.o | |||||
| MMX-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_mmx.o | MMX-OBJS-$(CONFIG_VC1_DECODER) += x86/vc1dsp_mmx.o | ||||
| @@ -19,7 +19,7 @@ | |||||
| #include "config.h" | #include "config.h" | ||||
| #include "fdct.h" | #include "fdct.h" | ||||
| #include "idct_xvid.h" | |||||
| #include "xvididct.h" | |||||
| #include "simple_idct.h" | #include "simple_idct.h" | ||||
| static const struct algo fdct_tab_arch[] = { | static const struct algo fdct_tab_arch[] = { | ||||
| @@ -41,13 +41,13 @@ static const struct algo idct_tab_arch[] = { | |||||
| #endif | #endif | ||||
| #if CONFIG_MPEG4_DECODER | #if CONFIG_MPEG4_DECODER | ||||
| #if HAVE_MMX_INLINE | #if HAVE_MMX_INLINE | ||||
| { "XVID-MMX", ff_idct_xvid_mmx, FF_IDCT_PERM_NONE, AV_CPU_FLAG_MMX, 1 }, | |||||
| { "XVID-MMX", ff_xvid_idct_mmx, FF_IDCT_PERM_NONE, AV_CPU_FLAG_MMX, 1 }, | |||||
| #endif | #endif | ||||
| #if HAVE_MMXEXT_INLINE | #if HAVE_MMXEXT_INLINE | ||||
| { "XVID-MMXEXT", ff_idct_xvid_mmxext, FF_IDCT_PERM_NONE, AV_CPU_FLAG_MMXEXT, 1 }, | |||||
| { "XVID-MMXEXT", ff_xvid_idct_mmxext, FF_IDCT_PERM_NONE, AV_CPU_FLAG_MMXEXT, 1 }, | |||||
| #endif | #endif | ||||
| #if HAVE_SSE2_INLINE | #if HAVE_SSE2_INLINE | ||||
| { "XVID-SSE2", ff_idct_xvid_sse2, FF_IDCT_PERM_SSE2, AV_CPU_FLAG_SSE2, 1 }, | |||||
| { "XVID-SSE2", ff_xvid_idct_sse2, FF_IDCT_PERM_SSE2, AV_CPU_FLAG_SSE2, 1 }, | |||||
| #endif | #endif | ||||
| #endif /* CONFIG_MPEG4_DECODER */ | #endif /* CONFIG_MPEG4_DECODER */ | ||||
| { 0 } | { 0 } | ||||
| @@ -23,21 +23,21 @@ | |||||
| * header for Xvid IDCT functions | * header for Xvid IDCT functions | ||||
| */ | */ | ||||
| #ifndef AVCODEC_X86_IDCT_XVID_H | |||||
| #define AVCODEC_X86_IDCT_XVID_H | |||||
| #ifndef AVCODEC_X86_XVIDIDCT_H | |||||
| #define AVCODEC_X86_XVIDIDCT_H | |||||
| #include <stdint.h> | #include <stdint.h> | ||||
| void ff_idct_xvid_mmx(short *block); | |||||
| void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_xvid_idct_mmx(short *block); | |||||
| void ff_xvid_idct_mmx_put(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_xvid_idct_mmx_add(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_idct_xvid_mmxext(short *block); | |||||
| void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_xvid_idct_mmxext(short *block); | |||||
| void ff_xvid_idct_mmxext_put(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_xvid_idct_mmxext_add(uint8_t *dest, int line_size, int16_t *block); | |||||
| void ff_idct_xvid_sse2(short *block); | |||||
| void ff_idct_xvid_sse2_put(uint8_t *dest, int line_size, short *block); | |||||
| void ff_idct_xvid_sse2_add(uint8_t *dest, int line_size, short *block); | |||||
| void ff_xvid_idct_sse2(short *block); | |||||
| void ff_xvid_idct_sse2_put(uint8_t *dest, int line_size, short *block); | |||||
| void ff_xvid_idct_sse2_add(uint8_t *dest, int line_size, short *block); | |||||
| #endif /* AVCODEC_X86_IDCT_XVID_H */ | |||||
| #endif /* AVCODEC_X86_XVIDIDCT_H */ | |||||
| @@ -22,31 +22,32 @@ | |||||
| #include "libavutil/x86/cpu.h" | #include "libavutil/x86/cpu.h" | ||||
| #include "libavcodec/idctdsp.h" | #include "libavcodec/idctdsp.h" | ||||
| #include "libavcodec/xvididct.h" | #include "libavcodec/xvididct.h" | ||||
| #include "idct_xvid.h" | |||||
| #include "idctdsp.h" | #include "idctdsp.h" | ||||
| #include "xvididct.h" | |||||
| av_cold void ff_xvididct_init_x86(IDCTDSPContext *c) | |||||
| av_cold void ff_xvid_idct_init_x86(IDCTDSPContext *c) | |||||
| { | { | ||||
| int cpu_flags = av_get_cpu_flags(); | int cpu_flags = av_get_cpu_flags(); | ||||
| if (INLINE_MMX(cpu_flags)) { | if (INLINE_MMX(cpu_flags)) { | ||||
| c->idct_put = ff_idct_xvid_mmx_put; | |||||
| c->idct_add = ff_idct_xvid_mmx_add; | |||||
| c->idct = ff_idct_xvid_mmx; | |||||
| c->idct_put = ff_xvid_idct_mmx_put; | |||||
| c->idct_add = ff_xvid_idct_mmx_add; | |||||
| c->idct = ff_xvid_idct_mmx; | |||||
| c->perm_type = FF_IDCT_PERM_NONE; | c->perm_type = FF_IDCT_PERM_NONE; | ||||
| } | } | ||||
| if (INLINE_MMXEXT(cpu_flags)) { | if (INLINE_MMXEXT(cpu_flags)) { | ||||
| c->idct_put = ff_idct_xvid_mmxext_put; | |||||
| c->idct_add = ff_idct_xvid_mmxext_add; | |||||
| c->idct = ff_idct_xvid_mmxext; | |||||
| c->idct_put = ff_xvid_idct_mmxext_put; | |||||
| c->idct_add = ff_xvid_idct_mmxext_add; | |||||
| c->idct = ff_xvid_idct_mmxext; | |||||
| c->perm_type = FF_IDCT_PERM_NONE; | c->perm_type = FF_IDCT_PERM_NONE; | ||||
| } | } | ||||
| if (INLINE_SSE2(cpu_flags)) { | if (INLINE_SSE2(cpu_flags)) { | ||||
| c->idct_put = ff_idct_xvid_sse2_put; | |||||
| c->idct_add = ff_idct_xvid_sse2_add; | |||||
| c->idct = ff_idct_xvid_sse2; | |||||
| c->idct_put = ff_xvid_idct_sse2_put; | |||||
| c->idct_add = ff_xvid_idct_sse2_add; | |||||
| c->idct = ff_xvid_idct_sse2; | |||||
| c->perm_type = FF_IDCT_PERM_SSE2; | c->perm_type = FF_IDCT_PERM_SSE2; | ||||
| } | } | ||||
| } | } | ||||
| @@ -44,8 +44,9 @@ | |||||
| #include "config.h" | #include "config.h" | ||||
| #include "libavcodec/avcodec.h" | #include "libavcodec/avcodec.h" | ||||
| #include "libavutil/mem.h" | #include "libavutil/mem.h" | ||||
| #include "idct_xvid.h" | |||||
| #include "idctdsp.h" | #include "idctdsp.h" | ||||
| #include "xvididct.h" | |||||
| #if HAVE_MMX_INLINE | #if HAVE_MMX_INLINE | ||||
| @@ -472,7 +473,8 @@ DECLARE_ALIGNED(8, static const int16_t, tab_i_04_xmm)[32*4] = { | |||||
| //----------------------------------------------------------------------------- | //----------------------------------------------------------------------------- | ||||
| void ff_idct_xvid_mmx(short *block){ | |||||
| void ff_xvid_idct_mmx(short *block) | |||||
| { | |||||
| __asm__ volatile( | __asm__ volatile( | ||||
| //# Process each row | //# Process each row | ||||
| DCT_8_INV_ROW_MMX(0*16(%0), 0*16(%0), 64*0(%2), 8*0(%1)) | DCT_8_INV_ROW_MMX(0*16(%0), 0*16(%0), 64*0(%2), 8*0(%1)) | ||||
| @@ -490,15 +492,15 @@ __asm__ volatile( | |||||
| :: "r"(block), "r"(rounder_0), "r"(tab_i_04_mmx), "r"(tg_1_16)); | :: "r"(block), "r"(rounder_0), "r"(tab_i_04_mmx), "r"(tg_1_16)); | ||||
| } | } | ||||
| void ff_idct_xvid_mmx_put(uint8_t *dest, int line_size, int16_t *block) | |||||
| void ff_xvid_idct_mmx_put(uint8_t *dest, int line_size, int16_t *block) | |||||
| { | { | ||||
| ff_idct_xvid_mmx(block); | |||||
| ff_xvid_idct_mmx(block); | |||||
| ff_put_pixels_clamped_mmx(block, dest, line_size); | ff_put_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block) | |||||
| void ff_xvid_idct_mmx_add(uint8_t *dest, int line_size, int16_t *block) | |||||
| { | { | ||||
| ff_idct_xvid_mmx(block); | |||||
| ff_xvid_idct_mmx(block); | |||||
| ff_add_pixels_clamped_mmx(block, dest, line_size); | ff_add_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| @@ -511,7 +513,7 @@ void ff_idct_xvid_mmx_add(uint8_t *dest, int line_size, int16_t *block) | |||||
| //----------------------------------------------------------------------------- | //----------------------------------------------------------------------------- | ||||
| void ff_idct_xvid_mmxext(short *block) | |||||
| void ff_xvid_idct_mmxext(short *block) | |||||
| { | { | ||||
| __asm__ volatile( | __asm__ volatile( | ||||
| //# Process each row | //# Process each row | ||||
| @@ -530,15 +532,15 @@ __asm__ volatile( | |||||
| :: "r"(block), "r"(rounder_0), "r"(tab_i_04_xmm), "r"(tg_1_16)); | :: "r"(block), "r"(rounder_0), "r"(tab_i_04_xmm), "r"(tg_1_16)); | ||||
| } | } | ||||
| void ff_idct_xvid_mmxext_put(uint8_t *dest, int line_size, int16_t *block) | |||||
| void ff_xvid_idct_mmxext_put(uint8_t *dest, int line_size, int16_t *block) | |||||
| { | { | ||||
| ff_idct_xvid_mmxext(block); | |||||
| ff_xvid_idct_mmxext(block); | |||||
| ff_put_pixels_clamped_mmx(block, dest, line_size); | ff_put_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| void ff_idct_xvid_mmxext_add(uint8_t *dest, int line_size, int16_t *block) | |||||
| void ff_xvid_idct_mmxext_add(uint8_t *dest, int line_size, int16_t *block) | |||||
| { | { | ||||
| ff_idct_xvid_mmxext(block); | |||||
| ff_xvid_idct_mmxext(block); | |||||
| ff_add_pixels_clamped_mmx(block, dest, line_size); | ff_add_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| @@ -41,8 +41,9 @@ | |||||
| #include "libavutil/internal.h" | #include "libavutil/internal.h" | ||||
| #include "libavutil/mem.h" | #include "libavutil/mem.h" | ||||
| #include "libavutil/x86/asm.h" | #include "libavutil/x86/asm.h" | ||||
| #include "idct_xvid.h" | |||||
| #include "idctdsp.h" | #include "idctdsp.h" | ||||
| #include "xvididct.h" | |||||
| #if HAVE_SSE2_INLINE | #if HAVE_SSE2_INLINE | ||||
| @@ -341,7 +342,7 @@ DECLARE_ASM_CONST(16, int32_t, walkenIdctRounders)[] = { | |||||
| "movdqa %%xmm6, 4*16("dct") \n\t" \ | "movdqa %%xmm6, 4*16("dct") \n\t" \ | ||||
| "movdqa "SREG2", 7*16("dct") \n\t" | "movdqa "SREG2", 7*16("dct") \n\t" | ||||
| inline void ff_idct_xvid_sse2(short *block) | |||||
| inline void ff_xvid_idct_sse2(short *block) | |||||
| { | { | ||||
| __asm__ volatile( | __asm__ volatile( | ||||
| "movq "MANGLE(m127)", %%mm0 \n\t" | "movq "MANGLE(m127)", %%mm0 \n\t" | ||||
| @@ -390,15 +391,15 @@ inline void ff_idct_xvid_sse2(short *block) | |||||
| ); | ); | ||||
| } | } | ||||
| void ff_idct_xvid_sse2_put(uint8_t *dest, int line_size, short *block) | |||||
| void ff_xvid_idct_sse2_put(uint8_t *dest, int line_size, short *block) | |||||
| { | { | ||||
| ff_idct_xvid_sse2(block); | |||||
| ff_xvid_idct_sse2(block); | |||||
| ff_put_pixels_clamped_mmx(block, dest, line_size); | ff_put_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| void ff_idct_xvid_sse2_add(uint8_t *dest, int line_size, short *block) | |||||
| void ff_xvid_idct_sse2_add(uint8_t *dest, int line_size, short *block) | |||||
| { | { | ||||
| ff_idct_xvid_sse2(block); | |||||
| ff_xvid_idct_sse2(block); | |||||
| ff_add_pixels_clamped_mmx(block, dest, line_size); | ff_add_pixels_clamped_mmx(block, dest, line_size); | ||||
| } | } | ||||
| @@ -22,7 +22,7 @@ | |||||
| #include "idctdsp.h" | #include "idctdsp.h" | ||||
| #include "xvididct.h" | #include "xvididct.h" | ||||
| av_cold void ff_xvididct_init(IDCTDSPContext *c, AVCodecContext *avctx) | |||||
| av_cold void ff_xvid_idct_init(IDCTDSPContext *c, AVCodecContext *avctx) | |||||
| { | { | ||||
| const unsigned high_bit_depth = avctx->bits_per_raw_sample > 8; | const unsigned high_bit_depth = avctx->bits_per_raw_sample > 8; | ||||
| @@ -32,7 +32,7 @@ av_cold void ff_xvididct_init(IDCTDSPContext *c, AVCodecContext *avctx) | |||||
| return; | return; | ||||
| if (ARCH_X86) | if (ARCH_X86) | ||||
| ff_xvididct_init_x86(c); | |||||
| ff_xvid_idct_init_x86(c); | |||||
| ff_init_scantable_permutation(c->idct_permutation, c->perm_type); | ff_init_scantable_permutation(c->idct_permutation, c->perm_type); | ||||
| } | } | ||||
| @@ -22,8 +22,8 @@ | |||||
| #include "avcodec.h" | #include "avcodec.h" | ||||
| #include "idctdsp.h" | #include "idctdsp.h" | ||||
| void ff_xvididct_init(IDCTDSPContext *c, AVCodecContext *avctx); | |||||
| void ff_xvid_idct_init(IDCTDSPContext *c, AVCodecContext *avctx); | |||||
| void ff_xvididct_init_x86(IDCTDSPContext *c); | |||||
| void ff_xvid_idct_init_x86(IDCTDSPContext *c); | |||||
| #endif /* AVCODEC_XVIDIDCT_H */ | #endif /* AVCODEC_XVIDIDCT_H */ | ||||