Just a few cursory remarks as I only have a short moment right now.

On Tue, Dec 13, 2016 at 02:19:03PM +0100, Steve Lhomme wrote:
> --- /dev/null
> +++ b/avconv_d3d11va.c
> @@ -0,0 +1,410 @@
> +
> +/* define all the GUIDs used directly here,
> +   to avoid problems with inconsistent dxva2api.h versions in mingw-w64 and 
> different MSVC version */

That sounds scary. What is the problem.

> --- a/configure
> +++ b/configure
> @@ -1677,6 +1677,8 @@ HAVE_LIST="
>      $TOOLCHAIN_FEATURES
>      $TYPES_LIST
>      dos_paths
> +    d3d11va_lib
> +    d3d11vaapi_cobj

d3 < do in lexical order

> @@ -4777,6 +4779,15 @@ if enabled libxcb; then
>  
> +enabled d3d11_h &&
> +    check_cc <<EOF && enable d3d11vaapi_cobj
> +#define _WIN32_WINNT 0x0600
> +#define COBJMACROS
> +#include <windows.h>
> +#include <d3d11.h>
> +int main(void) { ID3D11VideoDevice *o = NULL; ID3D11VideoDevice_Release(o); 
> return 0; }
> +EOF

What is d3d11vaapi_cobj for? It seems like a pointless level of indirection
over d3d11va_lib.

There should be a helper function that you can reuse for this instead
of rolling your own test.

> @@ -5059,6 +5070,9 @@ check_deps $CONFIG_LIST       \
>             $HAVE_LIST         \
>             $ALL_COMPONENTS    \
>  
> +enabled_all d3d11va d3d11vaapi_cobj &&
> +    enable d3d11va_lib

Declare a dependency instead, see how it's done for dxva2_lib.

> --- a/libavutil/hwcontext.h
> +++ b/libavutil/hwcontext.h
> @@ -28,6 +28,7 @@ enum AVHWDeviceType {
>      AV_HWDEVICE_TYPE_VDPAU,
>      AV_HWDEVICE_TYPE_CUDA,
>      AV_HWDEVICE_TYPE_VAAPI,
> +    AV_HWDEVICE_TYPE_D3D11VA,
>      AV_HWDEVICE_TYPE_DXVA2,
>      AV_HWDEVICE_TYPE_QSV,
>  };

You have to add new members at the end to avoid ABI issues.

Diego
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to