diff options
Diffstat (limited to 'src/widgets/mediaplayer.hpp')
| -rw-r--r-- | src/widgets/mediaplayer.hpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/widgets/mediaplayer.hpp b/src/widgets/mediaplayer.hpp new file mode 100644 index 0000000..c39a800 --- /dev/null +++ b/src/widgets/mediaplayer.hpp @@ -0,0 +1,42 @@ +#ifndef MEDIAPLAYER_HPP +#define MEDIAPLAYER_HPP + +#include <QWidget> +#include <QBuffer> +#include <QVideoWidget> +#include <QMediaPlayer> + +namespace Ui { +class MediaPlayer; +} + +class MediaPlayer : public QWidget +{ + Q_OBJECT + +public: + explicit MediaPlayer(QWidget *parent = nullptr); + ~MediaPlayer(); + + void setMedia(QByteArray const & data, QUrl const & ref_url, QString const & mime); + + void stopPlaying(); + +private slots: + void on_playpause_button_clicked(); + + void on_mute_button_clicked(bool checked); + +private: // slots + void on_media_positionChanged(qint64 pos); + + void on_media_playbackChanged(QMediaPlayer::State); + +private: + Ui::MediaPlayer *ui; + QBuffer media_stream; + QString mime; + QMediaPlayer player; +}; + +#endif // MEDIAPLAYER_HPP |
