summaryrefslogtreecommitdiffstats
path: root/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
diff options
context:
space:
mode:
authorArtem Dyomin <artem.dyomin@qt.io>2023-03-02 14:09:15 +0100
committerArtem Dyomin <artem.dyomin@qt.io>2023-03-05 10:50:43 +0100
commit46394944487b189962c1ceef8a236b328e8e7736 (patch)
tree6842c2c62e3bb4727c69b2cc8d652b2b523782d5 /src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
parent65465baf906cbb7ad4492e363e643ad7724ff178 (diff)
Implement looping for ffmpeg mediaplayer backend
- Looping of ffmpeg mediaplayer has been added with auto tests - Minor code cleanup (that left from previous implmntations) Pick-to: 6.5 Task-number: QTBUG-111209 Change-Id: I3839ee866bc2dc571919e41a18b093fb15165293 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h')
-rw-r--r--src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
index dc9f4c907..e1b6873a8 100644
--- a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
+++ b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
@@ -52,10 +52,16 @@ public:
static QPlatformMediaPlayer::TrackType trackTypeFromMediaType(int mediaType);
- bool setActiveTrack(QPlatformMediaPlayer::TrackType type, int streamNumber);
-
int activeTrack(QPlatformMediaPlayer::TrackType type) const;
+ const QList<StreamInfo> &streamInfo(QPlatformMediaPlayer::TrackType trackType) const;
+
+ qint64 duration() const { return m_duration; }
+
+ const QMediaMetaData &metaData() const { return m_metaData; }
+
+ bool isSeekable() const { return m_isSeekable; }
+
protected:
std::optional<ContextError> recreateAVFormatContext(const QUrl &media, QIODevice *stream);
@@ -63,6 +69,8 @@ protected:
void updateMetaData();
+ bool setActiveTrack(QPlatformMediaPlayer::TrackType type, int streamNumber);
+
protected:
std::unique_ptr<AVFormatContext, AVFormatContextDeleter> m_context;
bool m_isSeekable = false;