Nginx搭建簡單直播服務(wù)器
前言
使用 Nginx + Nginx-rtmp-module 在Ubuntu 中搭建簡單的 rtmp 推流直播服務(wù)器。
服務(wù)器環(huán)境
Ubuntu 16.04
相關(guān)概念
- RTMP: RTMP協(xié)議是Real Time Message Protocol(實時信息傳輸協(xié)議)的縮寫,它是由Adobe公司提出的一種應用層的協(xié)議。依賴于flash播發(fā)器來拉流。
 
請求樣式:rtmp://xxx.xxx.xxx.xxx:1935/ttest(命名空間)/test(推流碼)
- HLS:蘋果出的一套Http Live Streaming協(xié)議,它的工作原理簡單來說就是把一段視頻流,分成一個個小的基于HTTP的文件來下載。通過讀取.m3u8文件讀取一個一個的視頻流片段。
 
請求樣式:http://xxx.xxx.xxx.xxx/video(nginx配置路由)/test.m3u8
- nginx-rtmp-module: 基于Nginx的流媒體Server
 
測試工具
1. 推流工具:易推流(ios)
2.拉流工具:VLC media player(pc)
實現(xiàn)步驟
一、安裝或升級Nginx
- sudo apt-get install software-properties-common python-software-properties
 - sudo add-apt-repository ppa:nginx/stable
 - sudo apt-get update
 - sudo apt-get install nginx
 
二、安裝nginx-rtmp-module
- sudo apt-get install libnginx-mod-rtmp
 
三、編寫nginx配置
1. /etc/nginx/nginx.conf
- user ubuntu;
 - rtmp{
 - server{
 - listen 1935;
 - chunk_size 4000;
 - application test{
 - live on;
 - record off;
 - hls on;
 - hls_path /usr/local/src/nginx/html/test;
 - hls_fragment 1s;
 - hls_playlist_length 3s;
 - }
 - }
 - }
 
2. /etc/nginx/sites-enables/default
- location /video/ {
 - alias /usr/local/src/nginx/html/godeyeTest/;
 - # 余下三行配置是解決跨域問題
 - add_header Access-Control-Allow-Origin *;
 - add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
 - add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
 - }
 
四、新建路徑,重啟nginx服務(wù)
1. mkdir 配置中的路徑(/usr/local/src/nginx/html/test)
2. serive nginx restart















 
 
 


 
 
 
 