mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2025-12-17 03:44:22 +03:00
update CSpot
This commit is contained in:
@@ -77,7 +77,7 @@ void ChunkedAudioStream::seekMs(uint32_t positionMs)
|
||||
CSPOT_LOG(debug, "--- Finished seeking!");
|
||||
}
|
||||
|
||||
void ChunkedAudioStream::startPlaybackLoop()
|
||||
void ChunkedAudioStream::startPlaybackLoop(uint8_t *pcmOut, size_t pcmOut_len)
|
||||
{
|
||||
|
||||
isRunning = true;
|
||||
@@ -91,7 +91,6 @@ void ChunkedAudioStream::startPlaybackLoop()
|
||||
}
|
||||
|
||||
bool eof = false;
|
||||
std::vector<uint8_t> pcmOut(4096 / 4);
|
||||
byteStream->setEnableLoadAhead(true);
|
||||
|
||||
while (!eof && isRunning)
|
||||
@@ -100,7 +99,7 @@ void ChunkedAudioStream::startPlaybackLoop()
|
||||
{
|
||||
|
||||
this->seekMutex.lock();
|
||||
long ret = ov_read(&vorbisFile, (char *)&pcmOut[0], 4096 / 4, ¤tSection);
|
||||
long ret = ov_read(&vorbisFile, (char *)&pcmOut[0], pcmOut_len, ¤tSection);
|
||||
this->seekMutex.unlock();
|
||||
if (ret == 0)
|
||||
{
|
||||
@@ -117,8 +116,7 @@ void ChunkedAudioStream::startPlaybackLoop()
|
||||
else
|
||||
{
|
||||
// Write the actual data
|
||||
auto data = std::vector<uint8_t>(pcmOut.begin(), pcmOut.begin() + ret);
|
||||
pcmCallback(data);
|
||||
pcmCallback(pcmOut, ret);
|
||||
// audioSink->feedPCMFrames(data);
|
||||
}
|
||||
}
|
||||
@@ -170,4 +168,4 @@ void ChunkedAudioStream::seek(size_t dpos, Whence whence)
|
||||
break;
|
||||
}
|
||||
byteStream->seek(seekPos);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user