Getting Started
Introduction
Current support encode
protocol | video codecs | audio codecs |
---|---|---|
WHIP | AV1 , VP9 , VP8 , H264 | Opus , G722 |
WHEP | AV1 , VP9 , VP8 , H264 | Opus , G722 |
Current client support
Application | AV1 | VP9 | VP8 | H264 | OPUS | G722 |
---|---|---|---|---|---|---|
Browser whip | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Browser whep | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Gstreamer whip | 📺 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Gstreamer whep | 📺 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Gstreamer rtp-into | 📺 1 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
Gstreamer rtp-from | 📺 2 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
FFmpeg rtp-into | 💩 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
FFmpeg rtp-from | 💩 | ⭐ | ⭐ | ⭐ | ⭐ | ⭐ |
VLC rtp-into | 💩 | 💩 | ⭐ | ⭐ | ⭐ | 💩 |
VLC rtp-from | 💩 | 💩 | ⭐ | ⭐ | ⭐ | 💩 |
OBS Studio whip | 📺 3 | 💩 | 💩 | ⭐ | ⭐ | 💩 |
- ⭐ It's working
- 💩 Don't support
- 💡 I don't know, No testing
- 📺 Note have some problem
- Working, But Browser can't player this video, Gstreamer to Gstreamer is working
- I don't know why av1 and whep error
- OBS av1 codec can't play
Components
Live777 Core (liveion)
A Pure Single SFU Server for WebRTC.
Only WHIP
/ WHEP
protocol supported.
a core SFU server, If you need a single server, use this
Live777 Manager (liveman)
Live777 Cluster manager.
If I have so many servers (live777 core cluster), I need this manage them all.
Cluster mode must liveman
whipinto and whepfrom
Stream protocol convert tool.
RTP
=>WHIP
WHEP
=>RTP
- TODO:
RTSP
=>WHIP
- TODO:
WHEP
=>RTSP
whipinto
NOTE: About pkt_size=1200
WebRTC must need pkt_size=1200
If pkt_size > 1200
(most tool > 1200
, for example: ffmpeg
default 1472
), we need to de-payload after re-payload
But now, We support re-size pkt_size
in VP8
and VP9
, You can use any pkt_size
value in VP8
and VP9
Codec | AV1 | VP9 | VP8 | H264 | OPUS | G722 |
---|---|---|---|---|---|---|
pkt_size > 1200 | 💩 | ⭐ | ⭐ | ⭐ | 💩 | 💩 |
- ⭐ It's working
- 💩 Don't support
This tool is rtp2whip
whipinto -c vp8 -u http://localhost:7777/whip/777 --port 5003
whepfrom
This tool is whep2rtp
Build
cargo build --package=whepfrom --release
Use WHEP protocol pull stream convert rtp sender
whepfrom -c vp8 -u http://localhost:7777/whep/777 -t localhost:5004
Web WHIP/WHEP client
Open your browser, enter the URL: http://localhost:7777/
Debugger
example: http://localhost:7777/tools/debugger.html
You can use this test WebRTC-SVC
Single Page Player
example: http://localhost:7777/tools/player.html?id=web-0&autoplay&controls&muted&reconnect=3000
URL params:
id
: string, live777 Stream IDautoplay
: booleancontrols
: booleanmuted
: boolean, whether to mute by defaultreconnect
: number, reconnect timeout in millisecond
Minimize Running
Run Live777 using docker:
DANGER
You must use network host mode
docker run --name live777-server --rm --network host ghcr.io/binbat/live777-server:latest live777
Open your browser, enter the URL: http://localhost:7777/