Commit 26ab504a authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont Committed by Anton Khirnov

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: 's avatarAnton Khirnov <anton@khirnov.net>
parent 11467ecf
...@@ -209,10 +209,10 @@ static int vdpau_h264_init(AVCodecContext *avctx) ...@@ -209,10 +209,10 @@ static int vdpau_h264_init(AVCodecContext *avctx)
uint32_t level = avctx->level; uint32_t level = avctx->level;
switch (avctx->profile & ~FF_PROFILE_H264_INTRA) { switch (avctx->profile & ~FF_PROFILE_H264_INTRA) {
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
case FF_PROFILE_H264_BASELINE: case FF_PROFILE_H264_BASELINE:
profile = VDP_DECODER_PROFILE_H264_BASELINE; profile = VDP_DECODER_PROFILE_H264_BASELINE;
break; break;
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
case FF_PROFILE_H264_MAIN: case FF_PROFILE_H264_MAIN:
profile = VDP_DECODER_PROFILE_H264_MAIN; profile = VDP_DECODER_PROFILE_H264_MAIN;
break; break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment