Realized during M6 packaging that the rustypipe path returns separate audio + video DASH streams (Opus 251 + AV1 401 on the smoke video). Kodi can't sync those without an inputstream.adaptive DASH manifest, which would need server-side manifest generation — M3+ territory. Stopgap for shippable M3: new sidecar op resolve_play that asks yt-dlp for -f best[ext=mp4]/best — one combined audio+video URL Kodi plays as plain HTTP. ~3-5s overhead vs rustypipe but reliable sync. main.py _play() now calls resolve_play. resolve still exists for metadata + browse paths (M4 will use it). Rebuilt aarch64-musl binary, repackaged plugin.video.torttube-0.0.1.zip (38.7MB, md5 f2c08aed130b1c1bd231a9b6cbfac93c). Live at: smb://lucy/downloads/torttube/plugin.video.torttube-0.0.1.zip |
||
|---|---|---|
| .. | ||
| crates/torttube-sidecar | ||
| Cargo.toml | ||