aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mips/pixblockdsp_init_mips.c
diff options
context:
space:
mode:
author周晓勇 <zhouxiaoyong@loongson.cn>2015-07-22 15:10:38 +0800
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-22 12:11:31 +0200
commit3e35f8efa18d9b77bbdb16d9c61e387241a7bd83 (patch)
treea524ba992188be6a1b1a2570164fdb28491e2bae /libavcodec/mips/pixblockdsp_init_mips.c
parent6b2bb3d231f81780b0bb12193e9ca29ddf2c474a (diff)
downloadffmpeg-3e35f8efa18d9b77bbdb16d9c61e387241a7bd83.tar.gz
avcodec: loongson optimize pixblockdsp with mmi
Signed-off-by: ZhouXiaoyong <zhouxiaoyong@loongson.cn> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/mips/pixblockdsp_init_mips.c')
-rw-r--r--libavcodec/mips/pixblockdsp_init_mips.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/libavcodec/mips/pixblockdsp_init_mips.c b/libavcodec/mips/pixblockdsp_init_mips.c
index 0f2fb15180..1b3741ea76 100644
--- a/libavcodec/mips/pixblockdsp_init_mips.c
+++ b/libavcodec/mips/pixblockdsp_init_mips.c
@@ -1,5 +1,6 @@
/*
* Copyright (c) 2015 Shivraj Patil (Shivraj.Patil@imgtec.com)
+ * Zhou Xiaoyong <zhouxiaoyong@loongson.cn>
*
* This file is part of FFmpeg.
*
@@ -44,10 +45,25 @@ static av_cold void pixblockdsp_init_msa(PixblockDSPContext *c,
}
#endif // #if HAVE_MSA
+#if HAVE_MMI
+static av_cold void pixblockdsp_init_mmi(PixblockDSPContext *c,
+ AVCodecContext *avctx, unsigned high_bit_depth)
+{
+ c->diff_pixels = ff_diff_pixels_mmi;
+
+ if (!high_bit_depth || avctx->codec_type != AVMEDIA_TYPE_VIDEO) {
+ c->get_pixels = ff_get_pixels_8_mmi;
+ }
+}
+#endif /* HAVE_MMI */
+
void ff_pixblockdsp_init_mips(PixblockDSPContext *c, AVCodecContext *avctx,
unsigned high_bit_depth)
{
#if HAVE_MSA
pixblockdsp_init_msa(c, avctx, high_bit_depth);
#endif // #if HAVE_MSA
+#if HAVE_MMI
+ pixblockdsp_init_mmi(c, avctx, high_bit_depth);
+#endif /* HAVE_MMI */
}