RTMP to VDO.Ninja
Stream from OBS, MELD Studio, or any RTMP encoder directly into VDO.Ninja
In This Guide
How It Works
VDO.Ninja uses WebRTC, which is browser-native but incompatible with traditional streaming protocols like RTMP. Meshcast bridges this gap by:
RTMP
Converts
WebRTC
Your encoder sends RTMP to Meshcast servers, which convert it to WebRTC (WHEP) in real-time. VDO.Ninja then pulls the WebRTC stream like any other guest.
Lower latency than screen sharing, works with any RTMP-capable software (OBS, MELD, Wirecast, vMix), and doesn't require a virtual camera.
Requirements
- Meshcast account - Registered (free) account required (paid for higher quality)
- RTMP-capable encoder - OBS, MELD Studio, Streamlabs, FFmpeg, etc.
- Stable upload - At least 5 Mbps recommended for 720p
Step-by-Step Setup
-
Get Your Stream Key
Log into Meshcast Dashboard and copy your stream key. It looks like
live_xxxxxxxxxxxx. -
Configure Your Encoder
In OBS or your encoder, go to Settings → Stream and enter:
Service
CustomServer
rtmp://[ip]:1935For the server URL, use one of our media servers. Check your dashboard for the recommended server, or use:
US Eastrtmp://66.42.84.181:1935US Westrtmp://155.138.237.3:1935 -
Set Stream Key
Paste your Meshcast stream key in the Stream Key field.
-
Configure Output Settings
Use these recommended settings for VDO.Ninja compatibility:
Encoder
x264 / NVENCRate Control
CBRBitrate
2500-4000 kbpsKeyframe
2 seconds -
Start Streaming
Click "Start Streaming" in OBS. Your stream should show as "Live" in the Meshcast dashboard within seconds.
Viewing in VDO.Ninja
Once your stream is live on Meshcast, you can pull it into VDO.Ninja:
Method 1: Direct WHEP URL (Recommended)
Use this URL format in VDO.Ninja's &view= parameter:
https://vdo.ninja/?view=meshcast&whep=https://app.meshcast.io/api/gateway/whep/YOUR_STREAM_KEY
Method 2: OBS Browser Source
If adding to OBS as a browser source, use the Meshcast embed player:
https://app.meshcast.io/embed/YOUR_STREAM_KEY
Method 3: As a VDO.Ninja "Guest"
Create a VDO.Ninja room and use the Meshcast WHEP URL as a remote feed. Other guests in the room will see your RTMP stream as if it were a camera.
Expect 1-3 seconds of latency through this pipeline. For ultra-low latency (<500ms), consider publishing directly via WebRTC/WHIP instead of RTMP.
Use Cases
MELD Studio on Mac
MELD Studio doesn't have a virtual camera on Mac. Instead of screen sharing (high CPU, lower quality), stream via RTMP to Meshcast:
- In MELD, go to Stream settings
- Add Meshcast as a custom RTMP destination
- Start streaming
- Pull the WHEP URL into VDO.Ninja
Multi-Camera Setups
If you have multiple camera angles in OBS, you can stream each to a different Meshcast stream key, then pull all of them into VDO.Ninja as separate sources.
Remote Production
Guests in remote locations can stream via RTMP (which is more firewall-friendly than WebRTC) and have their feeds appear in your VDO.Ninja production room.
Troubleshooting
Stream not appearing?
- Check your stream key is correct (copy/paste, don't type)
- Verify the stream shows as "Live" in Meshcast dashboard
- Try a different server if one isn't responding
High latency?
- Use CBR rate control, not VBR
- Set keyframe interval to exactly 2 seconds
- Lower your buffer settings in OBS
- Choose a server closer to your location
Quality issues?
- Ensure your upload speed is at least 1.5x your bitrate
- Use 720p at 2500kbps for reliable quality
- Avoid 1080p60 unless you have 10+ Mbps upload
HEVC/H.265 not working in OBS browser source?
If you're publishing with HEVC (H.265) encoding, be aware that not all browsers support it:
- OBS Browser Source uses Chromium 127, which does not support HEVC WebRTC playback
- Chrome 137+ fully supports HEVC in WebRTC
- Firefox has limited HEVC support
- Safari supports HEVC on macOS/iOS
Solution: If you need to view your stream in OBS Browser Source or older browsers, use H.264 encoding instead:
- In OBS: Settings → Output → Encoder: x264 or NVENC H.264
- Avoid "HEVC" or "H.265" encoder options when targeting OBS playback
Note: You can check your Chrome version at chrome://version. HEVC requires Chromium 137 or later.
Email steve@seguin.email with your stream key and a description of the issue.