1. 程式人生 > >FFmpeg+Nginx搭建RTMP直播推流服務

FFmpeg+Nginx搭建RTMP直播推流服務

    Nginx是優秀的開源並且可以新增外掛的服務端,其中就有開源的RTMP外掛nginx-rtmp-module實現了RTMP推流服務。

    專案地址為:

https://github.com/arut/nginx-rtmp-module

搭建思路:

    1. 採用nginx+nginx-rtmp-module搭建rtmp服務端

    2. ffmpeg作為推送端,將視訊流轉為adobe flash flv格式封裝後推送到nginx rtmp服務

Nginx服務端:

    nginx下載:

https://github.com/nginx/nginx/tree/branches/stable-1.10

    nginx-rtmp-module下載:

https://github.com/arut/nginx-rtmp-module.git

    編譯安裝:

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

    新增rtmp配置:

sudo vim /usr/local/nginx/conf/nginx.conf
rtmp {
        server {
                listen 1900;
                application myapp {
                        live on;
                }
        }
}

  啟動服務:

cd /usr/local/nginx/sbin
sudo ./nginx

FFmpeg推流端:

ffmpeg -re -i 1080.mp4 -f flv rtmp://192.168.8.137:1900/myapp/test

  這裡需要說明一下adobe flash flv預設的標準裡面並沒有h265編碼的支援,需要h265的話需要擴充套件flv的標準。