[FFmpeg-cvslog] vdpau/h264: request MAIN rather than BASELINE VDPAU profile for CBP

Rémi Denis-Courmont git at videolan.org
Tue Oct 28 11:04:34 CET 2014


ffmpeg | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Sun Oct 26 21:24:12 2014 +0200| [26ab504ad8d2b23535c9a0ad43bf1fd0e6aa0893] | committer: 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: Anton Khirnov <anton at khirnov.net>

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

 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 b759335..4103328 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;



More information about the ffmpeg-cvslog mailing list