
The certificate must be for the domain that you have specified in the server_name statement. Ssl_certificate_key /path/to/privkey.pem To configure the RTMP service, you need to add an RTMP section to your Nginx configuration file, which should be /etc/nginx/nf by default.Īdd an RTMP section to the conf file as follows: rtmp block with the following statements: ssl_certificate /path/to/certificate.pem Start and enable Nginx systemctl start nginx configure -with-http_ssl_module -add-module=./nginx-rtmp-module
Rtmp server for windows update#
Run the configuration script to add SSL and the RTMP module Update the -add-module file path as necessary to point to where you cloned the nginx-rtmp-module. Move into your downloaded Nginx folder cd nginx-1.17.0/ Get the latest version of Nginx from here wget Ĭlone the Nginx RTMP Module from here git clone
Rtmp server for windows install#
Install dependencies yum install -y wget git unzip perl perl-devel perl-ExtUtils-Embed libxslt libxslt-devel libxml2 libxml2-devel gd gd-devel PCRE-devel GeoIP GeoIP-develĪdd ffmpeg GPG key, and install ffmpeg rpm -v -import Ĭreate or go to a working directory cd /usr/local/src/ Install EPEL repository yum install -y epel-release Install CentOS development tools yum groupinstall -y 'Development Tools Nginx + RTMP can be configured on other Linux distributions and follows the same instructions, using the other distributions' package manager and default file paths. This guide uses CentOS 7 as the operating system of the server. RTMP stands for Real-Time Messaging Protocol and is a common, standardized way many services (such as YouTube, Twitch, etc.) use, or at least offer, to broadcast video online. Reducing the bitrate of the video encoding can reduce your bandwidth usage at the cost of video quality. The exact bandwidth uses on the number of streams, as well as their bitrate. The RTSP protocol supports the TCP transport protocol, that allows to receive packets even when there's a NAT/firewall between server and clients, and supports encryption (see Encryption).Whether you want a server to act as a relay for you to be able to stream to multiple services at once, re-encode your video stream into different formats, resolutions, or bitrates, or to stream from pre-recorded videos, a good method to do so is with a server running Nginx compiled with the RTMP module. To change the transport protocol, you have to tune the configuration of your client of choice. TCP: the most versatile, does support encryption.UDP-multicast: allows to save bandwidth when clients are all in the same LAN, by sending packets once to a fixed multicast IP.UDP: the most performant, but doesn't work when there's a NAT/firewall between server and clients.RTSP is a standardized protocol that allows to publish and read streams in particular, it supports different underlying transport protocols, that are chosen by clients during the handshake with the server: paths is replicated for every HLS muxer and shows the name and state of every HLS muxerĪ performance monitor, compatible with pprof, can be enabled with the parameter pprof: yes then the server can be queried for metrics with pprof-compatible tools, like:.Reload the configuration without disconnecting existing clients (hot reloading)ĭownload and extract a precompiled binary from the release page.Run custom commands when clients connect, disconnect, read or publish streams.Redirect readers to other RTSP servers (load balancing).Query and control the server through an HTTP API.Serve multiple streams at once in separate paths.
Rtmp server for windows windows#
Compatible with Linux, Windows and macOS, does not require any dependency or interpreter, it's a single executable.For instance, it's possible to publish a stream with RTSP and read it with HLS

