summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSigbjørn Skjæret <cisc@broadpark.no>2005-07-01 09:37:35 +0000
committerMichael Niedermayer <michaelni@gmx.at>2005-07-01 09:37:35 +0000
commit4af5b6cdb06703fb059aa9aa49684d2228e1672f (patch)
tree2db502270cd8a39c16150a7f9223b6e000397e81
parenta3075830f257d3ac011f9100c53bf79b8fca5c0e (diff)
Disable AltiVec IDCT for lowres decoding in lavc patch by (Sigbjørn Skjæret: cisc, broadpark no)
Originally committed as revision 4413 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/ppc/dsputil_ppc.c3
-rw-r--r--libavcodec/ppc/mpegvideo_ppc.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/ppc/dsputil_ppc.c b/libavcodec/ppc/dsputil_ppc.c
index 80dea036d6..776f4235c7 100644
--- a/libavcodec/ppc/dsputil_ppc.c
+++ b/libavcodec/ppc/dsputil_ppc.c
@@ -305,6 +305,8 @@ void dsputil_init_ppc(DSPContext* c, AVCodecContext *avctx)
}
#endif //CONFIG_ENCODERS
+ if (avctx->lowres==0)
+ {
if ((avctx->idct_algo == FF_IDCT_AUTO) ||
(avctx->idct_algo == FF_IDCT_ALTIVEC))
{
@@ -316,6 +318,7 @@ void dsputil_init_ppc(DSPContext* c, AVCodecContext *avctx)
c->idct_permutation_type = FF_NO_IDCT_PERM;
#endif /* ALTIVEC_USE_REFERENCE_C_CODE */
}
+ }
#ifdef POWERPC_PERFORMANCE_REPORT
{
diff --git a/libavcodec/ppc/mpegvideo_ppc.c b/libavcodec/ppc/mpegvideo_ppc.c
index c8269eb9a3..832baced0c 100644
--- a/libavcodec/ppc/mpegvideo_ppc.c
+++ b/libavcodec/ppc/mpegvideo_ppc.c
@@ -39,6 +39,8 @@ void MPV_common_init_ppc(MpegEncContext *s)
#ifdef HAVE_ALTIVEC
if (has_altivec())
{
+ if (s->avctx->lowres==0)
+ {
if ((s->avctx->idct_algo == FF_IDCT_AUTO) ||
(s->avctx->idct_algo == FF_IDCT_ALTIVEC))
{
@@ -50,6 +52,7 @@ void MPV_common_init_ppc(MpegEncContext *s)
s->dsp.idct_permutation_type = FF_NO_IDCT_PERM;
#endif /* ALTIVEC_USE_REFERENCE_C_CODE */
}
+ }
// Test to make sure that the dct required alignments are met.
if ((((long)(s->q_intra_matrix) & 0x0f) != 0) ||