MacOS Installation - Storm Streaming Server
Installing Storm Streaming Server on computers running macOS is very simple thanks to the
dedicated installer. This guide will walk you through all the necessary steps of the process
and show you the basic server configuration.
If you don't have the installer yet, please visit our Download page.
Running the Installer
Once the volume file has been downloaded, double-click it. A window containing the Storm
Streaming Server Installer should appear. Double-click the installer again and wait for it to
launch.
If for some reason the installer does not run, go to System Settings > Privacy & Security and
check if the option to allow apps from the App Store and identified developers is enabled.
Basic Configuration
Now that the Storm Streaming Server application is installed, go to the installation folder you
specified in step 4. 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:
-Xmx128g
-Xms32g
-
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).
The Storm Streaming Server runs as a background service (LaunchDaemon) and is automatically
started with the system. Below you'll find basic service management commands:
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 the 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.
If FFMPEG is not installed at all on your system, you can use a package manager like
brew. First, install Homebrew—full instructions are available at
https://brew.sh.
Once brew is installed, open a terminal and type:
brew install ffmpeg
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