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. The software supports many popular protocols such as RTMP, RTSP, HLS, WebSockets, and codecs like H.264, H.265, AV1.

The application can be installed on any PC/Mac computer or server (including those based on ARM processors), or popular cloud services like Amazon Cloud, Microsoft Azure.

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 - Instructions for installing the server using the server file package and the Java environment.
      1. Java Runtime Installation - Instructions for installing the server using the server file package and the Java environment.
    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. Transcoding - 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. Basic Cluster Configuration - Basic cluster configuration.
      3. Origin Application - Description of configuration for Origin-type applications.
      4. 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 Docker-based Installation or Native Installation with JVM.