summaryrefslogtreecommitdiff
path: root/src/libffmpeg
diff options
context:
space:
mode:
authorRobin KAY <komadori@users.sourceforge.net>2003-10-20 00:33:28 +0000
committerRobin KAY <komadori@users.sourceforge.net>2003-10-20 00:33:28 +0000
commit8c7d24b606e3b5b02f20424abee1c240d7696a1f (patch)
tree653f8fe4b70e11a23e768b015002d5764e19f2bb /src/libffmpeg
parent9fd15a6bb66fbdc762ef385d0cdf72d39cb73367 (diff)
downloadxine-lib-8c7d24b606e3b5b02f20424abee1c240d7696a1f.tar.gz
xine-lib-8c7d24b606e3b5b02f20424abee1c240d7696a1f.tar.bz2
Allow lazy loading of Sun mediaLib. Update ChangeLog.
CVS patchset: 5553 CVS date: 2003/10/20 00:33:28
Diffstat (limited to 'src/libffmpeg')
-rw-r--r--src/libffmpeg/Makefile.am2
-rw-r--r--src/libffmpeg/diff_to_ffmpeg_cvs.txt32
-rw-r--r--src/libffmpeg/libavcodec/mlib/dsputil_mlib.c4
3 files changed, 37 insertions, 1 deletions
diff --git a/src/libffmpeg/Makefile.am b/src/libffmpeg/Makefile.am
index f92828aeb..9bccb7589 100644
--- a/src/libffmpeg/Makefile.am
+++ b/src/libffmpeg/Makefile.am
@@ -23,6 +23,6 @@ xineplug_decode_ff_la_SOURCES = xine_decoder.c
xineplug_decode_ff_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
endif
-xineplug_decode_ff_la_LIBADD = $(XINE_LIB) \
+xineplug_decode_ff_la_LIBADD = $(MLIB_LIBS) $(XINE_LIB) \
$(top_builddir)/src/libffmpeg/libavcodec/libavcodec.la \
$(top_builddir)/src/libffmpeg/libavcodec/libpostproc/libpostprocess.la
diff --git a/src/libffmpeg/diff_to_ffmpeg_cvs.txt b/src/libffmpeg/diff_to_ffmpeg_cvs.txt
index adbaf0d43..627cb4750 100644
--- a/src/libffmpeg/diff_to_ffmpeg_cvs.txt
+++ b/src/libffmpeg/diff_to_ffmpeg_cvs.txt
@@ -692,3 +692,35 @@ diff -u -r1.8 motion_est_mmx.c
static inline void sad8_mmx(uint8_t *blk1, uint8_t *blk2, int stride, int h)
{
+Index: libavcodec/mlib/dsputil_mlib.c
+===================================================================
+RCS file: /cvsroot/xine/xine-lib/src/libffmpeg/libavcodec/mlib/dsputil_mlib.c,v
+--- dsputil_mlib,c 2003-10-19 13:06:27.560738000 +0100
++++ dsputil_mlib.c 2003-10-19 13:01:50.427851000 +0100
+@@ -414,6 +414,7 @@
+
+ void dsputil_init_mlib(DSPContext* c, AVCodecContext *avctx)
+ {
++ if (xine_mm_accel() & MM_ACCEL_MLIB) {
+ c->get_pixels = get_pixels_mlib;
+ c->diff_pixels = diff_pixels_mlib;
+ c->add_pixels_clamped = add_pixels_clamped_mlib;
+@@ -440,10 +441,12 @@
+ c->put_no_rnd_pixels_tab[1][0] = put_pixels8_mlib;
+
+ c->bswap_buf = bswap_buf_mlib;
++ }
+ }
+
+ void MPV_common_init_mlib(MpegEncContext *s)
+ {
++ if (xine_mm_accel() & MM_ACCEL_MLIB) {
+ if(s->avctx->dct_algo==FF_DCT_AUTO || s->avctx->dct_algo==FF_DCT_MLIB){
+ s->dsp.fdct = ff_fdct_mlib;
+ }
+@@ -453,4 +456,5 @@
+ s->dsp.idct_add = ff_idct_add_mlib;
+ s->dsp.idct_permutation_type= FF_NO_IDCT_PERM;
+ }
++ }
+ }
diff --git a/src/libffmpeg/libavcodec/mlib/dsputil_mlib.c b/src/libffmpeg/libavcodec/mlib/dsputil_mlib.c
index f4ad328f0..19c9e6c19 100644
--- a/src/libffmpeg/libavcodec/mlib/dsputil_mlib.c
+++ b/src/libffmpeg/libavcodec/mlib/dsputil_mlib.c
@@ -414,6 +414,7 @@ static void ff_fdct_mlib(DCTELEM *data)
void dsputil_init_mlib(DSPContext* c, AVCodecContext *avctx)
{
+ if (xine_mm_accel() & MM_ACCEL_MLIB) {
c->get_pixels = get_pixels_mlib;
c->diff_pixels = diff_pixels_mlib;
c->add_pixels_clamped = add_pixels_clamped_mlib;
@@ -440,10 +441,12 @@ void dsputil_init_mlib(DSPContext* c, AVCodecContext *avctx)
c->put_no_rnd_pixels_tab[1][0] = put_pixels8_mlib;
c->bswap_buf = bswap_buf_mlib;
+ }
}
void MPV_common_init_mlib(MpegEncContext *s)
{
+ if (xine_mm_accel() & MM_ACCEL_MLIB) {
if(s->avctx->dct_algo==FF_DCT_AUTO || s->avctx->dct_algo==FF_DCT_MLIB){
s->dsp.fdct = ff_fdct_mlib;
}
@@ -453,4 +456,5 @@ void MPV_common_init_mlib(MpegEncContext *s)
s->dsp.idct_add = ff_idct_add_mlib;
s->dsp.idct_permutation_type= FF_NO_IDCT_PERM;
}
+ }
}