From 26ab504ad8d2b23535c9a0ad43bf1fd0e6aa0893 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20Denis-Courmont?= Date: Sun, 26 Oct 2014 21:24:12 +0200 Subject: [PATCH] vdpau/h264: request MAIN rather than BASELINE VDPAU profile for CBP The H.264 Constrained Baseline Profile (CBP) is a subset of both the Main Profile and the Baseline Profile. In principles, a hardware decoder that supports either of those can decode CBP content. As it happens, Main is supported by all VDPAU drivers, and Baseline is not. So favor map CBP to MP for now. Hopefully in the future libvdpau will offer an explicit choice for CBP. This fixes bug 757. Signed-off-by: Anton Khirnov --- libavcodec/vdpau_h264.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/vdpau_h264.c b/libavcodec/vdpau_h264.c index b759335289..41033284be 100644 --- a/libavcodec/vdpau_h264.c +++ b/libavcodec/vdpau_h264.c @@ -209,10 +209,10 @@ static int vdpau_h264_init(AVCodecContext *avctx) uint32_t level = avctx->level; switch (avctx->profile & ~FF_PROFILE_H264_INTRA) { - case FF_PROFILE_H264_CONSTRAINED_BASELINE: case FF_PROFILE_H264_BASELINE: profile = VDP_DECODER_PROFILE_H264_BASELINE; break; + case FF_PROFILE_H264_CONSTRAINED_BASELINE: case FF_PROFILE_H264_MAIN: profile = VDP_DECODER_PROFILE_H264_MAIN; break;