mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-30 11:55:35 +08:00
Ref T730, stop input/output if object is destroyed
This commit is contained in:
committed by
Mat Sutcliffe
parent
5eb3dee829
commit
e560be65a6
@@ -125,11 +125,9 @@ namespace BlackCore
|
||||
|
||||
void CInput::stop()
|
||||
{
|
||||
if (! m_started) { return; }
|
||||
|
||||
if (!m_started) { return; }
|
||||
m_started = false;
|
||||
|
||||
m_audioInput->stop();
|
||||
if (m_audioInput) { m_audioInput->stop(); }
|
||||
m_audioInput.reset();
|
||||
}
|
||||
|
||||
|
||||
@@ -85,6 +85,12 @@ namespace BlackCore
|
||||
//! Ctor
|
||||
CInput(int sampleRate, QObject *parent = nullptr);
|
||||
|
||||
//! Dtor
|
||||
virtual ~CInput() override
|
||||
{
|
||||
this->stop();
|
||||
}
|
||||
|
||||
int opusBytesEncoded() const { return m_opusBytesEncoded; }
|
||||
void setOpusBytesEncoded(int opusBytesEncoded) { m_opusBytesEncoded = opusBytesEncoded; }
|
||||
|
||||
|
||||
@@ -32,6 +32,7 @@ namespace BlackCore
|
||||
double PeakVU = 0.0;
|
||||
};
|
||||
|
||||
//! Output buffer
|
||||
class CAudioOutputBuffer : public QIODevice
|
||||
{
|
||||
Q_OBJECT
|
||||
@@ -71,6 +72,12 @@ namespace BlackCore
|
||||
//! Ctor
|
||||
Output(QObject *parent = nullptr);
|
||||
|
||||
//! Dtor
|
||||
virtual ~Output() override
|
||||
{
|
||||
this->stop();
|
||||
}
|
||||
|
||||
//! Start output
|
||||
void start(const QAudioDeviceInfo &outputDevice, BlackSound::SampleProvider::ISampleProvider *sampleProvider);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user