Introduction to streaming

Your performance can include live audio-visual streams, which can be sent to UpStage in either of two different ways:

  • as an RTMP stream, which involves using a separate streaming application OR
  • as a Jitsi meeting or individual stream, which is handled by your browser

Note: RTMP streaming is currently temporarily disabled. We are working on improvements to streaming generally.

A stream can be video (image) only, audio only, or both. You can also stream a video file, your desktop, or mix audio in your favourite DJing application and send the audio stream to UpStage as a soundtrack.

The following chapters explain how to set up and send an RTMP stream from your phone or computer to UpStage, and how to operate the stream on your stage. For information on a Jitsi meeting and individual Jitsi streams, see the Meeting tool chapter.

The applications that we recommend for RTMP streams are Open Broadcaster Software (OBS; for computers) and Larix Broadcaster (for mobile devices). Other applications can also be used, but we’ve provided screenshots and step-by-step instructions for these two applications as we’ve found them to be good.


But first, some important points to understand about streaming in UpStage…

RTMP versus Jitsi

RTMP streams require an additional software application and take more time to set up than Jitsi meetings or individual streams, which function directly through your browser. However, there are important points to consider when deciding which streaming method is best for your performance:

  • Jitsi meetings invite everyone present on the stage – players and audience – to share their webcam and mic. This is great for discussions and workshops, or audience feedback at the end of a performance, but it may not be what you want for the performance itself.
  • Individual Jitsi streams appear in the toolbar of the individual player only, as opposed to RTMP streams which are accessible to all players. This means that any player can place another player’s RTMP stream onto the stage, but only you can place your individual Jitsi stream. In some situations it may be useful for another player to be able to place your stream on the stage.
  • OBS allows a great deal of customisation of an RTMP stream, and Larix also allows quite a lot – for example, altering the video dimensions so that you can make your stream round rather than oval, or adding text or images to your stream. How much you can customise an individual Jitsi stream will depend on what browser you’re using and what that browswer allows. Usually this is not much.

Streaming versus audio-visual conferencing

It’s helpful to understand the difference between audio-visual conferencing platforms (such as, BigBlueButton, Zoom, Skype, etc.) and a real-time interactive multimedia platform such as UpStage.

Platforms that are purpose-built for audio-visual conferencing use specific (and often proprietary) technologies and protocols and have dedicated high capacity servers. The primary feature of these platforms is streaming. On the other hand, UpStage has a great many other features besides streaming, and requires HTML-compliant streaming functionality as everything is delivered to the browser. As an open source project we’re using the best open source streaming server technologies that we’ve found.

Streams in UpStage normally have around 2-3 seconds of lag (delay) and this will vary according to each individual’s internet connection and their device’s CPU. We choose to see this as a feature of the environment rather than as a problem, and we look for creative and interesting ways to work with delay.

Keeping it light

To minimize lag and ensure the best possible experience, even for those on slower internet connections, you should keep your stream as light as possible. Minimising file size is a good habit with all UpStage media – we’re working online and in real time, so speed is more important than high definition for your audience’s best experience.

You’ll need to experiment with settings including the size, resolution and bit rate of your stream to find the best compromise between speed and quality – and the best settings will depend on variables such as how big you need your stream to be on the stage and what level of quality is aesthetically appropriate for your performance. See the chapter Sending an RTMP stream for optimisation tips.

Theoretically there’s no limit to how many streams can be active on a stage at one time. However, the more streams there are, the more data is being processed by the server and by the audience’s devices; so the more streams you have at one time, the greater the chance of lag and other performance issues.

Audio feedback

Audio feedback can be created by re-transmitting audio from UpStage back into UpStage via your stream. The easiest way to avoid this is to use headphones, so that your microphone cannot pick up any of the sound from UpStage, however this may not always be possible – for example when there’s more than one person at the stream location, and they both or all need to hear the audio from UpStage.

It’s advisable to keep the audio input in your streaming application muted all the time, except when you’re sure you want to send audio. You can also mute the browser, so that no audio is heard from UpStage, when you’re sending your audio stream.

If you need to send an audio stream from a location where the UpStage audio is being played over a sound system, it’s best to use a good quality directional mic and have it as far away from the speakers as possible. When all else fails and the feedback builds, mute your audio stream and wait for it to quieten.

Frozen streams

Sometimes a stream may freeze, or stop, for an individual player or audience member. This is usually caused by either a blip in their internet connection, or because their device cannot process all the data. Usually it can be solved by that person reloading the stage. If others are receiving the stream normally then the issue is a local one, not a problem with UpStage.

Replay recordings

UpStage’s Replay recording feature does not record streams. It’s a log of all the actions on the stage, not a screen recording; so the data of a stream will not be saved as part of the replay. You’ll need to make a screen capture recording in order to have a full recording of a performance that includes streams.