diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-04-20 21:25:22 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-04-20 21:25:22 +1000 |
| commit | 27c63ebb957aa5b942939aea33431ac50d101a26 (patch) | |
| tree | f2777a34195865b30cb5de1b99eb3118f72440e0 /src/audio/audio_task.cpp | |
| parent | 2d95b637272f15ba2d74abc2371d708a08407d91 (diff) | |
| download | tangara-fw-27c63ebb957aa5b942939aea33431ac50d101a26.tar.gz | |
Switch to an MVP-ready 16bit three wire DAC setup
Diffstat (limited to 'src/audio/audio_task.cpp')
| -rw-r--r-- | src/audio/audio_task.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/audio/audio_task.cpp b/src/audio/audio_task.cpp index 45db0b60..07f49085 100644 --- a/src/audio/audio_task.cpp +++ b/src/audio/audio_task.cpp @@ -37,15 +37,14 @@ namespace task { static const char* kTag = "task"; static const std::size_t kStackSize = 24 * 1024; static const std::size_t kDrainStackSize = 1024; -static const uint8_t kAudioCore = 0; auto StartPipeline(Pipeline* pipeline, IAudioSink* sink) -> void { // Newly created task will free this. AudioTaskArgs* args = new AudioTaskArgs{.pipeline = pipeline, .sink = sink}; ESP_LOGI(kTag, "starting audio pipeline task"); - xTaskCreatePinnedToCore(&AudioTaskMain, "pipeline", kStackSize, args, - kTaskPriorityAudioPipeline, NULL, kAudioCore); + xTaskCreate(&AudioTaskMain, "pipeline", kStackSize, args, + kTaskPriorityAudioPipeline, NULL); } auto StartDrain(IAudioSink* sink) -> void { @@ -151,6 +150,13 @@ void AudioTaskMain(void* args) { std::size_t sent = xStreamBufferSend( sink->buffer(), sink_stream.data().data(), sink_stream.data().size_bytes(), pdMS_TO_TICKS(10)); + if (sent > 0) { + ESP_LOGI(kTag, "sunk %u bytes out of %u (%d %%)", sent, + sink_stream.info().bytes_in_stream, + (int)(((float)sent / + (float)sink_stream.info().bytes_in_stream) * + 100)); + } sink_stream.consume(sent); } |
