&meshcast
Triggers the service, causing the outbound audio/video stream to be transferred to a hosted server
Last updated
Triggers the service, causing the outbound audio/video stream to be transferred to a hosted server
Last updated
Sender-Side Option! (&push
)
Example: &meshcast=video
Value | Description |
---|---|
| Only audio via Meshcast |
| Only video via Meshcast |
(no value given) | Audio and video via Meshcast |
Meshcast is a free-to-use server-based service for broadcasting low-latency video streams. It can be used with VDO.Ninja in a couple different ways, either as an iFrame or as a peer-2-peer replacement for guest and director streams. It can be used to help lower system requirements of VDO.Ninja for some users or use cases.
Adding &meshcast
to a guest or director link will trigger the service, causing the outbound audio/video stream to be transferred to a hosted server, which then distributes the stream to all the viewers. This adds a bit of latency to the stream and reduces the theoretical privacy, but it implies the guest/director does not need to encode and upload multiple videos, lowering CPU load and bandwidth usage.
Viewers will automatically attempt to use the server-based feed over the peer-to-peer feed. Peer to peer is still used to send data though, and it can be optionally be used for sending audio p2p (lower latency).
Unlike the &broadcast
flag, which uses IFrames, this new server-side mode does not; it's more deeply integrated. Echo cancellation should work as a result.
If publishing using &meshcast
, I don't bother to show the viewer count, as it won't be accurate currently anyways; instead I just say you're broadcasting. I'll try to improve this in the future.
There is a toggle in the director's room which adds &meshcast
to the guest's invite link.
Steve made a YouTube video explaining all the Meshcast stuff:
You can also specify the Meshcast server based on geographic timezone values using the &tz=300
parameter, where the value passed is the UTC timezone value in negative minutes. Eastern Europe I suppose would be a negative value, while North America would be a positive value. The &tz
will also use the closest TURN server to that timezone, if needed; just keep in mind that timezones are east/west accurate; not north/south accurate.
Normally during peak-hours, around 7pm, the Internet in general can get slow, and Meshcast servers can occasionally become slow also as a result. Using a Meshcast server that's located in a different timezone, even if on the other side of the world, can sometimes avoid the bottlenecks in your local region, offering better results.
Lastly, if a Meshcast server fails to respond, please contact steve@seguin.email or Steve on discord (discord.vdo.ninja) so it can be fixed.
You can select the Meshcast server (region) via URL Parameter, if you want low-level control there:
&meshcastcodeAs a director you can also select the Meshcast server on the bottom left of the director's control center. This method will show you the current load on a server, so you can avoid servers that are over-capacity.