nginx-搭建直播平臺

演示環境


搭建nginx-rtmp直播服務器-OBS錄製推流-VLC視頻流播放

  1. 首先編譯安裝nginx
    [root@localhost ~]# tar xvf nginx-1.8.1.tar.gz 
    [root@localhost ~]# unzip nginx-rtmp-module-master.zip 
    [root@localhost ~]# cd nginx-1.8.1
    [root@localhost ~]# yum -y install zlib zlib-devel openssl* pcre pcre-devel gd-devel #nginx的依賴包
    [root@localhost nginx-1.8.1]# ./configure --add-module=../nginx-rtmp-module-master
    [root@localhost nginx-1.8.1]# make -j 4 && make install
  2. 測試是否安裝成功
    [root@localhost nginx-1.8.1]# cd /usr/local/nginx
    [root@localhost nginx ]# ./sbin/nginx #啓動服務

    在瀏覽器中輸入虛擬機的IP或者localhost出現如下則說明編譯安裝成功
    nginx-搭建直播平臺

  3. 直播服務的配置
    [root@centos6(cyn) nginx ]# vim /usr/local/nginx/conf/nginx.conf#在配置文件最後加上這段rtmp的配置
    rtmp { #rtmp配置的塊,這個地方就是直播的配置的根
        server { #服務器的實例
                    listen 1935;#監聽並且接受的端口
                    application mytv { #應用/實例的三種類型(1)rtmp錄播(vod),(2)rtmp直播(live),(3)hls直播(hls)
                            live on; #開啓直播直播模式,一對多廣播
                            hls on; #開啓直播
                            hls_path /usr/local/nginx/html/hls;#錄製視頻文件的目錄/路徑
                            hls_fragment 2s;#後面接時間,用來設置每一個塊的大小。默認是5秒。只能爲整數
                    }
            }
    }

    下面是一些hls的配置,可根據自己的需求來配置

    hls_playlist_length:  設置播放列表的長度,單位是秒
    hls_sync:  音視頻的同步時間
    hls_continuous:  on|off 設置連續模式,是從停止播放的點開始還是直接跳過
    hls_nested:  on|off 默認是off。打開後的作用是每條流自己有一個文件夾
    hls_base_url: 設置基準URL,對於m3u8中使用相對URL有效
    hls_cleanup:  on|off 默認是開着的,是否刪除列表中已經沒有的媒體塊
    hls_fragment_naming: sequential(使用增長式的整數命名) | timestamp(使用媒體塊的時間戳) | system(使用系統時間戳)命名方式 
    hls_fragment_naming_granularity: 如果使用時間戳命名時時間戳的精度
    hls_fragment_slicing:  plain(媒體塊達到需要的duration就換)|aligned(當到達的數據庫塊時幾個duration) 
  4. 創建視頻文件的目錄/路徑
    [root@localhost nginx]# mkdir /usr/local/nginx/html/hls
  5. 重新啓動服務,關閉防火牆及selinux
    [root@localhost nginx]#./sbin/nginx -s stop
    [root@localhost nginx]#./sbin/nginx
    [root@localhost nginx]# iptables -F
    [root@localhost nginx]# setenforce 0
  6. 到這裏服務器已經搭建完畢了,我們開始推流設置
    nginx-搭建直播平臺
    點擊文件->設置->流,在流類型裏選擇自定義流媒體服務器,在URL中填入rtmp://172.18.252.106/mytv(IP加實例名稱),然後在流名稱中填入一個名字(任意),obs設置已經完成
    nginx-搭建直播平臺
    點擊開始推流,在左下角的來源中可以選擇你要直播的內容
  7. 接下來去vlc media studio中設置接受流媒體
    nginx-搭建直播平臺
    點擊媒體->打開網絡串流->網絡,在URL中輸入rtmp://172.18.252.106/mytv/test(服務器IP+應用名稱+流名稱),點擊播放即可
  8. 至此一個obs推流-nginx-rtmp的hls直播-vlc串流的直播平臺搭建完成,這個時候在瀏覽器中輸入IP+stat
    nginx-搭建直播平臺
    會顯示我們的應用名稱(mytv),live streames (流媒體的個數),流名稱(test)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章