mirror of
https://github.com/badaix/snapcast.git
synced 2025-06-12 15:51:45 +02:00
Opus encoder resamples to 48000:16:2
This commit is contained in:
parent
199c30b69d
commit
2d88ee85cd
13 changed files with 367 additions and 174 deletions
|
@ -58,6 +58,19 @@ public:
|
|||
}
|
||||
#endif
|
||||
|
||||
// std::unique_ptr<PcmChunk> consume(uint32_t frameCount)
|
||||
// {
|
||||
// auto result = std::make_unique<PcmChunk>(format, 0);
|
||||
// if (frameCount * format.frameSize() > payloadSize)
|
||||
// frameCount = payloadSize / format.frameSize();
|
||||
// result->payload = payload;
|
||||
// result->payloadSize = frameCount * format.frameSize();
|
||||
// payloadSize -= result->payloadSize;
|
||||
// payload = (char*)realloc(payload + result->payloadSize, payloadSize);
|
||||
// // payload += result->payloadSize;
|
||||
// return result;
|
||||
// }
|
||||
|
||||
int readFrames(void* outputBuffer, uint32_t frameCount)
|
||||
{
|
||||
// logd << "read: " << frameCount << ", total: " << (wireChunk->length / format.frameSize()) << ", idx: " << idx;// << std::endl;
|
||||
|
@ -87,7 +100,6 @@ public:
|
|||
return idx_;
|
||||
}
|
||||
|
||||
|
||||
chronos::time_point_clk start() const override
|
||||
{
|
||||
return chronos::time_point_clk(chronos::sec(timestamp.sec) + chronos::usec(timestamp.usec) +
|
||||
|
@ -105,6 +117,14 @@ public:
|
|||
return std::chrono::duration_cast<T>(chronos::nsec(static_cast<chronos::nsec::rep>(1000000 * getFrameCount() / format.msRate())));
|
||||
}
|
||||
|
||||
// void append(const PcmChunk& chunk)
|
||||
// {
|
||||
// auto newSize = payloadSize + chunk.payloadSize;
|
||||
// payload = (char*)realloc(payload, newSize);
|
||||
// memcpy(payload + payloadSize, chunk.payload, chunk.payloadSize);
|
||||
// payloadSize = newSize;
|
||||
// }
|
||||
|
||||
double durationMs() const
|
||||
{
|
||||
return static_cast<double>(getFrameCount()) / format.msRate();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue