Skip to content

Video playback

Protocols for video playback

Flussonic Media Server can play video streams via various protocols. Click the stream name on the MediaStreams tab, then go to the Output tab to see all available playback URLs. You can copy each URL to the clipboard by clicking the "Copy" button on the right next to the corresponding URL.

Output protocols

Below you will find a bit more detailed descriptions of the URL addresses that you should use in players in order to play video via different protocols with links to sections that provide more information about configuring the playback via each certain protocol. You can also play a stream in the Preview Player directly in the Flussonic UI.

Additionally, you can manage video playback via the Streaming API.

embed.html

URL: http://FLUSSONIC-IP/STREAMNAME/embed.html

Flussonic Media Server has a special page embed.html which is intended for video insertion to a website or viewing of video via a browser. The page automatically detects a browser version to select a supported protocol. For the majority of devices for today — it's HLS. Read more in the Video insertion on the website (embed.html) article.

The complete OpenAPI specification: Streaming API.

HLS

URL for the player: http://FLUSSONIC-IP/STREAMNAME/index.m3u8

Read more in HLS playback. Use (embed.html)or any third-party player to insert HLS stream on your website. For example, hls.js or clappr.

The complete OpenAPI specification: Streaming API.

DASH

The stream is available at the URL: http://FLUSSONIC-IP/STREAMNAME/index.mpd

Read more in DASH playback.

The complete OpenAPI specification: Streaming API.

MSE-LD

URL for the player: ws://FLUSSONIC-IP/STREAMNAME/mse_ld

HTML5 (MSE-LD)

The stream played through HTML5 is available at the URL: http://FLUSSONIC-IP/STREAMNAME/embed.html?realtime=true

Read more in HTML5 (MSE) low latency playback.

MSS

The stream is available at the URL: http://FLUSSONIC-IP/STREAMNAME.isml/manifest

Read more in MSS Playback.

The complete OpenAPI specification: Streaming API.

HTTP MPEG-TS

The stream is available at the URL: http://FLUSSONIC-IP/STREAMNAME/mpegts

HTTP MPEG-TS relative timeshift

The URL for HTTP MPEG-TS playback with relative timeshift:

http://FLUSSONIC-IP:PORT/STREAM_NAME/timeshift_rel-3600.ts

In this example, the recorded stream will be played with one hour (3600 seconds) delay.

HTTP MPEG-TS absolute timeshift

The URL for HTTP MPEG-TS playback with absolute timeshift:

http://FLUSSONIC-IP:PORT/STREAM_NAME/timeshift_abs-1643257722.ts.

A fragment of an archive can be retrieved not on the full speed, but in the streaming mode, over a time equal to the length of the fragment.

RTMP

The stream is available at the URL:

  • rtmp://FLUSSONIC-IP/static/STREAMNAME

RTSP

The stream is available at the URL:

  • rtsp://FLUSSONIC-IP/STREAMNAME

If an RTSP stream has several audio and video tracks and you need to specify the tracks for playback, use the filter.tracks parameter.

See the following examples:

  • rtsp://FLUSSONIC-IP/STREAMNAME?filter.tracks=a2v1
  • rtsp://FLUSSONIC-IP/vod/file?filter.tracks=a2v1 — VOD.
  • rtsp://FLUSSONIC-IP/STREAMNAME2 = rtsp://FLUSSONIC-IP/STREAMNAME1?filter.tracks=v1a1

Selecting only one track:

  • rtsp://FLUSSONIC-IP/STREAMNAME?filter.tracks=a1 — select an audio track.
  • rtsp://FLUSSONIC-IP/STREAMNAME?filter.tracks=v1 — select a video track.

WebRTC

WebRTC WHEP is available at the URL:

  • ws://FLUSSONIC-IP/STREAM_NAME/whep

Read more about our WebRTC player and how to organize playback in WebRTC Playback.

The complete OpenAPI specification: Streaming API.

SHOUTcast

The stream is available at the URL: http://FLUSSONIC-IP/STREAMNAME/shoutcast

Flussonic Media Server can deliver SHOUTcast, ICEcast radio stream.

The complete OpenAPI specification: Streaming API.

SRT

Flussonic supports playing SRT streams.

The general URL for playing an SRT stream looks like that:

srt://FLUSSONIC-IP:SRT_PORT?streamid=#!::r=STREAM_NAME,m=request

Learn more about SRT, streamid and other supported parameters at Using SRT protocol.

Possible URL options are listed at SRT Playback.

Filtering tracks for playback

If a stream has several audio, video, or subtitle tracks, you can specify certain tracks for Flussonic to deliver.

To do this this, add the ?filter.tracks=[aN|vN|tN|lN]+ parameter, which is followed by one or more track numbers without spaces to the end of the stream URL. Here are the possible values:

  • aN is the Nth audio track
  • vN is the Nth video track
  • tN is the Nth WebVTT subtitles track
  • lN is the Nth track with DVB subtitles or teletext.

By default, Flussonic uses the first video and audio tracks. If you specify more than two tracks or make a syntax error, the default tracks will be used (a1v1).

The following examples show how to use the parameter:

  • rtsp://FLUSSONIC-IP/STREAMNAME?filter.tracks=a2v1: select the second audio track and the first video track for the RTSP stream.
  • http://FLUSSONIC-IP/STREAM_NAME/index.m3u8?filter.tracks=v2: select the second video track for the HLS playlist.
  • http://FLUSSONIC-IP/STREAMNAME.isml/manifest?filter.tracks=v1t1t2t3: select the first video track and three tracks with subtitles for the MSS manifest.

Restricting certain protocols

By default, playback via all protocols is allowed, but you can prohibit playback via the selected protocols (Except) or allow only certain protocols (Only) with the switch to the left of each of the URLs on the Output tab. This feature is useful not only for security, but also for reducing the load on the server: packing into all available protocols can consume a lot of resources.

These settings can be done in the config file as well. For example, you can allow all protocols except MPEG-TS and HLS for the stream channel_01 (corresponds to Except switch position):

stream channel_01 {
  protocols -mpegts -hls;
}

To allow only DASH playback and API requests for the stream channel_02 and disable other protocols (corresponds to Only switch position):

stream channel_02 {
  protocols dash api;
}

Getting data about played stream

You can make API requests to receive the information about the played stream. You can integrate the received data into any external system like site, monitoring, player, or mobile application.

The URL for getting technical information about the output media content:

http://FLUSSONIC-IP/STREAM_NAME/media_info.json

The URL for getting the information about DVR recording status of a stream:

http://FLUSSONIC-IP/STREAM_NAME/recording_status.json

Preview player in Flussonic UI

You can play a stream directly in Flussonic UI using the Preview Player. This player allows to play a stream via HLS, MSE-LD, or DASH protocol. Additionally, DVR playback is available for streams with DVR enabled. The Preview Player uses the special embed.html page (for details, see Adding Video to Websites) with corresponding parameters.

To open the Preview Player, go to Media > Streams and click the Play button next to the corresponding stream.

Play preview button

In the opened window choose one of the tabs and start playing. The following tabs are available:

  • HLS — for HLS playback. The player will use embed.html page.
  • MSE — for HTML (MSE-LD) low latency playback. The player will use embed.html?realtime=true page.
  • DASH — for DASH playback. The player will use embed.html?proto=dash page.
  • DVR — for DVR archive playback (if DVR is enabled). The player will use embed.html?dvr=true page. You can read more about the settings of DVR player in the Viewing the DVR recordings from the web interface chapter.

In the bottom of the Preview Player window you can see HTML code for inserting the corresponding player into a web page.

To close the Preview Player window, press Esc.