A multicast server using Nginx.
To install the prerequisites above you can navigate to each link above and follow the instructions. Alternatively, you can use a package manager like Homebrew or Chocolatey. Here are some quick scripts to install the prerequisites above with either of these two package managers.
Homebrew:
brew cask install \
virtualbox \
vagrant &&
brew install ansible
Chocolatey:
cinst virtualbox vagrant -y
To configure the server, you will need to fetch RTMP urls and stream keys for the services you want to stream to and add them to the list of keys in the bootstrap.yml
file. For example, if you'd like to stream to Facebook and YouTube at the same time, find the URLs and stream keys for both and replace this:
streams:
- url: "webcast.sermonaudio.com/sa"
key: "some-sa-key"
With This:
streams:
- url: "rtmp.facebook.com/live1"
key: "some-facebook-key"
- url: "a.rtmp.youtube.com/live2"
key: "some-youtube-key"
You can also add any number of other RTMP stream provider endpoints by just adding another key in the map.
streams:
- url: "rtmp.facebook.com/live1"
key: "some-facebook-key"
- url: "a.rtmp.youtube.com/live2"
key: "some-youtube-key"
- url: "rtmp.twitch.com/live3"
key: "some-twitch-key"
- url: "rtmp.example.com/live4"
key: "some-example-key"
All of the keys above are example keys and don't reflect what the URLs or keys will actually be. Look at your stream providers documentation to get the URL and key you'll need.
Clone the repository, make your config changes, and run vagrant up
in your terminal. The scripts should run and build out your server automatically!
Open up your OBS streaming settings and point your URL to rtmp://10.0.1.15/live
, type in something for your stream key. It doesn't matter what your local stream key is. Start your stream and verify that the services you configured are receiving the stream.