]> git.sesse.net Git - mlt/commitdiff
avformat/Makefile, avformat/factory.c, avformat/filter_avdeinterlace.c:
authorddennedy <ddennedy@d19143bc-622f-0410-bfdd-b5b2a6649095>
Thu, 18 Dec 2008 06:03:13 +0000 (06:03 +0000)
committerddennedy <ddennedy@d19143bc-622f-0410-bfdd-b5b2a6649095>
Thu, 18 Dec 2008 06:03:13 +0000 (06:03 +0000)
Fix and enable the avdeinterlace filter for a non-MMX configuration.

git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt@1268 d19143bc-622f-0410-bfdd-b5b2a6649095

src/modules/avformat/Makefile
src/modules/avformat/factory.c
src/modules/avformat/filter_avdeinterlace.c

index 42180f7ff6bc678944a7fe94a1d047b429baa50f..a2ff738e855725eda36948de3a5382b70812e81c 100644 (file)
@@ -7,11 +7,8 @@ OBJS = factory.o \
           producer_avformat.o \
           consumer_avformat.o \
           filter_avcolour_space.o \
-          filter_avresample.o
-
-ifdef MMX_FLAGS
-       OBJS += filter_avdeinterlace.o
-endif
+          filter_avresample.o \
+          filter_avdeinterlace.o
 
 CFLAGS+=-I../..
 
index 2b6d234ba4028bb3e0653acbbedabdd4b65b663f..96af91bc14a815f77fa74f5e50c3e76863ae23f0 100644 (file)
@@ -105,10 +105,8 @@ static void *create_service( mlt_profile profile, mlt_service_type type, const c
        }
        if ( !strcmp( id, "avcolour_space" ) )
                return filter_avcolour_space_init( arg );
-#ifdef USE_MMX
        if ( !strcmp( id, "avdeinterlace" ) )
                return filter_avdeinterlace_init( arg );
-#endif
        if ( !strcmp( id, "avresample" ) )
                return filter_avresample_init( arg );
        return NULL;
index 25b513593835e23ae5240828802b96d4576c78cd..6c2a6ff40061dab629c1c5fa40d06c148f3875a6 100644 (file)
@@ -29,6 +29,9 @@
 
 #ifdef USE_MMX
 #include "mmx.h"
+#else
+#define MAX_NEG_CROP 1024
+extern uint8_t ff_cropTbl[256 + 2 * MAX_NEG_CROP];
 #endif
 
 #ifdef USE_MMX
@@ -86,7 +89,7 @@ static inline void deinterlace_line(uint8_t *dst,
                             int size)
 {
 #ifndef USE_MMX
-    uint8_t *cm = cropTbl + MAX_NEG_CROP;
+    uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
     int sum;
 
     for(;size > 0;size--) {
@@ -129,7 +132,7 @@ static inline void deinterlace_line_inplace(uint8_t *lum_m4, uint8_t *lum_m3, ui
                              int size)
 {
 #ifndef USE_MMX
-    uint8_t *cm = cropTbl + MAX_NEG_CROP;
+    uint8_t *cm = ff_cropTbl + MAX_NEG_CROP;
     int sum;
 
     for(;size > 0;size--) {