From: Mateusz <mat...@po...> - 2015-08-28 20:48:37
|
Thanks for the patch. Unfortunately I can't do full test because I can't compile ffmpeg-2.7.2 -- mingw-w64 trunk from 2015-08-10 works with ffmpeg-2.7.2, from 2015-08-28 doesn't work. There are changes in include file "d3d11.h" which could make the difference. Error from ffmepeg-2.7.2 make: CC libavcodec/dxva2.o In file included from libavcodec/dxva2_internal.h:34:0, from libavcodec/dxva2.c:31: libavcodec/d3d11va.h:66:5: error: unknown type name 'ID3D11VideoContext' ID3D11VideoContext *video_context; ^ In file included from libavcodec/dxva2.c:31:0: libavcodec/dxva2.c: In function 'ff_dxva2_get_surface_index': libavcodec/dxva2_internal.h:65:117: warning: pointer type mismatch in conditional expression #define DXVA_CONTEXT_SURFACE(avctx, ctx, i) (avctx->pix_fmt == AV_PIX_FMT_D3D11VA_VLD ? ctx->d3d11va.surface[i] : ctx->dxva 2.surface[i]) ^ libavcodec/dxva2.c:46:13: note: in expansion of macro 'DXVA_CONTEXT_SURFACE' if (DXVA_CONTEXT_SURFACE(avctx, ctx, i) == surface) ^ libavcodec/dxva2.c: In function 'ff_dxva2_commit_buffer': libavcodec/dxva2.c:66:14: error: implicit declaration of function 'ID3D11VideoContext_GetDecoderBuffer' [-Werror=implicit-functi on-declaration] hr = ID3D11VideoContext_GetDecoderBuffer(D3D11VA_CONTEXT(ctx)->video_context, ^ libavcodec/dxva2.c:86:13: error: unknown type name 'D3D11_VIDEO_DECODER_BUFFER_DESC' D3D11_VIDEO_DECODER_BUFFER_DESC *dsc11 = dsc; ^ libavcodec/dxva2.c:88:18: error: request for member 'BufferType' in something not a structure or union dsc11->BufferType = type; ^ libavcodec/dxva2.c:89:18: error: request for member 'DataSize' in something not a structure or union dsc11->DataSize = size; ^ libavcodec/dxva2.c:90:18: error: request for member 'NumMBsInBuffer' in something not a structure or union dsc11->NumMBsInBuffer = mb_count; ^ libavcodec/dxva2.c:111:14: error: implicit declaration of function 'ID3D11VideoContext_ReleaseDecoderBuffer' [-Werror=implicit-f unction-declaration] hr = ID3D11VideoContext_ReleaseDecoderBuffer(D3D11VA_CONTEXT(ctx)->video_context, D3D11VA_CONTEXT(ctx)->decoder, type); ^ libavcodec/dxva2.c: In function 'ff_dxva2_common_end_frame': libavcodec/dxva2.c:136:5: error: unknown type name 'D3D11_VIDEO_DECODER_BUFFER_DESC' D3D11_VIDEO_DECODER_BUFFER_DESC buffer11[4]; ^ libavcodec/dxva2.c:149:18: error: implicit declaration of function 'ID3D11VideoContext_DecoderBeginFrame' [-Werror=implicit-func tion-declaration] hr = ID3D11VideoContext_DecoderBeginFrame(D3D11VA_CONTEXT(ctx)->video_context, D3D11VA_CONTEXT(ctx)->decoder, ^ libavcodec/dxva2.c:171:16: error: 'D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS' undeclared (first use in this function) type = D3D11_VIDEO_DECODER_BUFFER_PICTURE_PARAMETERS; ^ libavcodec/dxva2.c:171:16: note: each undeclared identifier is reported only once for each function it appears in libavcodec/dxva2.c:194:20: error: 'D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX' undeclared (first use in this functio n) type = D3D11_VIDEO_DECODER_BUFFER_INVERSE_QUANTIZATION_MATRIX; ^ libavcodec/dxva2.c:243:14: error: implicit declaration of function 'ID3D11VideoContext_SubmitDecoderBuffers' [-Werror=implicit-f unction-declaration] hr = ID3D11VideoContext_SubmitDecoderBuffers(D3D11VA_CONTEXT(ctx)->video_context, ^ libavcodec/dxva2.c:265:14: error: implicit declaration of function 'ID3D11VideoContext_DecoderEndFrame' [-Werror=implicit-functi on-declaration] hr = ID3D11VideoContext_DecoderEndFrame(D3D11VA_CONTEXT(ctx)->video_context, D3D11VA_CONTEXT(ctx)->decoder); ^ cc1.exe: some warnings being treated as errors make: *** [libavcodec/dxva2.o] Error 1 W dniu 2015-08-28 o 13:04, JonY pisze: > On 8/3/2015 07:51, Mateusz wrote: >> Now _lock_file/_unlock_file are in stdio/mingw_lock.c (new) file. >> >> printf_full.diff works out of the box but I edited makefile.am & >> makefile.in by hands which is wrong. I tested this patch with 64 and >> 32-bit GCC 5.2 with link to msvcrt.dll/msvcr100.dll/msvcr120.dll -- all >> is working. >> >> printf.diff is only with *.c files and needs (proper) modification to >> makefile.am/makefile.in -- stdio/mingw_lock.c should go to libmsvcrt.a >> and to libmsvcr80.a >> >> I attached new version of test-stdio.c because when I test with 32-bit >> GCC and link to msvcr120.dll there is no "ftime" function, so I changed >> to "_ftime64". >> > Done, patch applied to master. > > > > > ------------------------------------------------------------------------------ > > > _______________________________________________ > Mingw-w64-public mailing list > Min...@li... > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public |