From d682924b0053458b2753c889d22d1ebf4f9c4357 Mon Sep 17 00:00:00 2001 From: David Rowe Date: Tue, 25 Apr 2017 21:08:10 +1200 Subject: [PATCH] Temporary fix for recording audio --- interface/src/Application.cpp | 10 ++++++++++ libraries/audio-client/src/AudioClient.cpp | 1 + libraries/audio-client/src/AudioClient.h | 1 + 3 files changed, 12 insertions(+) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index fbf28a8d99..c48f42df23 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -747,6 +747,8 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo audioIO->handleRecordedAudioInput(frame->data); }); + // FIXME + /* connect(audioIO.data(), &AudioClient::inputReceived, [](const QByteArray& audio){ static auto recorder = DependencyManager::get(); if (recorder->isRecording()) { @@ -754,6 +756,14 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo recorder->recordFrame(AUDIO_FRAME_TYPE, audio); } }); + */ + connect(audioIO.data(), &AudioClient::inputReceivedBytes, [](const QByteArray audio){ + static auto recorder = DependencyManager::get(); + if (recorder->isRecording()) { + static const recording::FrameType AUDIO_FRAME_TYPE = recording::Frame::registerFrameType(AudioConstants::getAudioFrameName()); + recorder->recordFrame(AUDIO_FRAME_TYPE, audio); + } + }); auto audioScriptingInterface = DependencyManager::set(); connect(audioThread, &QThread::started, audioIO.data(), &AudioClient::start); diff --git a/libraries/audio-client/src/AudioClient.cpp b/libraries/audio-client/src/AudioClient.cpp index 4a2de0a64b..b6a404627e 100644 --- a/libraries/audio-client/src/AudioClient.cpp +++ b/libraries/audio-client/src/AudioClient.cpp @@ -1007,6 +1007,7 @@ void AudioClient::handleAudioInput(QByteArray& audioBuffer) { } emit inputReceived({ audioBuffer.data(), numSamples }); + emit inputReceivedBytes(audioBuffer); // FIXME if (_noiseGate.openedInLastBlock()) { emit noiseGateOpened(); diff --git a/libraries/audio-client/src/AudioClient.h b/libraries/audio-client/src/AudioClient.h index 139749e8e8..9ccf311920 100644 --- a/libraries/audio-client/src/AudioClient.h +++ b/libraries/audio-client/src/AudioClient.h @@ -225,6 +225,7 @@ signals: bool muteToggled(); void mutedByMixer(); void inputReceived(const QByteArray& inputSamples); + void inputReceivedBytes(const QByteArray inputSamples); void outputBytesToNetwork(int numBytes); void inputBytesFromNetwork(int numBytes); void noiseGateOpened();