add native debrid stream playback

This commit is contained in:
dirtydishes 2026-05-24 23:20:32 -04:00
parent 3df2e2b833
commit d28540ce98
12 changed files with 936 additions and 62 deletions

View file

@ -7,28 +7,41 @@ inside a UIKit host app, handles new-window navigation in the existing web view,
allows inline media playback, and leaves playback viability to real-device
testing.
## Running the MVP
## Running Dreamio
1. Open `Dreamio.xcodeproj` in Xcode.
2. Select the `Dreamio` scheme.
3. Pick a real iPhone or iPad device.
4. Set a development team for code signing if Xcode asks.
5. Build and run.
1. Install CocoaPods if needed.
2. Run `pod install`.
3. Open `Dreamio.xcworkspace` in Xcode.
4. Select the `Dreamio` scheme.
5. Pick a real iPhone or iPad device.
6. Set a development team for code signing if Xcode asks.
7. Build and run.
Dreamio uses MobileVLCKit for native playback of direct-file streams that iOS
WebKit commonly cannot play, especially MKV, AVI, and WebM debrid URLs. Keep
using `Dreamio.xcworkspace` after installing pods so Xcode links the native
playback backend.
## Validation Notes
The repository machine currently has Command Line Tools selected instead of full
Xcode, so command-line `xcodebuild` validation is not available here.
Xcode, and CocoaPods is not installed, so command-line `pod install` and
`xcodebuild` validation are not available here.
## MVP Validation Checklist
## Playback Validation Checklist
- Cold launch loads hosted Stremio Web.
- Login completes and persists after app relaunch.
- Catalog and library navigation work.
- Addon install or configuration flows work, including redirects or popups.
- HLS direct stream playback works.
- MP4 direct stream playback works.
- Unsupported formats fail understandably.
- Fullscreen, rotation, pause/resume, and background/foreground behavior are
acceptable for v1.
1. Cold launch loads hosted Stremio Web.
2. Login completes and persists after app relaunch.
3. Catalog and library navigation work.
4. Addon install or configuration flows work, including redirects or popups.
5. HLS direct stream playback works.
6. MP4 direct stream playback works.
7. Debridio, Torrentio, and Real-Debrid MKV/AVI/WebM direct-file streams open
the native player before WebKit reaches its visible media failure state.
8. Closing the native player returns to the existing Stremio Web session.
9. DEBUG logs show sanitized stream classification and native player errors
without full debrid URLs, query strings, tokens, or long secret-like path
segments.
Track playback results by device, iOS version, stream protocol, container,
codec, subtitle type, HTTP status, and WebKit media error when available.