Skip to main content

Livestreaming

If your case involves streaming live audio and/or video from one source to many viewers with low latency, Fishjam provides the exact tools you need. This scenario is 20% cheaper than videoconferencing.

How Do I Use It?

Streamer

First, you need to create a room with the livestream type using our Server SDKs. If you are using our sandbox, the Room Manager also allows you to create such a room. As the streaming is one-to-many, you can have only one streaming participant in that room.

Using Room Manager

You can create a livestream room and obtain a peer token using this URL:

https://fishjam.io/api/v1/connect/<YOUR_APP_UUID>/room-manager?roomName=foo&peerName=bar&roomType=livestream

Using Server SDKs

const createdRoom = await fishjamClient.createRoom({ roomType: 'livestream' });

const peer = await fishjamClient.createPeer(createdRoom.id)

Now, you can connect to the room and start streaming as described in our React Native and React docs.

note

Livestreaming scenario allows only one video and one audio track to be sent at a time.
Any additional tracks will be ignored and will not be available to the viewers.

Viewers

To view the streamed content, you need to obtain a viewer token that can be generated using Server SDKs. If you are using our sandbox, the Room Manager also allows you to create such a token.

Using Room Manager

https://fishjam.io/api/v1/connect/<YOUR_APP_UUID>/room-manager/<ROOM_NAME>/livestream-viewer-token

Using Server SDKs

const viewerToken = await fishjamClient.createLivestreamViewerToken(room.id)

Now you can connect the viewer to the livestream as described in our React Native and React docs.

info

Viewers connect using WHEP standard, allowing the use of any player that supports the WHEP standard.