]> git.sesse.net Git - vlc/blobdiff - modules/codec/avcodec/avcodec.c
fluidsynth: use VLC_TS_INVALID (refs #3135)
[vlc] / modules / codec / avcodec / avcodec.c
index cdbc794bea9914faaafdd48cb71f7d9139cad36c..937227345faff79e9ae0cc8c4295b29a57464dbf 100644 (file)
@@ -33,6 +33,7 @@
 #include <vlc_plugin.h>
 #include <vlc_codec.h>
 #include <vlc_avcodec.h>
+#include <vlc_cpu.h>
 
 /* ffmpeg header */
 #define HAVE_MMX 1
@@ -135,8 +136,8 @@ vlc_module_begin ()
 
     add_integer( "ffmpeg-debug", 0, NULL, DEBUG_TEXT, DEBUG_LONGTEXT,
                  true )
-#ifdef HAVE_AVCODEC_VAAPI
-    add_bool( "ffmpeg-hw", true, NULL, HW_TEXT, HW_LONGTEXT, true )
+#if defined(HAVE_AVCODEC_VAAPI) || defined(HAVE_AVCODEC_DXVA2)
+    add_bool( "ffmpeg-hw", false, NULL, HW_TEXT, HW_LONGTEXT, true )
 #endif
 
 #ifdef ENABLE_SOUT
@@ -276,6 +277,22 @@ static int OpenDecoder( vlc_object_t *p_this )
     {
         p_context->dsp_mask |= FF_MM_SSE2;
     }
+#ifdef FF_MM_SSE3
+    if( !(i_cpu & CPU_CAPABILITY_SSE3) )
+        p_context->dsp_mask |= FF_MM_SSE3;
+#endif
+#ifdef FF_MM_SSSE3
+    if( !(i_cpu & CPU_CAPABILITY_SSSE3) )
+        p_context->dsp_mask |= FF_MM_SSSE3;
+#endif
+#ifdef FF_MM_SSE4
+    if( !(i_cpu & CPU_CAPABILITY_SSE4_1) )
+        p_context->dsp_mask |= FF_MM_SSE4;
+#endif
+#ifdef FF_MM_SSE42
+    if( !(i_cpu & CPU_CAPABILITY_SSE4_2) )
+        p_context->dsp_mask |= FF_MM_SSE42;
+#endif
 
     p_dec->b_need_packetized = true;
     switch( i_cat )