nigig-org/crates/apps/streem/crify
2026-07-26 19:38:26 +03:00

44 lines
No EOL
2.4 KiB
Text

Here's a comprehensive summary of what we found from probing Cricfy live:
## Current Playing Stream
**DASH URL:** `https://otte-qw.live.pv-cdn.net/pdx-nitro/live/clients/dash/enc/ajfoeddkbz/out/v1/b78800b9b2304879b15843f455836829/cenc.mpd`
## CDN Infrastructure
- **Domain**: `otte-qw.live.pv-cdn.net` → aliases to `edge.ds-c7158-amazon-prime.global.dns.qwilted-cds.cqloud.com`
- This is **Qwilt CDN** serving **Amazon Prime Video** origin content
- Edge nodes are Liquid Telecom (`77.246.57.x`) in Africa
- Uses **AWS MediaPackage** for live DASH packaging (`X-MediaPackage-*` headers)
## Stream Details
| Quality | Resolution | Bandwidth | Codec |
|---------|-----------|-----------|-------|
| 1 | 1024x576 | 1.6 Mbps | H.264 |
| 2 | 512x288 | 250 Kbps | H.264 |
| 3 | 704x396 | 500 Kbps | H.264 |
| 4 | 960x540 | 1.0 Mbps | H.264 |
| 5 | 1280x720 | 2.2 Mbps | H.264 @60fps |
| 6 | 1280x720 | 4.4 Mbps | H.264 @60fps |
| 7 | 1920x1080 | 6.0 Mbps | H.264 @60fps |
Audio: AAC (128 Kbps) + Dolby Digital Plus (192 Kbps), both English.
## DRM
- **Widevine** + **PlayReady** CENC encryption
- **Amazon** license server (`key-id:9lZOwq7oGQRjKKDhU75XTQ==`)
- PSSH includes Amazon's license acquisition URL
## How They Get Data
- **API Server**: Custom WebSocket protocol on AWS China (`52.81.8.223:5229` - cn-north-1)
- **App Stack**: ExoPlayer/Media3, Room DB (SQLite), DataStore, OkHttp, **NanoHttpd** (local web server), Navigation component
- **Heavy obfuscation**: ProGuard/DexGuard - class/method names are randomized, URL strings are built at runtime
- **Content flow**: App likely fetches channel list via WebSocket from AWS China API → gets channel IDs → constructs DASH URLs using the pattern ``/pdx-nitro/live/clients/dash/enc/{channel_id}/out/v1/{session_id}/cenc.mpd``
- No HLS equivalent exists for this stream (DASH only via DASH)
## For Your App
To integrate similar streaming, you'd need to:
1. Build DASH with CENC support using ExoPlayer/Media3
2. Handle Widevine DRM with Amazon as the license provider
3. The URL pattern is: ``https://otte-qw.live.pv-cdn.net/pdx-nitro/live/clients/dash/enc/{channel_id}/out/v1/{session_id}/cenc.mpd``
The app's actual API endpoints are in obfuscated code + fetched via WebSocket on a non-standard port (5229) to an AWS China server, so the exact API contract isn't visible from static analysis. We'd need to MITM the WebSocket traffic or decompile the DEX with a tool like JADX to reconstruct the API.