use shared ptr for audio device

Prevents deletion before audio output has received stop signal
This commit is contained in:
itsmattkc
2021-09-25 13:29:30 -07:00
parent 845b4a7559
commit 6f3f7e558b
8 changed files with 14 additions and 13 deletions
+2 -2
View File
@@ -94,7 +94,7 @@ void AudioManager::PushToOutput(const QByteArray &samples)
emit OutputPushed(samples);
}
void AudioManager::StartOutput(QIODevice *device, int playback_speed)
void AudioManager::StartOutput(std::shared_ptr<QIODevice> device, int playback_speed)
{
// Move to output manager's thread
device->moveToThread(&output_thread_);
@@ -103,7 +103,7 @@ void AudioManager::StartOutput(QIODevice *device, int playback_speed)
QMetaObject::invokeMethod(output_manager_,
"PullFromDevice",
Qt::QueuedConnection,
Q_ARG(QIODevice*, device),
Q_ARG(std::shared_ptr<QIODevice>, device),
Q_ARG(int, playback_speed));
}