Revert last commit
This commit is contained in:
parent
18fa86b532
commit
f9692b76a1
@ -55,7 +55,6 @@ private:
|
|||||||
SequentialBuffer audioBuffer_;
|
SequentialBuffer audioBuffer_;
|
||||||
std::unique_ptr<RtAudio> dac_;
|
std::unique_ptr<RtAudio> dac_;
|
||||||
std::mutex mutex_;
|
std::mutex mutex_;
|
||||||
bool playbackRequested_;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,6 @@ RtAudioOutput::RtAudioOutput(uint32_t channelCount, uint32_t sampleSize, uint32_
|
|||||||
: channelCount_(channelCount)
|
: channelCount_(channelCount)
|
||||||
, sampleSize_(sampleSize)
|
, sampleSize_(sampleSize)
|
||||||
, sampleRate_(sampleRate)
|
, sampleRate_(sampleRate)
|
||||||
, playbackRequested_(false)
|
|
||||||
{
|
{
|
||||||
std::vector<RtAudio::Api> apis;
|
std::vector<RtAudio::Api> apis;
|
||||||
RtAudio::getCompiledApi(apis);
|
RtAudio::getCompiledApi(apis);
|
||||||
@ -55,7 +54,7 @@ bool RtAudioOutput::open()
|
|||||||
RtAudio::StreamOptions streamOptions;
|
RtAudio::StreamOptions streamOptions;
|
||||||
streamOptions.numberOfBuffers = 1;
|
streamOptions.numberOfBuffers = 1;
|
||||||
streamOptions.flags = RTAUDIO_MINIMIZE_LATENCY | RTAUDIO_SCHEDULE_REALTIME;
|
streamOptions.flags = RTAUDIO_MINIMIZE_LATENCY | RTAUDIO_SCHEDULE_REALTIME;
|
||||||
uint32_t bufferFrames = 256;
|
uint32_t bufferFrames = 64;
|
||||||
dac_->openStream(¶meters, nullptr, RTAUDIO_SINT16, sampleRate_, &bufferFrames, &RtAudioOutput::audioBufferReadHandler, static_cast<void*>(this), &streamOptions);
|
dac_->openStream(¶meters, nullptr, RTAUDIO_SINT16, sampleRate_, &bufferFrames, &RtAudioOutput::audioBufferReadHandler, static_cast<void*>(this), &streamOptions);
|
||||||
return audioBuffer_.open(QIODevice::ReadWrite);
|
return audioBuffer_.open(QIODevice::ReadWrite);
|
||||||
}
|
}
|
||||||
@ -75,10 +74,13 @@ bool RtAudioOutput::open()
|
|||||||
void RtAudioOutput::write(const aasdk::common::DataConstBuffer& buffer)
|
void RtAudioOutput::write(const aasdk::common::DataConstBuffer& buffer)
|
||||||
{
|
{
|
||||||
audioBuffer_.write(reinterpret_cast<const char*>(buffer.cdata), buffer.size);
|
audioBuffer_.write(reinterpret_cast<const char*>(buffer.cdata), buffer.size);
|
||||||
|
}
|
||||||
|
|
||||||
|
void RtAudioOutput::start()
|
||||||
|
{
|
||||||
std::lock_guard<decltype(mutex_)> lock(mutex_);
|
std::lock_guard<decltype(mutex_)> lock(mutex_);
|
||||||
|
|
||||||
if(playbackRequested_ && dac_->isStreamOpen() && !dac_->isStreamRunning())
|
if(dac_->isStreamOpen() && !dac_->isStreamRunning())
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@ -89,15 +91,6 @@ void RtAudioOutput::write(const aasdk::common::DataConstBuffer& buffer)
|
|||||||
OPENAUTO_LOG(error) << "[RtAudioOutput] Failed to start audio output, what: " << e.what();
|
OPENAUTO_LOG(error) << "[RtAudioOutput] Failed to start audio output, what: " << e.what();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
playbackRequested_ = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
void RtAudioOutput::start()
|
|
||||||
{
|
|
||||||
std::lock_guard<decltype(mutex_)> lock(mutex_);
|
|
||||||
|
|
||||||
playbackRequested_ = true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void RtAudioOutput::stop()
|
void RtAudioOutput::stop()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user