centos7 Nginx+rtmp 搭建流媒體服務器

一. gcc 安裝
安裝 nginx 須要先將官網下載的源碼進行編譯,編譯依賴 gcc 環境,若是沒有 gcc 環境,則須要安裝:

yum -y install gcc gcc-c++

二. PCRE pcre-devel 安裝

PCRE(Perl Compatible Regular Expressions) 是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx 的 http 模塊使用 pcre 來解析正則表達式,因此須要在 linux 上安裝 pcre 庫,pcre-devel 是使用 pcre 開發的一個二次開發庫。nginx也須要此庫。命令:

yum install -y pcre pcre-devel

三. zlib 安裝

zlib 庫提供了不少種壓縮和解壓縮的方式, nginx 使用 zlib 對 http 包的內容進行 gzip ,因此須要在 Centos 上安裝 zlib 庫。

yum install -y zlib zlib-devel

四. OpenSSL 安裝

OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及 SSL 協議,並提供豐富的應用程序供測試或其它目的使用。nginx 不只支持 http 協議,還支持 https(即在ssl協議上傳輸http),因此須要在 Centos 安裝 OpenSSL 庫。

yum install -y openssl openssl-devel


5、安裝nginx 跟rtmp模塊

1.官網下載直接下載.tar.gz安裝包,地址:https://nginx.org/en/download.html
wget https://nginx.org/download/nginx-1.15.8.tar.gz

2.解壓

tar -zxvf nginx-1.13.8.tar.gz

3. 下載rtmp 模塊, nginx-rtmp-module的官方github地址:https://github.com/arut/nginx-rtmp-module
git clone https://github.com/arut/nginx-rtmp-module.git
4. 安裝nginx跟rtmp模塊

./configure --prefix=/usr/local/nginx  --add-module=../nginx-rtmp-module  --with-http_ssl_module

     

make & make install

6.修改配置文件。進入 /usr/local/nginx/conf 文件夾。增添rtmp部分
/usr/local/nginx/conf/nginx.conf

    rtmp {      
        server {   
            listen 1935;  #監聽的端口
            chunk_size 4000;     
            application hls {  #rtmp推流請求路徑
                live on;     
            }   
        }   
    }


7.重啓電腦。進入 /usr/local/nginx/sbin文件夾,執行./nginx啓動nginx
6、OBS推流
1.設置推流地址

rtmp://192.168.1.38:1935/hls
流名稱:test
這裏說明下,rtmp的URL基礎格式 rtmp://nginx_host[:nginx_port]/application_name/stream_name


2.推流

媒體源添加攝像機地址。而後點擊推流。

3.vlc串流地址輸入rtmp://192.168.1.39:1935/hls/testhtml

 

 

 

=============================================================================linux

自動搭建流服務器的腳本nginx

==============================================================================c++

yum install git
yum -y install gcc gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
wget https://nginx.org/download/nginx-1.15.8.tar.gz
git clone https://github.com/arut/nginx-rtmp-module.git
tar -xvf nginx-1.15.8.tar.gz
cd nginx-1.15.8
./configure --prefix=/usr/local/nginx  --add-module=../nginx-rtmp-module  --with-http_ssl_module
make
make installgit

cat >> /usr/local/nginx/conf/nginx.conf <<END
rtmp {      
    server {   
        listen 1935;
        chunk_size 4000;     
        application hls {
        live on;     
        }   
    }   
}
ENDgithub

cd /usr/local/nginx/sbin
./nginx
 正則表達式

systemctl restart firewalld.service
systemctl enable firewalld.service
firewall-cmd --set-default-zone=public
firewall-cmd --add-port=22/tcp --permanent
firewall-cmd --add-port=1935/tcp --permanent
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload算法

相關文章
相關標籤/搜索