mirror of https://github.com/synctv-org/synctv
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
## Summary - Treat explicit null collection fields in Bilibili VOD playback responses as empty collections. - Cover DASH streams, backup URLs, Dolby audio, supported formats, DURL responses, subtitles, video pages, UGC collections, and PGC episodes. - Resolve Bilibili DASH resources from versioned playback metadata and provide every equivalent CDN URL to the existing candidate executor. - Prefer the URL selected by the player, then retry primary and backup CDNs before committing the downstream response. ## Root cause Bilibili occasionally emits explicit null for fields normally represented as JSON arrays, which caused playback/start deserialization errors. Proxy DASH resource requests also used a single CDN even though the provider response included backup URLs. ## Validation - cargo fmt --all -- --check - cargo check for synctv-api-common, synctv-api-http, and synctv-api-grpc - synctv-media-providers Bilibili tests: 91 passed - synctv-core Bilibili tests: 17 passed, 2 ignored - candidate executor tests: 2 passed - Real playback/start, proxy MPD, Range request, CDN fault injection, dev build, and dev smoke checks |
1 month ago | |
|---|---|---|
| .. | ||
| benches | 2 months ago | |
| src | 1 month ago | |
| testing | 1 month ago | |
| tests | 1 month ago | |
| Cargo.toml | 2 months ago | |