The driver bugs that caused decoded HEVC content to have an incorrect
memory layout have been fully fixed in the 410.xx driver release so
we can start exposing support.
... | ... |
@@ -208,8 +208,12 @@ int ff_vdpau_common_init(AVCodecContext *avctx, VdpDecoderProfile profile, |
208 | 208 |
return vdpau_error(status); |
209 | 209 |
if (avctx->codec_id == AV_CODEC_ID_HEVC && strncmp(info_string, "NVIDIA ", 7) == 0 && |
210 | 210 |
!(avctx->hwaccel_flags & AV_HWACCEL_FLAG_ALLOW_PROFILE_MISMATCH)) { |
211 |
- av_log(avctx, AV_LOG_VERBOSE, "HEVC with NVIDIA VDPAU drivers is buggy, skipping.\n"); |
|
212 |
- return AVERROR(ENOTSUP); |
|
211 |
+ int driver_version; |
|
212 |
+ sscanf(info_string, "NVIDIA VDPAU Driver Shared Library %d", &driver_version); |
|
213 |
+ if (driver_version < 410) { |
|
214 |
+ av_log(avctx, AV_LOG_VERBOSE, "HEVC with NVIDIA VDPAU drivers is buggy, skipping.\n"); |
|
215 |
+ return AVERROR(ENOTSUP); |
|
216 |
+ } |
|
213 | 217 |
} |
214 | 218 |
|
215 | 219 |
status = vdctx->get_proc_address(vdctx->device, |