d3d11va: make av_d3d11va_alloc_context() available at all times
authorAnton Khirnov <anton@khirnov.net>
Sun, 27 Sep 2015 18:54:01 +0000 (20:54 +0200)
committerAnton Khirnov <anton@khirnov.net>
Sat, 3 Oct 2015 12:09:23 +0000 (14:09 +0200)
The public API should not depend on the build configuration.

libavcodec/Makefile
libavcodec/d3d11va.c

index 632a8a6..ba711ae 100644 (file)
@@ -19,6 +19,7 @@ OBJS = allcodecs.o                                                      \
        bitstream.o                                                      \
        bitstream_filter.o                                               \
        codec_desc.o                                                     \
+       d3d11va.o                                                        \
        dv_profile.o                                                     \
        imgconvert.o                                                     \
        log2_tab.o                                                       \
@@ -582,7 +583,7 @@ OBJS-$(CONFIG_ADPCM_YAMAHA_DECODER)       += adpcm.o adpcm_data.o
 OBJS-$(CONFIG_ADPCM_YAMAHA_ENCODER)       += adpcmenc.o adpcm_data.o
 
 # hardware accelerators
-OBJS-$(CONFIG_D3D11VA)                    += d3d11va.o dxva2.o
+OBJS-$(CONFIG_D3D11VA)                    += dxva2.o
 OBJS-$(CONFIG_DXVA2)                      += dxva2.o
 OBJS-$(CONFIG_VAAPI)                      += vaapi.o
 OBJS-$(CONFIG_VDA)                        += vda.o
index eea01b8..946de06 100644 (file)
@@ -23,6 +23,8 @@
 #include <stddef.h>
 
 #include "config.h"
+
+#if CONFIG_D3D11VA
 #include "libavutil/error.h"
 #include "libavutil/mem.h"
 
@@ -36,3 +38,11 @@ AVD3D11VAContext *av_d3d11va_alloc_context(void)
     res->context_mutex = INVALID_HANDLE_VALUE;
     return res;
 }
+#else
+struct AVD3D11VAContext *av_d3d11va_alloc_context(void);
+
+struct AVD3D11VAContext *av_d3d11va_alloc_context(void)
+{
+    return NULL;
+}
+#endif /* CONFIG_D3D11VA */