Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

To run online broadcasts you can use special hardware or software video capturing devices (Live Encoder). Such devices or programs capture a video stream and send it to the server via the RTMP protocol.
Web Call Server 5.1 can receive an RTMP video stream from such a device or software (Wirecast, ffmpeg, OBS Studio, FMLE etc.) encoded to H.264 and AAC and broadcast this video stream to browsers and mobile devices.


Overview

Technical specifications

  • Receiving incoming audio- and video streams via the RTMP protocol

  • Support for the H.264 video codec and AAC audio codec

  • Broadcasting of the received video stream to browsers and platforms: any among ones supported by WCS

  • Uses video stream playback technologies: any among ones supported by WCS

Operation flowchart

Image Added


1. Live Encoder establishes a connection to the server via the RTMP protocol and sends the publish command.

2. Live Encoder sends the RTMP stream to the server.

3. The browser establishes a connection via Websocket and sends the play command.

4. The browser receives the WebRTC stream and plays that stream on the page.


Quick manual on testing

Capturing a video stream from an external source and preparing to publishing

1. For the test we use the demo server at demo.flashphoner.com, and as a source of broadcasting - OBS Studio, to play the received stream -  the web application Player in the Chrome browser

https://demo.flashphoner.com/client2/examples/demo/streaming/player/player.html

Configure broadcasting of the RTMP stream to this address rtmp://demo.flashphoner.com:1935/live/, use obsStream as the stream key:

Image Added


Start broadcasting:

Image Added


2. To make sure the server receives broadcasting, open the Player web application:

Image Added


In the "Stream" field specify the stream key and click "Start". You should see the "PLAYING" label:

Image Added


Now, broadcasting of the captured stream starts.

Image Added

Call flow

Below is the call flow when an RTMP stream is broadcast from an external source (Live Encoder)to the WCS server

Image Added

Known issues

1. A stream containing B-frames does not play or plays with artifacts (latencies, lags)

Symptoms:

  • a stream sent by the RTMP encoder does not play or plays with latencies or lags
  • warnings in the client log:
Code Block
languagebash
themeRDark
09:32:31,238 WARN 4BitstreamNormalizer - RTMP-pool-10-thread-5 It is B-frame!

Solution: change the encoder settings so, that B-frames were not used (lower encoding profile, specify in the command line etc).