diff options
| author | Christophe Besson <cbesson@gmail.com> | 2026-10-02 08:39:56 +0200 |
|---|---|---|
| committer | Christophe Besson <cbesson@gmail.com> | 2026-10-02 08:39:56 +0200 |
| commit | e941cc4c39c38a12220153ea572bd4c7bb92fde0 (patch) | |
| tree | b7a0c1f04eb642f4aa050508b3e24bb4cf66a67a /docs/MESHBAY_DESIGN.md | |
| parent | fee265e0046e85c3db0e5bb9608b666d2e9547ab (diff) | |
| download | meshbay-e941cc4c39c38a12220153ea572bd4c7bb92fde0.tar.gz | |
feat(client): list cast receivers as they answer
The scan still runs six seconds, but the picker polls what it has found
and shows each receiver immediately. A rescan no longer has its timer
cut short by the scan it replaced.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'docs/MESHBAY_DESIGN.md')
| -rw-r--r-- | docs/MESHBAY_DESIGN.md | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/docs/MESHBAY_DESIGN.md b/docs/MESHBAY_DESIGN.md index 2419916..eec354a 100644 --- a/docs/MESHBAY_DESIGN.md +++ b/docs/MESHBAY_DESIGN.md @@ -3352,6 +3352,13 @@ any LAN renderer can play; the relay is device-agnostic. Chromecast discovery an control ship. DLNA/UPnP is designed and not built: it is a second device backend beside the first, not a second relay. +**Discovery lists receivers as they answer.** The mDNS scan runs six seconds, +because a receiver coming back from a reset can take that long, but most answer +within two. The main process holds what the scan has found and the page polls it +(`cast:scan`, then `cast:devices`) for as long as the picker is open, rather than +waiting on one call for the whole scan; a poll uses the same checked `handle()` +door as every other call, where a pushed event would be a second one. + **Subtitles are rebased onto the relay's clock before they are sent.** The node extracts a track whole, so its cues carry the film's timeline, and the player can use them unchanged because its SourceBuffer is given `timestampOffset = |