vlc | branch: master | Thomas Guillem <tho...@gllm.fr> | Thu Mar 1 18:06:21 2018 +0100| [1ab0330d135c5e083cb4c4139a28d8778a7ffb43] | committer: Thomas Guillem
directx_va: also check avctx profile Better to get all chances to get a profile. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=1ab0330d135c5e083cb4c4139a28d8778a7ffb43 --- modules/codec/avcodec/directx_va.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/codec/avcodec/directx_va.c b/modules/codec/avcodec/directx_va.c index 3efed0f1f0..eb00abb6c7 100644 --- a/modules/codec/avcodec/directx_va.c +++ b/modules/codec/avcodec/directx_va.c @@ -350,12 +350,13 @@ error: return VLC_EGENERIC; } -static bool profile_supported(const directx_va_mode_t *mode, const es_format_t *fmt) +static bool profile_supported(const directx_va_mode_t *mode, const es_format_t *fmt, + const AVCodecContext *avctx) { bool is_supported = mode->p_profiles == NULL || !mode->p_profiles[0]; if (!is_supported) { - int profile = fmt->i_profile; + int profile = fmt->i_profile >= 0 ? fmt->i_profile : avctx->profile; if (mode->codec == AV_CODEC_ID_H264) { uint8_t h264_profile; @@ -420,7 +421,7 @@ static int FindVideoServiceConversion(vlc_va_t *va, directx_sys_t *dx_sys, } if ( is_supported ) { - is_supported = profile_supported( mode, fmt ); + is_supported = profile_supported( mode, fmt, avctx ); if (!is_supported) msg_Warn( va, "Unsupported profile %d for %s ", fmt->i_profile, directx_va_GetDecoderName(mode->guid) ); _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org https://mailman.videolan.org/listinfo/vlc-commits