+++ /dev/null
-#ifndef BACKENDPLUGINBASE_H
-#define BACKENDPLUGINBASE_H
-
-#include "playerplugininterface.h"
-
-class QUrl;
-
-class BackendInstance {
-public:
- using TrackIndex = int;
- // In seconds
- using TimeStamp = double;
- // Volume valid range is 0.0-1.0
- using Volume = double;
- virtual ~BackendInstance() = default;
-
- virtual VideoRendererBase *createRenderer(VideoUpdateInterface *) = 0;
-
- virtual bool open(const QUrl &resource) = 0;
-
- virtual void play() = 0;
- virtual void pause() = 0;
- virtual void stop() = 0;
-
- virtual void seek(TimeStamp) = 0;
-
- virtual void setVolume(Volume) = 0;
-
- virtual void setCurrentVideoStream(TrackIndex) = 0;
- virtual void setCurrentAudioStream(TrackIndex) = 0;
- virtual void setCurrentSubtitleStream(TrackIndex) = 0;
-};
-
-class BackendPluginBase {
-public:
- virtual ~BackendPluginBase() = default;
-
- virtual BackendInstance *createInstance(PlayerPluginInterface *) = 0;
-};
-
-#define ANIPLAYER_BACKEND_DPLUGIN_INTERFACE_IID \
- "org.aptx.aniplayer.BackendPluginInterface"
-
-#include <QObject>
-Q_DECLARE_INTERFACE(BackendPluginBase, ANIPLAYER_BACKEND_DPLUGIN_INTERFACE_IID)
-
-#endif // BACKENDPLUGINBASE_H
+++ /dev/null
-#ifndef PLAYERPLUGININTERFACE_H
-#define PLAYERPLUGININTERFACE_H
-
-#include <QtGlobal>
-#include <QUrl>
-
-class QOpenGLFramebufferObject;
-
-class VideoUpdateInterface {
-public:
- virtual ~VideoUpdateInterface() = default;
-
- virtual void videoUpdated() = 0;
-};
-
-class PlayerPluginInterface {
-public:
- using TimeStamp = double;
- using Volume = double;
-
- enum class PlayState { Stopped, Paused, Playing };
- /*
- * .-----.
- * | | Error
- * v |
- * Stopped -'<--+<-------.
- * | ^ |
- * | Load | Error |
- * v | |
- * Paused<------+ | File End
- * | ^ |
- * | Play | Pause |
- * v | |
- * Playing------+--------'
- */
-
- virtual ~PlayerPluginInterface() = default;
-
- virtual void backendReadyToPlay() = 0;
-
- virtual void backendSourceChanged(QUrl source) = 0;
- virtual void playStateChanged(PlayState) = 0;
- virtual void playbackDurationChanged(TimeStamp) = 0;
- virtual void playbackPositionChanged(TimeStamp) = 0;
- virtual void playbackVolumeChanged(Volume) = 0;
- virtual void playbackMaxVolumeChanged(Volume) = 0;
-
- struct Track {
- QString title;
- QString language;
- int id;
- };
- using TrackList = QList<Track>;
- virtual void backendVideoTracksChanged(const TrackList &) = 0;
- virtual void backendAudioTracksChanged(const TrackList &) = 0;
- virtual void backendSubtitleTracksChanged(const TrackList &) = 0;
-
- struct Chapter {
- QString title;
- TimeStamp startTime;
- };
- using ChapterList = QList<Chapter>;
- virtual void backendChaptersChanged(const ChapterList &chapters) = 0;
-};
-
-class PlayerRendererInterface {
-public:
- virtual ~PlayerRendererInterface() = default;
- virtual void rendererSinkSet(VideoUpdateInterface *) = 0;
- virtual void rendererReady() = 0;
-};
-
-class VideoRendererBase {
-public:
- VideoRendererBase() = default;
- VideoRendererBase(const VideoRendererBase &) = delete;
- VideoRendererBase &operator=(const VideoRendererBase &) = delete;
- virtual ~VideoRendererBase() = default;
- virtual void render(QOpenGLFramebufferObject *) = 0;
-};
-
-#endif // PLAYERPLUGININTERFACE_H
+++ /dev/null
-#ifndef PLAYERPLUGININTERFACE_H
-#define PLAYERPLUGININTERFACE_H
-
-#include <QtGlobal>
-#include <QUrl>
-
-class QOpenGLFramebufferObject;
-
-class VideoUpdateInterface {
-public:
- virtual ~VideoUpdateInterface() = default;
-
- virtual void videoUpdated() = 0;
-};
-
-class PlayerPluginInterface {
-public:
- using TrackIndex = int;
- using TimeStamp = double;
- using Volume = double;
-
- enum class PlayState { Stopped, Paused, Playing };
- /*
- * .-----.
- * | | Error
- * v |
- * Stopped -'<--+<-------.
- * | ^ |
- * | Load | Error |
- * v | |
- * Paused<------+ | File End
- * | ^ |
- * | Play | Pause |
- * v | |
- * Playing------+--------'
- */
-
- virtual ~PlayerPluginInterface() = default;
-
- virtual void backendReadyToPlay() = 0;
-
- virtual void backendSourceChanged(QUrl source) = 0;
- virtual void playStateChanged(PlayState) = 0;
- virtual void playbackDurationChanged(TimeStamp) = 0;
- virtual void playbackPositionChanged(TimeStamp) = 0;
- virtual void playbackVolumeChanged(Volume) = 0;
- virtual void playbackMaxVolumeChanged(Volume) = 0;
-
- struct Track {
- QString title;
- QString language;
- int id;
- };
- using TrackList = QList<Track>;
- virtual void backendVideoTracksChanged(const TrackList &) = 0;
- virtual void backendAudioTracksChanged(const TrackList &) = 0;
- virtual void backendSubtitleTracksChanged(const TrackList &) = 0;
-
- virtual void backendCurrentVideoTrackChanged(TrackIndex) = 0;
- virtual void backendCurrentAudioTrackChanged(TrackIndex) = 0;
- virtual void backendCurrentSubtitleTrackChanged(TrackIndex) = 0;
-
- struct Chapter {
- QString title;
- TimeStamp startTime;
- };
- using ChapterList = QList<Chapter>;
- virtual void backendChaptersChanged(const ChapterList &chapters) = 0;
-};
-
-class PlayerRendererInterface {
-public:
- virtual ~PlayerRendererInterface() = default;
- virtual void rendererSinkSet(VideoUpdateInterface *) = 0;
- virtual void rendererReady() = 0;
-};
-
-class VideoRendererBase {
-public:
- VideoRendererBase() = default;
- VideoRendererBase(const VideoRendererBase &) = delete;
- VideoRendererBase &operator=(const VideoRendererBase &) = delete;
- virtual ~VideoRendererBase() = default;
- virtual void render(QOpenGLFramebufferObject *) = 0;
-};
-
-#endif // PLAYERPLUGININTERFACE_H
+++ /dev/null
-#ifndef PLAYERPLUGININTERFACE_H
-#define PLAYERPLUGININTERFACE_H
-
-#include <QtGlobal>
-#include <QUrl>
-
-class QOpenGLFramebufferObject;
-
-class VideoUpdateInterface {
-public:
- virtual ~VideoUpdateInterface() = default;
-
- virtual void videoUpdated() = 0;
-};
-
-class PlayerPluginInterface {
-public:
- using TimeStamp = double;
- using Volume = double;
-
- enum class PlayState { Stopped, Paused, Playing };
- /*
- * .-----.
- * | | Error
- * v |
- * Stopped -'<--+<-------.
- * | ^ |
- * | Load | Error |
- * v | |
- * Paused<------+ | File End
- * | ^ |
- * | Play | Pause |
- * v | |
- * Playing------+--------'
- */
-
- virtual ~PlayerPluginInterface() = default;
-
- virtual void backendReadyToPlay() = 0;
-
- virtual void backendSourceChanged(QUrl source) = 0;
- virtual void playStateChanged(PlayState) = 0;
- virtual void playbackDurationChanged(TimeStamp) = 0;
- virtual void playbackPositionChanged(TimeStamp) = 0;
- virtual void playbackVolumeChanged(Volume) = 0;
- virtual void playbackMaxVolumeChanged(Volume) = 0;
-
- struct Track {
- QString title;
- QString language;
- };
- using TrackList = QList<Track>;
- virtual void backendTracksChanged(const TrackList &tracks) = 0;
-
- struct Chapter {
- QString title;
- TimeStamp startTime;
- };
- using ChapterList = QList<Chapter>;
- virtual void backendChaptersChanged(const ChapterList &chapters) = 0;
-};
-
-class PlayerRendererInterface {
-public:
- virtual ~PlayerRendererInterface() = default;
- virtual void rendererSinkSet(VideoUpdateInterface *) = 0;
- virtual void rendererReady() = 0;
-};
-
-class VideoRendererBase {
-public:
- VideoRendererBase() = default;
- VideoRendererBase(const VideoRendererBase &) = delete;
- VideoRendererBase &operator=(const VideoRendererBase &) = delete;
- virtual ~VideoRendererBase() = default;
- virtual void render(QOpenGLFramebufferObject *) = 0;
-};
-
-#endif // PLAYERPLUGININTERFACE_H
+++ /dev/null
-#ifndef PLAYERPLUGININTERFACE_H
-#define PLAYERPLUGININTERFACE_H
-
-#include <QtGlobal>
-#include <QUrl>
-
-class QOpenGLFramebufferObject;
-
-class VideoUpdateInterface {
-public:
- virtual ~VideoUpdateInterface() = default;
-
- virtual void videoUpdated() = 0;
-};
-
-class PlayerPluginInterface {
-public:
- using TrackIndex = int;
- using TimeStamp = double;
- using Volume = double;
-
- enum class PlayState { Stopped, Paused, Playing };
- /*
- * .-----.
- * | | Error
- * v |
- * Stopped -'<--+<-------.
- * | ^ |
- * | Load | Error |
- * v | |
- * Paused<------+ | File End
- * | ^ |
- * | Play | Pause |
- * v | |
- * Playing------+--------'
- */
-
- virtual ~PlayerPluginInterface() = default;
-
- virtual void backendReadyToPlay() = 0;
-
- virtual void backendSourceChanged(QUrl source) = 0;
- virtual void playStateChanged(PlayState) = 0;
- virtual void playbackDurationChanged(TimeStamp) = 0;
- virtual void playbackPositionChanged(TimeStamp) = 0;
- virtual void playbackVolumeChanged(Volume) = 0;
- virtual void playbackMaxVolumeChanged(Volume) = 0;
-
- struct Track {
- QString title;
- QString language;
- int id;
- };
- using TrackList = QList<Track>;
- virtual void backendVideoTracksChanged(const TrackList &) = 0;
- virtual void backendAudioTracksChanged(const TrackList &) = 0;
- virtual void backendSubtitleTracksChanged(const TrackList &) = 0;
-
- virtual void backendCurrentVideoTrackChanged(TrackIndex) = 0;
- virtual void backendCurrentAudioTrackChanged(TrackIndex) = 0;
- virtual void backendCurrentSubtitleTrackChanged(TrackIndex) = 0;
-
- struct Chapter {
- QString title;
- TimeStamp startTime;
- };
- using ChapterList = QList<Chapter>;
- virtual void backendChaptersChanged(const ChapterList &chapters) = 0;
-};
-
-class PlayerRendererInterface {
-public:
- virtual ~PlayerRendererInterface() = default;
- virtual void rendererSinkSet(VideoUpdateInterface *) = 0;
- virtual void rendererReady() = 0;
-};
-
-class VideoRendererBase {
-public:
- VideoRendererBase() = default;
- VideoRendererBase(const VideoRendererBase &) = delete;
- VideoRendererBase &operator=(const VideoRendererBase &) = delete;
- virtual ~VideoRendererBase() = default;
- virtual void render(QOpenGLFramebufferObject *) = 0;
-};
-
-#endif // PLAYERPLUGININTERFACE_H