#ifndef AUDIOWIDGET_H #define AUDIOWIDGET_H #include #include #include #include "dmxwidget.h" #include "audiolayerwidget.h" #include "settings.h" #include "miniaudioengine.h" #include "defines.h" class AudioWidget : public QWidget { friend class libreMediaServerAudio; friend class AudioLayerWidget; Q_OBJECT public: AudioWidget(); bool startEngine(); bool startEngine(int id); void stopEngine(); protected: void mediaLoaded(int layer, QString media ); void volChanged(int layer, qreal vol); void panChanged(int layer, qreal pan); void pitchChanged(int layer, qreal pitch); void playbackChanged(int layer, Status status); void entryPointChanged(int layer, int cursor); private: MiniAudioEngine m_mae; QString m_currentMedia[MAX_LAYERS]; QHBoxLayout *m_layout; QTimer *m_refreshUi; public slots: void uiSliderAction(int layer, Slider s, int value); void uiChangePlaybackStatus(int layer, Status s); private slots: void refreshUi(); }; #endif // AUDIOWIDGET_H