Simplified interface, optim to read directly from the resampler if enough samples are available

This commit is contained in:
emeric
2026-02-17 23:15:44 +01:00
parent e0f1e4a1ec
commit 6742c99ed8
5 changed files with 80 additions and 30 deletions
+4 -1
View File
@@ -35,10 +35,13 @@ namespace lms::audio::ffmpeg
PcmDecoder& operator=(const PcmDecoder&) = delete;
private:
std::size_t readSamples(std::span<WritableBuffer> outputChannelBuffers, std::size_t maxSamplesPerChannel) override;
std::size_t readSamples(std::span<WritableBuffer> outputChannelBuffers) override;
bool finished() const override;
std::size_t computeSampleCountPerChannel(std::span<WritableBuffer> outputChannelBuffers) const;
void feedDecoder();
std::size_t drainResampler(std::span<WritableBuffer> outputChannelBuffers, std::size_t maxSamplesPerChannel);
std::size_t getEstimatedResamplerAvailableSamples() const;
const PcmDecoderParameters _parameters;