diff --git a/src/plugins/server/TranscodingAudioDataStream.cpp b/src/plugins/server/TranscodingAudioDataStream.cpp index 5e6491b6b..338f91709 100644 --- a/src/plugins/server/TranscodingAudioDataStream.cpp +++ b/src/plugins/server/TranscodingAudioDataStream.cpp @@ -59,7 +59,6 @@ TranscodingAudioDataStream::TranscodingAudioDataStream( this->bitrate = bitrate; this->interrupted = false; this->eof = false; - this->encoder = nullptr; this->outFile = nullptr; this->detachTolerance = 0; this->format = format; @@ -196,10 +195,10 @@ PositionType TranscodingAudioDataStream::Read(void *buffer, PositionType bytesTo bool hasBuffer = false; /* init */ - if (this->decoder && !this->encoder) { + if (!this->encoderInitialized) { hasBuffer = this->decoder->GetBuffer(this->pcmBuffer); if (hasBuffer) { - this->encoder->Initialize( + this->encoderInitialized = this->encoder->Initialize( this->pcmBuffer->SampleRate(), this->pcmBuffer->Channels(), this->bitrate); diff --git a/src/plugins/server/TranscodingAudioDataStream.h b/src/plugins/server/TranscodingAudioDataStream.h index a3a17a02e..bd5e93059 100644 --- a/src/plugins/server/TranscodingAudioDataStream.h +++ b/src/plugins/server/TranscodingAudioDataStream.h @@ -98,6 +98,6 @@ class TranscodingAudioDataStream : public musik::core::sdk::IDataStream { FILE* outFile; std::string tempFilename, finalFilename; std::string format; - bool interrupted; + bool interrupted{ false }, encoderInitialized{ false }; long detachTolerance; }; \ No newline at end of file