Browse Source

Merge commit '559fa0d41b5cf8f7e1ba89d1ac70e74712eb2816'

* commit '559fa0d41b5cf8f7e1ba89d1ac70e74712eb2816':
  vdpau: add mapping for H.264 Constrained Baseline profile and fallback

Merged-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.6
Michael Niedermayer 11 years ago
parent
commit
27f2e211aa
2 changed files with 13 additions and 0 deletions
  1. +9
    -0
      libavcodec/vdpau.c
  2. +4
    -0
      libavcodec/vdpau_h264.c

+ 9
- 0
libavcodec/vdpau.c View File

@@ -138,6 +138,15 @@ int ff_vdpau_common_init(AVCodecContext *avctx, VdpDecoderProfile profile,

status = decoder_query_caps(vdctx->device, profile, &supported, &max_level,
&max_mb, &max_width, &max_height);
#ifdef VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE
if (status != VDP_STATUS_OK && profile == VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE) {
/* Run-time backward compatibility for libvdpau 0.8 and earlier */
profile = VDP_DECODER_PROFILE_H264_MAIN;
status = decoder_query_caps(vdctx->device, profile, &supported,
&max_level, &max_mb,
&max_width, &max_height);
}
#endif
if (status != VDP_STATUS_OK)
return vdpau_error(status);



+ 4
- 0
libavcodec/vdpau_h264.c View File

@@ -213,6 +213,10 @@ static int vdpau_h264_init(AVCodecContext *avctx)
profile = VDP_DECODER_PROFILE_H264_BASELINE;
break;
case FF_PROFILE_H264_CONSTRAINED_BASELINE:
#ifdef VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE
profile = VDP_DECODER_PROFILE_H264_CONSTRAINED_BASELINE;
break;
#endif
case FF_PROFILE_H264_MAIN:
profile = VDP_DECODER_PROFILE_H264_MAIN;
break;


Loading…
Cancel
Save