2026-06-16 00:28:31 +08:00
# O11 Pro Cracked – Unpacked Version
2026-06-15 18:44:59 +08:00
**O11 Pro** is a streaming media server capable of proxying, remuxing, and redistributing IPTV/OTT live and VOD streams. It features a built-in web UI, EPG support, HLS/DASH handling, and DRM decryption via CDM integration.
2026-06-16 00:28:31 +08:00
2026-06-15 18:44:59 +08:00
---
2026-06-15 19:32:41 +08:00
## Further Reading
2026-06-16 00:28:31 +08:00
| Document | Description |
| ---------------------------------- | ------------------------------------------------------------------------------------------------------- |
2026-06-16 00:45:53 +08:00
| [DISCLAIMER ](docs/DISCLAIMER.MD ) | To avoid misunderstandings, here are some things to know about this release |
| [API ](docs/API.md ) | Complete REST API reference: endpoints, methods, and authentication details |
| [WSL ](docs/WSL.md ) | Complete WSL setup guide |
| [RE ](docs/RE.md ) | Reverse engineering notes: frontend deobfuscation analysis, Vue component map, config schema, and TODOs |
2026-06-15 19:32:41 +08:00
---
2026-06-15 18:44:59 +08:00
## Quick Start
```bash
# Minimum: just set a port
./o11pro_unpacked -p 8080
# With web UI login credentials
./o11pro_unpacked -p 8080 -user admin -password yourpassword
# Headless mode (no web UI)
./o11pro_unpacked -p 8080 -headless
# With separate EPG and streaming ports
./o11pro_unpacked -p 8080 -epgport 8081 -streamport 8082
# Debug mode
./o11pro_unpacked -p 8080 -v 3 -stdout
```
When started without `-user` and `-password` , a temporary admin account is auto-generated and printed to the log:
```
WARN: Use temporary account to login to Web UI: admin / OtoN4Fx0
```
Open `http://<your-ip>:<port>` in a browser to access the web interface.
---
## Command-Line Options
### Server & Network
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ------------- | ----------------------------------------------------- | ----------------- |
| `-p` | HTTP port to listen on (required) | `0` (must be set) |
| `-b` | HTTP bind address | `0.0.0.0` |
| `-https` | Enable HTTPS (requires `server.crt` and `server.key` ) | `false` |
| `-baseurl` | HTTP base URL for reverse proxy setups | *(empty)* |
| `-streamport` | Dedicated streaming port (0 = same as HTTP port) | `0` |
| `-streambind` | Streaming bind address | `0.0.0.0` |
| `-epgport` | EPG (Electronic Program Guide) port | `0` |
| `-epgbind` | EPG bind address | `0.0.0.0` |
| `-allow` | Comma-separated IP whitelist for no-auth admin access | *(empty)* |
---
2026-06-15 18:44:59 +08:00
### Authentication & Security
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ------------ | ----------------------- | ---------------------------------- |
| `-user` | Static admin username | *(empty – temp account generated)* |
| `-password` | Static admin password | *(empty – temp account generated)* |
| `-jwtsecret` | JWT secret for sessions | *(random)* |
---
2026-06-15 18:44:59 +08:00
### Configuration & Files
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ------------ | ---------------------- | ----------------- |
| `-c` | Main config file path | `o11.cfg` |
| `-job` | Jobs config file | `o11-job.cfg` |
| `-rec` | Recordings config file | `o11-rec.cfg` |
| `-path` | Working directory | current directory |
| `-providers` | Providers directory | `providers/` |
| `-keys` | KID:KEY fallback file | `keys.txt` |
| `-f` | FFmpeg binary path | `ffmpeg` |
| `-tsplay` | Tsplay binary path | `tsplay` |
---
2026-06-15 18:44:59 +08:00
### Logging
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ---------------- | --------------------------------- | --------- |
| `-v` | Log level (0– 5) | `2` |
| `-stdout` | Output logs to stdout | `false` |
| `-logsize` | Max log size (MB) | `100` |
| `-logscount` | Log rotation count | `7` |
| `-logtomain` | Send stream logs to main log | `false` |
| `-logtomainonly` | Only main log output | `false` |
| `-V` | Enable module-specific debug logs | *(empty)* |
---
2026-06-15 18:44:59 +08:00
### Runtime Behavior
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ---------------- | ------------------------------- | --------- |
| `-headless` | Run without web UI | `false` |
| `-noautostart` | Disable auto-start of providers | `false` |
| `-flushperiod` | Config flush interval (seconds) | `300` |
| `-keep` | Keep temporary files | `true` |
| `-noramfs` | Disable RAMFS requirement | `false` |
| `-remuxondisk` | Store remux temp files on disk | `false` |
| `-debugspeed` | Show stream download queue | `false` |
| `-defaultprovid` | Default provider ID | *(empty)* |
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
---
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
### Playlist & Naming
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| --------------------- | ------------------------- | ------------------ |
| `-plstreamname` | Stream name format | `[%p] %s` |
| `-alteventdateformat` | Alternate EPG date format | `false` |
| `-novodmetadata` | Disable VOD metadata | `false` |
| `-pipeoutputcmd` | Pipe output command | `tsplay -stdin %s` |
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
---
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
### Replay Mode
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ------------- | ----------------- | ----------------- |
| `-replay` | Local stream path | *(empty)* |
| `-replaymode` | Replay mode | `internalremuxer` |
2026-06-15 18:44:59 +08:00
---
2026-06-16 00:28:31 +08:00
### User-Agent & HTTP
2026-06-15 19:22:35 +08:00
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ---- | ------------------ | ---------------- |
| `-a` | Default User-Agent | Chrome 122 macOS |
2026-06-15 19:22:35 +08:00
---
2026-06-16 00:28:31 +08:00
### VOD Downloader
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| -------------- | ----------------------------- | --------- |
| `-manifest` | Download manifest and convert | *(empty)* |
| `-video` | Video track index | all |
| `-audio` | Audio track indexes | all |
| `-subs` | Subtitle indexes | none |
| `-extrasubs` | External subtitle URL | *(empty)* |
| `-maxsegments` | Max segments | `0` |
| `-dashperiod` | DASH period index | `-2` |
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
---
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
### DRM / CDM
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
| Flag | Description | Default |
| ------------ | --------------------- | ---------- |
| `-usecdm` | Enable CDM decryption | `false` |
| `-cdmtype` | CDM type | `widevine` |
| `-cdmmode` | CDM mode | `internal` |
| `-script` | CDM script | `auto` |
| `-cdmparams` | Script parameters | *(empty)* |
| `-key` | KID:KEY pair | *(empty)* |
| `-doh` | DNS-over-HTTPS URL | *(empty)* |
| `-H` | Custom HTTP headers | *(empty)* |
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
---
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
## Web UI Pages
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
| Page | Route | Description |
| ---------- | --------------------------- | ------------------------- |
| Providers | `/providers` | Manage IPTV/OTT providers |
| Linear | `/linear` | Live stream control |
| Events | `/events/:provider?` | Scheduled streams |
| VOD | `/vod` | Video-on-demand library |
| Recordings | `/recordings/:provider?` | Stream recordings |
| Monitoring | `/monitoring` | Live stream status |
| Logs | `/logs/:provider?/:stream?` | Log viewer |
| Users | `/users` | User management |
| Config | `/config` | System configuration |
| Help | `/help` | Documentation |
| Login | `/login` | Authentication |
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
---
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
## Examples
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
### Basic IPTV Proxy
2026-06-15 18:44:59 +08:00
```bash
2026-06-16 00:28:31 +08:00
./o11pro_unpacked -p 8080 -user admin -password mysecretpass
2026-06-15 18:44:59 +08:00
```
2026-06-16 00:28:31 +08:00
### Separate Streaming + EPG
2026-06-15 18:44:59 +08:00
```bash
2026-06-16 00:28:31 +08:00
./o11pro_unpacked -p 8080 -streamport 9090 -epgport 9091
2026-06-15 18:44:59 +08:00
```
2026-06-16 00:28:31 +08:00
### HTTPS Mode
2026-06-15 18:44:59 +08:00
```bash
2026-06-16 00:28:31 +08:00
./o11pro_unpacked -p 8443 -https
2026-06-15 18:44:59 +08:00
```
### Full Debug Mode
```bash
2026-06-16 00:28:31 +08:00
./o11pro_unpacked -p 8080 -v 5 -stdout
2026-06-15 18:44:59 +08:00
```
---
## Directory Structure
```
2026-06-15 19:22:35 +08:00
o11pro-unpacked/
2026-06-15 18:44:59 +08:00
├── hls/
2026-06-15 19:22:35 +08:00
├── dl/
2026-06-16 00:28:31 +08:00
├── epg/
├── fonts/
├── logos/
├── logs/
├── manifests/
├── offair/
├── overlay/
├── providers/
├── rec/
├── scripts/
├── keys.txt
├── o11.cfg
├── o11-job.cfg
└── o11-rec.cfg
2026-06-15 18:44:59 +08:00
```
---
2026-06-15 19:22:35 +08:00
## EPG Access
2026-06-16 00:28:31 +08:00
| Format | URL |
| ---------- | ----------------------------------- |
| XML (gzip) | `http://ip:epgport/provider.xml.gz` |
| XML | `http://ip:epgport/provider.xml` |
| API | `/epg/:provider?/:stream?` |
2026-06-15 19:22:35 +08:00
---
2026-06-16 00:28:31 +08:00
## Notes
2026-06-15 18:44:59 +08:00
2026-06-16 00:28:31 +08:00
* `-p` is required
* Temp admin is generated if no credentials provided
* HTTPS requires valid cert + key
* `-manifest` runs download-only mode
* Multiple `-key` and `-H` flags supported
2026-06-15 18:44:59 +08:00
---
2026-06-16 00:28:31 +08:00
## Credits
2026-06-15 19:22:35 +08:00
2026-06-16 00:28:31 +08:00
* Nulled (Cracked O11Pro)
* Lossui011
2026-06-15 19:27:01 +08:00
2026-06-16 00:28:31 +08:00
---