Introduction - Storm Streaming Server

What is Storm Streaming Server?

Storm Streaming Server is a high-performance, multithreaded, and scalable server application that enables the creation and distribution of real-time audio-video streams to tens of thousands of viewers simultaneously, with ultra-low latency (below 1 second).

The application is available for multiple PC/Mac operating systems, including Windows, macOS, Linux, and Unix (dedicated installers provided). It is compatible with both x86 and ARM architectures. Storm Streaming Server is also available as an easy-to-use Docker container and can be deployed on popular cloud platforms such as Amazon Cloud or Microsoft Azure.

Storm Streaming Server supports a wide range of media protocols, including RTMP, RTMP Enhanced, RTSP, HLS, and WebSockets, as well as codecs such as H.264, H.265, and AV1.

Table of Contents

  1. Quick Start - A concise guide on how to install the server and create the first video broadcast in just few minutes.
  2. Installation - Block dedicated to detailed server installation:
    1. Requirements - Hardware and software requirements for the server.
    2. Native Installation - Platform-specific server installation guides:
      1. Windows - Step-by-step instructions for installing the server on Windows operating systems.
      2. MacOS - Step-by-step instructions for installing the server on macOS.
      3. Linux/Unix - Step-by-step instructions for installing the server on Linux and Unix-based systems.
    3. Docker-based Installation - Instructions for installing the server using the Docker platform.
      1. Docker platform Installation - An easy guide for individuals with no experience with Docker on how to install and properly configure the platform on their computer.
  3. Basic Configuration - Block dedicated to basic server configuration:
    1. Identity & Group - Introduction of identification and common name for the server and its group.
    2. License - Types of licenses and their proper configuration.
    3. VHosts - Settings for sockets, their IP addresses, ports, encryption, and available protocols.
      1. Creating JKS file - A short guide on how to create a JKS certificate file for SSL mode.
    4. Live Application - Configuration of the basic application managing streams, stream authorization.
    5. Control Panel - Configuration of access to the Control Panel and its overview.
    6. Video Player Integration - Section dedicated to integrating Storm Streaming Server with video players on websites:
      1. Introduction to Web Video Players - Explanation of the differences between Storm Library/Player and third-party players.
      2. Storm Library & Player - Description of the basic integration of Storm Library/Player with Storm Streaming Server.
      3. JWPlayer - Description of integration with an alternative player called JWPlayer using the standard HLS protocol.
      4. FlowPlayer - Description of integration with an alternative player called FlowPlayer using the standard HLS protocol.
      5. JSVideo - Description of integration with an alternative player called JSVideo using the standard HLS protocol.
  4. Advanced Configuration - Block dedicated to advanced server configuration topics:
    1. Transcoder - Configuration of transcoding that allows for creating multiple quality versions of incoming streams.
    2. Thread Pools - Settings responsible for the application's performance and the number of threads handling it.
    3. Scaling & Cluster - Section dedicated to scaling the application using multiple servers:
      1. Introduction to Clusters - Explanation of basic concepts and issues related to scaling and clustering.
      2. Cluster Configuration - Basic cluster configuration.
      3. Origin Application - Description of configuration for Origin-type applications.
      4. Transcode Application - Description of configuration for Transcode-type applications.
      5. Edge Application - Description of configuration for Edge-type applications.
    4. Stream Recording - Recording streams to video files.
    5. Stream Security - How to secure streams against unauthorized access.
    6. Nginx SSL Passthrough - Configuration of NGINX as an SSL proxy (improving performance).
    7. Logging - Server logging settings.
  5. RESTful-API - Block dedicated to controlling server with RESTful-API:
    1. RESTful Basics - Basics of configuration and authorization of requests for RESTful API.
    2. Server API - API allowing control of basic server parameters.
    3. Application API - API allowing control of applications within the server.
    4. Stream API - API allowing control of streams.
  6. Tutorials - Block dedicated to tutorials related to Storm Streaming Server:
    1. Stream Ingest - Section dedicated to popular encoders and their configuration with Storm Streaming Server:
      1. OpenBroadcaster (OBS) - Configuration of connection and encoder settings for OpenBroadcaster.
      2. XSplit Broadcaster - Configuration of connection and encoder settings for XSplit Broadcaster.
      3. Larix Broadcaster - Configuration of connection and encoder settings for Larix Broadcaster.
      4. FFMPEG - Configuration of connection and encoder settings for FFMPEG.
    2. RTMP Protocol - Detailed description of how to use RTMP protocol with Storm Streaming Server.
    3. HLS Protocol - Detailed description of how to utilize HLS & LL-HLS with Storm Streaming Server.
  7. Changelog - Detailed description of changes for each Server release.
Next Step

For the next step we suggest to take a look on Quick Start guide or start with either a detailed Windows, MacOS Linux/Unix or Docker-based Installation