[FFmpeg-cvslog] dxva2: fix surface selection when compiled with both d3d11va and dxva2

Hendrik Leppkes git at videolan.org
Thu Mar 30 12:11:33 EEST 2017


ffmpeg | branch: master | Hendrik Leppkes <h.leppkes at gmail.com> | Mon Nov  7 09:59:28 2016 +0100| [fabfbfe5710050812147f93a351a53fdda56ff8c] | committer: Anton Khirnov

dxva2: fix surface selection when compiled with both d3d11va and dxva2

Fixes a regression introduced in
be630b1e08ebe8f766b1798accd6b8e5e096f5aa

Signed-off-by: Anton Khirnov <anton at khirnov.net>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fabfbfe5710050812147f93a351a53fdda56ff8c
---

 libavcodec/dxva2.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/dxva2.c b/libavcodec/dxva2.c
index eeac474..9fedd03 100644
--- a/libavcodec/dxva2.c
+++ b/libavcodec/dxva2.c
@@ -41,7 +41,7 @@ unsigned ff_dxva2_get_surface_index(const AVCodecContext *avctx,
     void *surface = ff_dxva2_get_surface(frame);
     unsigned i;
 
-    for (i = 0; i < DXVA_CONTEXT_COUNT(avctx, ctx); i++)
+    for (i = 0; i < DXVA_CONTEXT_COUNT(avctx, ctx); i++) {
 #if CONFIG_D3D11VA
         if (avctx->pix_fmt == AV_PIX_FMT_D3D11VA_VLD && ctx->d3d11va.surface[i] == surface) {
             D3D11_VIDEO_DECODER_OUTPUT_VIEW_DESC viewDesc;
@@ -53,6 +53,7 @@ unsigned ff_dxva2_get_surface_index(const AVCodecContext *avctx,
         if (avctx->pix_fmt == AV_PIX_FMT_DXVA2_VLD && ctx->dxva2.surface[i] == surface)
             return i;
 #endif
+    }
 
     assert(0);
     return 0;



More information about the ffmpeg-cvslog mailing list