Black-screen-on-play bug: rustypipe's default player() uses YT's Web client, which serves stream URLs that are session/UA-locked. ExoPlayer fetching with a different UA gets a silent 403 from googlevideo and renders a black surface. Fix: pin stream_info() to player_from_clients(id, [Tv, Ios]) — the TVHTML5 + iOS Innertube clients serve direct-play URLs that work in any HTTP player. Same trick NewPipe uses. No Apple/iOS code involved — it's just the API client identifier rustypipe sends to YT. Also added a Player.Listener in PlayerScreen that Toasts any PlaybackException (codeName + message) so future stream failures don't look like silent black screens. Logs to logcat 'StrawPlayer' too. |
||
|---|---|---|
| .. | ||
| src | ||
| build.rs | ||
| Cargo.toml | ||