feat(audio): Add support for audio playback if an audio stream is provided#15
Open
finger563 wants to merge 3 commits into
Open
feat(audio): Add support for audio playback if an audio stream is provided#15finger563 wants to merge 3 commits into
finger563 wants to merge 3 commits into
Conversation
|
✅Static analysis result - no issues found! ✅ |
There was a problem hiding this comment.
Pull request overview
This PR updates the ESP-IDF / component dependencies and extends the RTSP client to optionally play back PCM audio when an audio track is advertised by the server (in addition to the existing MJPEG video display flow).
Changes:
- Updated
dependencies.lock(notably ESP-IDF and multipleespp/*components) and removed the previous config that forced C++ exceptions. - Added RTSP rediscovery/retry flow and RTP port selection, plus audio-track discovery/configuration and PCM playback (BOX/T-DECK only).
- Reduced VRAM row allocation and improved runtime logging/statistics for first-frame and audio status.
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
sdkconfig.defaults |
Removes the forced C++ exceptions setting (aligned with updated dependency requirements). |
main/main.cpp |
Adds RTSP rediscovery + audio playback support and related metrics/logging; adjusts VRAM sizing and display driver offset usage. |
dependencies.lock |
Bumps ESP-IDF and component versions; adds new component entries (e.g., espp/spi). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Comment on lines
+93
to
+98
| static std::pair<size_t, size_t> get_next_rtp_port_pair() { | ||
| static std::atomic<size_t> next_rtp_slot{0}; | ||
| constexpr size_t num_rtp_slots = ((max_rtp_port - min_rtp_port) / 2) + 1; | ||
| size_t rtp_port = min_rtp_port + 2 * (next_rtp_slot.fetch_add(1) % num_rtp_slots); | ||
| return {rtp_port, rtp_port + 1}; | ||
| } |
| return; | ||
| } | ||
|
|
||
| auto channels = std::max(audio_track_it->channels, 1); |
ESP-IDF Size Report for 'Camera Display'
FLASH uses app .bin size or json2 flash sum. RAM sums DRAM+IRAM via idf_size. Percentages shown when totals are available. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Motivation and Context
How has this been tested?
Screenshots (if appropriate, e.g. schematic, board, console logs, lab pictures):
Types of changes
Checklist:
Software
.github/workflows/build.ymlfile to add my new test to the automated cloud build github action.Hardware