diff options
author | Fei Wang <fei.w.wang@intel.com> | 2024-04-18 16:15:09 +0800 |
---|---|---|
committer | Haihao Xiang <haihao.xiang@intel.com> | 2024-04-29 11:08:41 +0800 |
commit | 67fc9b84272a88b5edace5ca25f493c21b02955d (patch) | |
tree | 2f798c619a0ad04186be996bea0c29cb9210debf | |
parent | 651f3aa7f911d897270ee687128d464bddb7883a (diff) | |
download | ffmpeg-67fc9b84272a88b5edace5ca25f493c21b02955d.tar.gz |
lavc/qsvdec: Use FFmpeg default 1/25 framerate if can't derive it from bitstream
Fix error:
$ ffmpeg -hwaccel qsv -i input.h265 -f null -
...
[null @ 0x55da1a629200] Application provided invalid, non monotonically
increasing dts to muxer in stream 0: 3 >= 3
Signed-off-by: Fei Wang <fei.w.wang@intel.com>
-rw-r--r-- | libavcodec/qsvdec.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavcodec/qsvdec.c b/libavcodec/qsvdec.c index 5528bcdc8c..ed0bfe4c8b 100644 --- a/libavcodec/qsvdec.c +++ b/libavcodec/qsvdec.c @@ -441,6 +441,11 @@ static int qsv_decode_header(AVCodecContext *avctx, QSVContext *q, param->ExtParam = q->ext_buffers; param->NumExtParam = q->nb_ext_buffers; + if (param->mfx.FrameInfo.FrameRateExtN == 0 || param->mfx.FrameInfo.FrameRateExtD == 0) { + param->mfx.FrameInfo.FrameRateExtN = 25; + param->mfx.FrameInfo.FrameRateExtD = 1; + } + #if QSV_VERSION_ATLEAST(1, 34) if (QSV_RUNTIME_VERSION_ATLEAST(q->ver, 1, 34) && avctx->codec_id == AV_CODEC_ID_AV1) param->mfx.FilmGrain = (avctx->export_side_data & AV_CODEC_EXPORT_DATA_FILM_GRAIN) ? 0 : param->mfx.FilmGrain; |