Antigona Release #1

Merged
snt merged 49 commits from filters into main 2024-05-26 12:42:53 +00:00
10 changed files with 58 additions and 54 deletions
Showing only changes of commit 5a7a82736f - Show all commits

View file

@ -24,7 +24,6 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
"color: white;"
"background-color: black;"
);
playback->addWidget(m_fileValue);
playback->setSpacing(0);
playback->setContentsMargins(0, 0, 0, 0);
@ -33,7 +32,7 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
m_suspendResumeButton = new QPushButton(this);
m_suspendResumeButton->setText(StatusStr[Status::Iddle]);
//m_suspendResumeButton->setMaximumWidth(180);
//connect(m_suspendResumeButton, SIGNAL(clicked()), SLOT(toggleSuspendResume()));
connect(m_suspendResumeButton, SIGNAL(clicked()), SLOT(toggleSuspendResume()));
layout->addWidget(m_suspendResumeButton);
m_progress = new QProgressBar(this);
@ -47,19 +46,21 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
m_progressTime = new QTimeEdit;
m_progressTime->setToolTip("Current Time");
m_progressTime->setObjectName("Current Time");
m_progressTime->setDisplayFormat("h:mm:ss:zzz");
m_progressTime->setDisplayFormat("mm:ss:zz");
m_progressTime->setReadOnly(true);
m_progressTime->setButtonSymbols(QAbstractSpinBox::NoButtons);
//m_progressTime->setMaximumWidth(80);
m_progressTime->setMaximumWidth(75);
m_progressTime->setFocusPolicy(Qt::NoFocus);
m_progressTime->setAlignment(Qt::AlignHCenter);
m_totalTimeValue = new QTimeEdit;
m_totalTimeValue->setObjectName("Track Length");
m_totalTimeValue->setToolTip("Track Length");
m_totalTimeValue->setDisplayFormat("h:mm:ss:zzz");
m_totalTimeValue->setDisplayFormat("mm:ss:zz");
m_totalTimeValue->setReadOnly(true);
m_totalTimeValue->setButtonSymbols(QAbstractSpinBox::NoButtons);
//m_totalTimeValue->setMaximumWidth(80);
m_totalTimeValue->setMaximumWidth(75);
m_totalTimeValue->setFocusPolicy(Qt::NoFocus);
m_totalTimeValue->setAlignment(Qt::AlignHCenter);
QHBoxLayout *status = new QHBoxLayout;
status->addWidget(m_progressTime);
status->addWidget(m_totalTimeValue);
@ -67,15 +68,15 @@ AudioLayerWidget::AudioLayerWidget(QWidget *parent, int layer):
QHBoxLayout *volumeBox = new QHBoxLayout;
m_volume = new SliderGroup("Vol", 0 , 100, 2, NULL);
volumeBox->addWidget(m_volume);
connect(m_volume, SIGNAL(valueChanged(float)), this, SLOT(volumeChanged(float)));
connect(m_volume, SIGNAL(valueChanged(int)), this, SLOT(volumeChanged(int)));
m_pan = new SliderGroup("Pan", 0 , 255, 0, NULL);
volumeBox->addWidget(m_pan);
connect(m_pan, SIGNAL(valueChanged(float)), this, SLOT(panChanged(float)));
connect(m_pan, SIGNAL(valueChanged(int)), this, SLOT(panChanged(int)));
m_pitch = new SliderGroup("Pitch", 0 , 255, 0, NULL);
volumeBox->addWidget(m_pitch);
volumeBox->setSpacing(0);
volumeBox->setContentsMargins(0, 0, 0, 0);
connect(m_pitch, SIGNAL(valueChanged(float)), this, SLOT(pitchChanged(float)));
connect(m_pitch, SIGNAL(valueChanged(int)), this, SLOT(pitchChanged(int)));
layout->addLayout(volumeBox);
layout->setAlignment(Qt::AlignHCenter);
layout->setSpacing(0);
@ -89,17 +90,17 @@ AudioLayerWidget::~AudioLayerWidget()
}
// From UI.
void AudioLayerWidget::volumeChanged(float value)
void AudioLayerWidget::volumeChanged(int value)
{
emit(uiSliderChanged(m_layer, Slider::Volume, value));
}
void AudioLayerWidget::panChanged(float value)
void AudioLayerWidget::panChanged(int value)
{
emit(uiSliderChanged(m_layer, Slider::Pan, value));
}
void AudioLayerWidget::pitchChanged(float value)
void AudioLayerWidget::pitchChanged(int value)
{
emit(uiSliderChanged(m_layer, Slider::Pitch, value));
}

View file

@ -39,9 +39,9 @@ private:
public slots:
void toggleSuspendResume();
void volumeChanged(float vol);
void panChanged(float pan);
void pitchChanged(float pitch);
void volumeChanged(int vol);
void panChanged(int pan);
void pitchChanged(int pitch);
void fileLoaded(QString file);
void durationChanged(float dur);
void refreshUi(float progress);

View file

@ -1,17 +1,18 @@
#include "audiowidget.h"
AudioWidget::AudioWidget() :
m_layout(new QHBoxLayout())
AudioWidget::AudioWidget(QWidget *parent) :
QWidget(parent)
, m_layout(new QHBoxLayout())
{
for (int i= 0; i < Settings::getInstance()->getLayersNumber(); i++ ) {
AudioLayerWidget *alw = new AudioLayerWidget(this, i);
m_layout->insertWidget(i, alw);
connect(alw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SLOT(uiSliderAction(int, Slider, int)));
connect(alw, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiChangePlaybackStatus(int, Status)));
connect(alw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SIGNAL(uiSliderChanged(int, Slider, int)));
connect(alw, SIGNAL(uiPlaybackChanged(int, Status)), this, SIGNAL(uiPlaybackChanged(int, Status)));
}
m_layout->setSpacing(0);
m_layout->setContentsMargins(0, 0, 0, 0);
m_layout->setContentsMargins(1, 1, 1, 1);
setLayout(m_layout);
}
@ -49,22 +50,12 @@ void AudioWidget::cursorChanged(int layer, float cursor)
AudioLayerWidget *alw = dynamic_cast<AudioLayerWidget *>(item->widget());
alw->refreshUi(cursor);
}
void AudioWidget::uiSliderAction(int layer, Slider s, int value)
/*
void AudioWidget::uiSliderAction(int layer, Slider s, float value)
{
switch (s){
case Slider::Volume:
emit uiVolChanged(layer, value);
break;
case Slider::Pan:
emit uiPanChanged(layer, value);
break;
case Slider::Pitch:
emit uiPitchChanged(layer, value);
break;
}
emit uiSliderChanged(layer, s, value);
}
void AudioWidget::uiChangePlaybackStatus(int layer, Status s) {
emit uiPlaybackChanged(layer, s);
}
}*/

View file

@ -13,7 +13,7 @@ class AudioWidget : public QWidget
Q_OBJECT
public:
AudioWidget();
AudioWidget(QWidget *parent = nullptr);
void mediaLoaded(int layer, QString media, float duration);
void volChanged(int layer, float vol);
void panChanged(int layer, int pan);
@ -21,18 +21,14 @@ public:
void playbackChanged(int layer, Status status);
void cursorChanged(int layer, float cursor);
QHBoxLayout *m_layout;
/*
public slots:
void uiSliderAction(int layer, Slider s, int value);
void uiSliderAction(int layer, Slider s, float value);
void uiChangePlaybackStatus(int layer, Status s);
*/
signals:
void uiMediaLoaded(int layer, QString media );
void uiVolChanged(int layer, float vol);
void uiPanChanged(int layer, int pan);
void uiPitchChanged(int layer, int pitch);
void uiPlaybackChanged(int layer, Status status);
void uiEntryPointChanged(int layer, int cursor);
void uiPlaybackChanged(int layer, Status s);
void uiSliderChanged(int layer, Slider s, int vol);
};
#endif // AUDIOWIDGET_H

View file

@ -26,7 +26,7 @@ libreMediaServerAudioUi::libreMediaServerAudioUi(QWidget *parent)
{
ui.setupUi(this);
this->setWindowTitle(VERSION);
m_aw = new AudioWidget;
m_aw = new AudioWidget(this);
setCentralWidget(m_aw);
m_dmxWidget = new dmxWidget(this);
QDockWidget *topWidget = new QDockWidget(tr("Master"), this);

View file

@ -134,6 +134,28 @@ void libreMediaServerAudio::setUi(libreMediaServerAudioUi *lmsUi)
{
m_lmsUi = lmsUi;
connect(m_ola, SIGNAL(universeReceived(int)), m_lmsUi->m_dmxWidget, SLOT(updateWatchDMX(int)));
connect(m_lmsUi->m_aw, SIGNAL(uiSliderChanged(int, Slider, int)), this, SLOT(uiSliderChanged(int, Slider, int)));
connect(m_lmsUi->m_aw, SIGNAL(uiPlaybackChanged(int, Status)), this, SLOT(uiPlaybackChanged(int, Status)));
};
void libreMediaServerAudio::uiSliderChanged(int layer, Slider s, int value)
{
switch (s){
case Slider::Volume:
m_mae.volChanged(layer, float((value / 100.0f)));
break;
case Slider::Pan:
m_mae.panChanged(layer, value);
break;
case Slider::Pitch:
m_mae.pitchChanged(layer, value);
break;
}
}
void libreMediaServerAudio::uiPlaybackChanged(int layer, Status s)
{
m_mae.playbackChanged(layer, s);
}
#endif

View file

@ -54,6 +54,8 @@ private slots:
void dmxInput(int layer, int channel, int value);
#ifndef NOGUI
void refreshUi();
void uiSliderChanged(int layer, Slider s, int value);
void uiPlaybackChanged(int layer, Status s);
#endif
};

View file

@ -27,12 +27,6 @@ class MediaLibrary : public QObject
public:
MediaLibrary(QObject *parent = 0);
/**
* @brief request a new file from the media library
* @param int folder - the folder required
* @param int layer - file required
* @return QString the file required with full path
*/
QString requestNewFile(int folder, int layer);
void initMediaLibrary();

View file

@ -52,8 +52,6 @@ SliderGroup::SliderGroup(QString name,
void SliderGroup::sliderValueChanged(int value)
{
valueBox->setValue(value);
if (valueBox->decimals() > 1)
value /= 100.0f;
emit valueChanged(value);
};

View file

@ -18,7 +18,7 @@ public:
QWidget *parent = nullptr);
signals:
void valueChanged(float value);
void valueChanged(int value);
public slots:
void setValue(float value);