diff options
author | Artem Dyomin <artem.dyomin@qt.io> | 2023-03-08 14:28:04 +0100 |
---|---|---|
committer | Artem Dyomin <artem.dyomin@qt.io> | 2023-03-10 10:10:53 +0000 |
commit | fa6c59824d7a2c3dcc80c812b85db398e74dc7e3 (patch) | |
tree | fdb7685fb92b22c813e14d404197de0d9bfe17f3 /src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h | |
parent | 2e43d29e1d5d50b44b8f6d4f000968e3933c279a (diff) |
Fix encoding time_base factor
A few fixes regarding the topic:
- time_base should be set to codec
- consider the fact that time_base of streams can be changed in ffmpeg
- set time_base to frames (some codecs want it to be set explicitly)
The patch fixes the crash on recording WMV video.
Pick-to: 6.5
Change-Id: Ibb40a0fef96eadafdf8723d9f11e9eabacc1325f
Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h')
-rw-r--r-- | src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h b/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h index 62eb6f916..8e8b99b1f 100644 --- a/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h +++ b/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder_p.h @@ -62,7 +62,9 @@ public: AVPixelFormat sourceFormat() const { return d ? d->sourceFormat : AV_PIX_FMT_NONE; } AVPixelFormat targetFormat() const { return d ? d->targetFormat : AV_PIX_FMT_NONE; } - qint64 getPts(qint64 ms); + qint64 getPts(qint64 ms) const; + + const AVRational &getTimeBase() const; int sendFrame(AVFrameUPtr frame); AVPacket *retrievePacket(); |