Linux/Unix Installation - Storm Streaming Server
                    
                        Storm Streaming Server includes a user-friendly script-based installer for Unix/Linux systems,
                        which works in both GUI and console environments. Additionally, DEB and RPM package installers
                        are available from the download page.
                        
                        If you don't have the installer yet, please visit our Download page.
                    
                
                
                    Running the Installer
                    
                        Before it is possible to run the installation script, it must be granted execution permissions.
                        This can be done using the chmod command.
                    
                    
                        
                            
chmod +x storm_streaming_server_unix_aarch64_3_0_0.sh
                        
                     
                    
                        
                    
                    
                        Please note that othe installer filename may differ in the latest version from the one mentioned
                        above due to version changes or different architecture (like x64).
                    
                    Next we start the installer:
                    
                        
                            
./storm_streaming_server_unix_aarch64_3_0_0.sh
                        
                     
                    
                        
                    
                    
                        It may take a while before Installer is ready to start.
                    
                
                
                
                    Installer Steps (Console Mode)
                    
                        If you manage your server via SSH or simply don't have a GUI, the console mode might come in
                        handy. Just add -c as an additional parameter to the
                        installer script.
                    
                    
                        
                            
./storm_streaming_server_unix_aarch64_3_0_0.sh -c
                        
                     
                    The rest is identical to the GUI counterpart.
                
                
                    Basic Configuration
                    
                        Now that the Storm Streaming Server application is installed, go to the installation folder you
                        specified in step 3. There are a few things to configure here:
                    
                    
                        - 
                            JVM Configuration
                            
                                In the file Storm storm-streaming-server.vmoptions,
                                you'll find JVM options that define, among other things, how much RAM should be
                                allocated
                                to the application. The default file content is:
                            
                            
                                
                                    
-server
-Xmx16g
-Xms4g
-XX:+UseG1GC
-XX:MaxGCPauseMillis=100
                                
                             
                            
                                The -Xms and -Xmx
                                parameters define the minimum and maximum amount of RAM available to the application.
                                You should adjust these values to match your hardware resources. For example, to
                                allocate
                                a maximum of 128 GB and a minimum of 32 GB, change the values to:
                            
                            
                         
                        - 
                            VHost Configuration
                            
                                The socket configuration for Storm Streaming Server is located in the file
                                config/preferences.xml. By default,
                                it includes the following block:
                            
                            
                                
                                    
<VHosts>
	<VHost host="127.0.0.1" isSSL="false" port="1935">
		<Protocols>RTMP</Protocols>
	</VHost>
	<VHost host="127.0.0.1" isSSL="false" port="8080">
		<Protocols>HTTP, WEBSOCKETS</Protocols>
	</VHost>
</VHosts>
                                
                             
                            
                                This defines two sockets listening on 127.0.0.1
                                (localhost). Port 8080 handles HTTP and
                                WebSocksts connections, and port 1935
                                handles RTMP. For more information about VHost configuration, including how to enable
                                SSL support, please refer to our VHosts guide.
                            
                         
                    
                    
                        In order to apply these changes, please restart the server. The following section explains how to stop and start the Storm Streaming Server service.
                    
                
                
                    Managing the Service
                    
                        You can access the web-based control panel of the application using the 'Strom Control Panel'
                        shortcut. Alternatively, you can open it directly in any web browser at:
                        http://127.0.0.1/cpanel
                        (the IP address and port may vary depending on your VHosts configuration).
                    
                    
                        Since the application operated as a service, it’ll be started automatically with the system.
                        Below you’ll find basic commands:
                    
                    
                        - 
                            To check the Storm Streaming Server (service) status:
                            
                                
                                    
systemctl status storm-streaming-server
                                
                             
                            
                         
                        - 
                            To stop the Storm Streaming Server:
                            
                                
                                    
systemctl stop storm-streaming-server
                                
                             
                            
                         
                        - 
                            To start the Storm Streaming Server:
                            
                                
                                    
systemctl start storm-streaming-server
                                
                             
                            
                         
                        - 
                            To restart the Storm Streaming Server:
                            
                                
                                    
systemctl restart storm-streaming-server
                                
                             
                            
                         
                    
                    
                        At this point, a simple control panel is also available by default at (unless you modified
                        VHOost):
                        http://127.0.0.1:8080/cpanel
                    
                
                
                    FFMPEG Installation (optional)
                    
                        If the console shows a message about missing FFMPEG (required for stream transcoding), you can
                        specify its path in the config/preferences.xml file.
                        The configuration is found in the <Transcoder> block, like this:
                    
                    
                        
                            
<Transcoder>
	<FFMPEG>
		<Path>/opt/homebrew/bin/ffmpeg</Path> <!-- optional -->
		<Command>-re -nostdin -i {SOURCE_INPUT} -vsync 1 -vcodec libx264 -preset:v {CPU_USAGE_PRESET} -vf scale={OUTPUT_WIDTH}:{OUTPUT_HEIGHT} -tune {TUNE} -g 30 -fflags nobuffer -probesize 32 -analyzeduration 0 -b:v {VIDEO_BITRATE} -acodec aac -b:a {AUDIO_BITRATE} -async 1 -f flv {STREAM_OUTPUT}</Command>
	</FFMPEG>
	<TranscodeTaskLimit>5</TranscodeTaskLimit>
    <!-- remaining block -->
</Transcoder>
                        
                     
                    
                        If FFMPEG has been added to the environment variables, you can leave the Path field empty — unless you want to explicitly specify which binaries should be used.
                        
                        Depending on your operating system, you can use the following command to install FFMPEG via your
                        default package manager.
                    
                    
                        - 
                            Debian / Ubuntu (apt)
                            
                                
                                    
sudo apt update
sudo apt install ffmpeg
                                
                             
                            
                         
                        - 
                            Arch Linux / Manjaro (pacman)
                            
                            
                         
                        - 
                            macOS (Homebrew)
                            
                            
                         
                        - 
                            FreeBSD (pkg)
                            
                            
                         
                    
                
                
                    
                        
                            
                                Next Step
                            
                            
                                
                                    We encourage you to explore our Storm Streaming Server documentation. It covers
                                    individual server configuration elements and provides information about popular
                                    protocols such as RTMP, HLS, and more. The samples
                                    directory also contains several example video players preconfigured to work with
                                    your Storm Streaming Server instance.
                                    
                                    For the next step we advise our Quick Start Guide