summaryrefslogtreecommitdiffstats
path: root/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
diff options
context:
space:
mode:
authorJøger Hansegård <joger.hansegard@qt.io>2023-10-05 19:24:31 +0200
committerJøger Hansegård <joger.hansegard@qt.io>2023-10-10 00:07:13 +0200
commit33f58f6a93d1d782fde973c57437d6a0b4a09327 (patch)
tree1b1ee54b75032492bd247c676551a4e76c7f204e /src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
parentb9a8642ad223c37041f15cb43268ebd814323ebd (diff)
Ensure that FFmpeg media data holder is completely recreated
The FFmpeg media data holder was reset using a member function that was recreating its state. Although this works, it is better to use a factory function for this, to get a design guarantee that the media data holder is fully recreated also after future refactoring. Pick-to: 6.5 6.6 Change-Id: If9fc75ef20788f433f9e3bd8c4ba5c3a8081e28b Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h')
-rw-r--r--src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
index 67c1b8760..046c377a4 100644
--- a/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
+++ b/src/plugins/multimedia/ffmpeg/playbackengine/qffmpegmediadataholder_p.h
@@ -19,6 +19,7 @@
#include "private/qplatformmediaplayer_p.h"
#include "qffmpeg_p.h"
#include "qvideoframe.h"
+#include <private/qmultimediautils_p.h>
#include <array>
#include <optional>
@@ -69,7 +70,7 @@ public:
int currentStreamIndex(QPlatformMediaPlayer::TrackType trackType) const;
- std::optional<ContextError> recreateAVFormatContext(const QUrl &media, QIODevice *stream);
+ static QMaybe<MediaDataHolder, ContextError> create(const QUrl &mediaUrl, QIODevice *stream);
bool setActiveTrack(QPlatformMediaPlayer::TrackType type, int streamNumber);