DEV Community

Horus Lugo
Horus Lugo

Posted on • Edited on • Originally published at horus.dev

This project allows you to do streaming to multiple platforms like Twitch, YouTube, or Periscope at the same time!

Hey DEV! 👋

I just published a GitHub project that allows you to self-host a streaming server so you can stream to multiple platforms at the same time.

At the moment, Twitch, YouTube, and Periscope are the only supported platforms. Adding a new one is easy, so I encourage you to create a PR if you need support for other platforms 😄

Here's the repo: https://github.com/HorusGoul/rtmp-social-multicast

GitHub logo HorusGoul / rtmp-social-multicast

Want to stream to Twitch, YouTube, Facebook, and/or Periscope at the same time? That's what this project allows you to do!

RTMP Social Multicast Server

Want to stream to Twitch, Youtube, or Periscope at the same time? That's what this project allows you!

Prerequisites

  • Git
  • Docker
  • Docker Compose

Getting Started

This guide will go through configuration and how to use it with OBS. Make sure to have all the prerequisites installed on your machine.

  1. Clone the repo
$ git clone https://github.com/HorusGoul/rtmp-social-multicast
Enter fullscreen mode Exit fullscreen mode
  1. Open the repo
$ cd rtmp-social-multicast
Enter fullscreen mode Exit fullscreen mode
  1. Create a .env file based on the .env.template file.
$ cp .env.template .env
Enter fullscreen mode Exit fullscreen mode
  1. Open and fill the .env file and fill it with the configuration for the platforms you want to stream.

⚠️  Make sure to use a strong RTMP_SECRET if you plan to expose the server to the internet.

⚠️  Avoid changing the RTMP_AUTH_SERVER variable unless you know what you're doing.

  1. Now let's launch everything with Docker Compose
$ docker-compose up
Enter fullscreen mode Exit fullscreen mode
  1. Time to stream! We'll…

Follow me on Twitter if you want to know more about my future projects, posts, or whatever I came up with!

Top comments (8)

Collapse
 
alexlealgalvao profile image
alexlealgalvao

Hello, how are you? I am a beginner and I am very happy with your example. when implementing here for study this error is returning me. What can it be?
"Starting rtmp-social-multicast_rtmp_1 ... done
Starting rtmp-social-multicast_rtmp-auth_1 ... done
Attaching to rtmp-social-multicast_rtmp-auth_1, rtmp-social-multicast_rtmp_1
rtmp_1 | standard_init_linux.go:219: exec user process caused: no such file or directory
rtmp-auth_1 | RTMP Auth Server listening on 19350
rtmp-social-multicast_rtmp_1 exited with code 1"

Collapse
 
horusgoul profile image
Horus Lugo

What operating system are you using? I can't reproduce the issue :(

Collapse
 
alexlealgalvao profile image
alexlealgalvao

windows with Docker installed. should i try on a linux ubuntu with docker installed?

Thread Thread
 
horusgoul profile image
Horus Lugo

Yeah, definitely, but before you switch operating systems, have you tried to run it with WSL 2? Maybe you can get the project to work in Windows with that -> docs.docker.com/docker-for-windows...

Thread Thread
 
alexlealgalvao profile image
alexlealgalvao

thanks for the tips .. I uploaded a machine with ubuntu and did the first tests ...
would like to test for facebook ... will it work?

Thread Thread
 
horusgoul profile image
Horus Lugo

You'll need to add support for it yourself because the project doesn't support Facebook at the moment. This shouldn't bee too difficult, it's a matter of replicating what we're doing with YouTube or Twitch but link it to Facebook.

Feel free to send a PR if you make it!

Collapse
 
abhinavmir profile image
abhinav the builder

Very cool indeed!

Collapse
 
horusgoul profile image
Horus Lugo

Thanks!!