summaryrefslogtreecommitdiff
path: root/src/tangara/audio/processor.cpp
AgeCommit message (Collapse)Author
2025-04-14move SampleProcessor buffers to external RAMBe
This increases CPU usage by ~2% for the audio_conv task, which I think is an acceptable tradeoff. The Speex resampler still makes its own allocations in internal RAM.
2024-09-11Play TTS files in response to TTS prompts, but it's legible nowjacqueline
- input files are upsamples and padded to stereo before playback - any in-progress playback is cancelled before playing a new file
2024-08-28Some minor cleanup, docs, assertionsjacqueline
2024-08-28Timeout when writing output samples throughout the audio pipelinejacqueline
This allows the audio pipeline to remain responsive even when the drain buffer has completely filled. This in turn means that you now see the track info in the 'now playing' screen change if the current track changes whilst you are paused. Since I was fucking around a lot in the audio processor anyway, I also added mono->stereo expansion so that playing mono tracks on Bluetooth no longer destroys your ears.
2024-05-31Introduce a PcmBuffer abstraction for handling source drainingjacqueline
2024-05-08Count samples going in and out of the drain bufferjacqueline
This is a more accurate way of knowing which track is playing when, and also simplifies a lot of fragile logic in audio_fsm
2024-05-07Improve decoder's interface to accept streamsjacqueline