日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > 綜合技術(shù) > 網(wǎng)易視頻云:用Nginx搭建flv,mp4,hls流媒體服務(wù)器

網(wǎng)易視頻云:用Nginx搭建flv,mp4,hls流媒體服務(wù)器

來源:程序員人生   發(fā)布時(shí)間:2016-06-08 09:03:31 閱讀次數(shù):5099次

網(wǎng)易視頻云是網(wǎng)易傾力打造的1款基于云計(jì)算的散布式多媒體處理集群和專業(yè)音視頻技術(shù),提供穩(wěn)定流暢、低時(shí)延、高并發(fā)的視頻直播、錄制、存儲(chǔ)、轉(zhuǎn)碼及點(diǎn)播等音視頻的PAAS服務(wù),在線教育、遠(yuǎn)程醫(yī)療、文娛秀場(chǎng)、在線金融等各行業(yè)及企業(yè)用戶只需經(jīng)過簡(jiǎn)單的開發(fā)便可打造在線音視頻平臺(tái)。今天,網(wǎng)易視頻云就給大家分享關(guān)于用Nginx搭建flv,mp4,hls流媒體服務(wù)器的技術(shù)干貨!

模塊:nginx_mod_h264_streaming(支持h264編碼MP4格式的視頻)

模塊:http_flv_module (支持flv)

模塊:http_mp4_module (支持mp4)

模塊: nginx-rtmp-module (支持rtmp協(xié)議,也支持HLS)

(1)模塊下載和解壓

wget http://nginx.org/download/nginx⑴.6.0.tar.gz

wget http://h264.code-shop.com/download/nginx_mod_h264_streaming⑵.2.7.tar.gz

wget http://sourceforge.net/projects/pcre/files/pcre/8.35/pcre⑻.35.tar.gz

wget http://zlib.net/zlib⑴.2.8.tar.gz

wget http://www.openssl.org/source/openssl⑴.0.1g.tar.gz

wget -O nginx-rtmp-module.zip https://github.com/arut/nginx-rtmp-module/archive/master.zip

unzip nginx-rtmp-module.zip

tar -zxvf nginx⑴.6.0.tar.gz

tar -zxvf nginx_mod_h264_streaming⑵.2.7.tar.gz

tar -zxvf pcre⑻.35.tar.gz

tar -zxvf zlib⑴.2.8.tar.gz

tar -zxvf openssl⑴.0.1g.tar.gz

(2)配置命令,會(huì)生成makefile文件

./configure \

--prefix=/usr/local/nginx \

--add-module=../nginx_mod_h264_streaming⑵.2.7 \

--add-module=../nginx-rtmp-module \

--with-http_flv_module \

--with-http_mp4_module \

--with-http_stub_status_module \

--with-http_ssl_module \

--with-pcre=../pcre⑻.35 \

--with-zlib=../zlib⑴.2.8 \

--with-debug

(3)編譯和安裝

make

make install

4)問題解決

【1】如果在configure進(jìn)程中出現(xiàn)以下毛病:

/root/nginx_mod_h264_streaming⑵.2.7/src/ngx_http_streaming_module.c: In function ‘ngx_streaming_handler’:

/root/nginx_mod_h264_streaming⑵.2.7/src/ngx_http_streaming_module.c:158: error: ‘ngx_http_request_t’ has no member named ‘zero_in_uri’

make[1]: *** [objs/addon/src/ngx_http_h264_streaming_module.o] Error 1

make[1]: Leaving directory `/root/nginx-0.8.54'

make: *** [build] Error 2

那末將src/ngx_http_streaming_module.c文件中以下代碼刪除或是注釋掉就能夠了:

/* TODO: Win32 */

if (r->zero_in_uri)

{

return NGX_DECLINED;

}

如果你沒有對(duì)這個(gè)文件做個(gè)更改,那末應(yīng)當(dāng)在源碼的第157⑴61行。這個(gè)問題是由于版本緣由引發(fā),在此不再討論。

修改完以后,記得先履行make clean,然后再進(jìn)行重新履行configure、make,最后make install。

【2】如果在編譯進(jìn)程中出現(xiàn)以下毛病:

cc1: warnings being treated as errors

那末修改/nginx⑴.6.0/objs/Makefile文件

CFLAGS =  -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Werror -g  -D_LARGEFILE_SOURCE -DBUILDING_NGINX -I../nginx-rtmp-module-master

把上面的 -Werror去掉,不把warnning當(dāng)作error處理

(5)Nginx的配置

#user  nobody;

worker_processes  1;

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events {

worker_connections  1024;

}

rtmp {

server {

listen 1935;

chunk_size 4000;

# video on demand for flv files

application vod {

play /usr/local/nginx/html/flv;

}

# video on demand for mp4 files

application vod2 {

play /usr/local/nginx/html/mp4;

}

application hls {

live on;

hls on;

hls_path /tmp/hls;

}

# MPEG-DASH is similar to HLS

application dash {

live on;

dash on;

dash_path /tmp/dash;

}

}

}

http {

include       mime.types;

default_type  application/octet-stream;

#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

#                  '$status $body_bytes_sent "$http_referer" '

#                  '"$http_user_agent" "$http_x_forwarded_for"';

#access_log  logs/access.log  main;

sendfile        on;

#tcp_nopush     on;

#keepalive_timeout  0;

keepalive_timeout  65; 

#gzip  on;

server {

# in case we have another web server on port 80

listen       8080;

server_name  localhost;

#charset koi8-r;

#access_log  logs/host.access.log  main; 

location / {

root   html;

index  index.html index.htm;

}

#error_page  404              /404.html;

# redirect server error pages to the static page /50x.html

#

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

location ~ \.mp4$ {

mp4;

}

location ~ \.flv$ {

flv;

}

# This URL provides RTMP statistics in XML

location /stat {

rtmp_stat all;

rtmp_stat_stylesheet stat.xsl;

}

location /stat.xsl {

# XML stylesheet to view RTMP stats.

# Copy stat.xsl wherever you want

# and put the full directory path here

root /var/www/;

}

location /hls {

# Serve HLS fragments

types {

application/vnd.apple.mpegurl m3u8;

video/mp2t ts;

}

#where the m3u8 and ts files are

alias /usr/local/nginx/html/hls;           

#live streaming setting           

#root /tmp;

#add_header Cache-Control no-cache;

}

location /dash {

# Serve DASH fragments

root /tmp;

add_header Cache-Control no-cache;

}

}

}

(6)用ffmpeg生成測(cè)試序列

【1】對(duì)mp4文件,生成moov信息前移的mp4格式,合適流媒體播放。

ffmpeg -i /home/administrator/Videos/Amelia_720p.mp4 -c:v libx264 -c:a libvo_aacenc -f mp4 -movflags faststart /home/administrator/Videos/moovfront.mp4

【2】對(duì)flv文件,用flvmeta工具在metadata中注入關(guān)鍵幀的信息,支持隨便拖動(dòng)播放。

ffmpeg -i/home/administrator/Videos/Baroness.mp4 -vcodec libx264 -acodec libvo_aacenc -b:a 128k -ar 44100 -ac 2 -f flv /home/administrator/Videos/Baroness.flv

flvmeta -U -m -k /home/administrator/Videos/Baroness.flv /home/administrator/Videos/Baroness_meta.flv

【3】對(duì)flv的播放,或直接生成f4v格式的文件。

ffmpeg -i /home/administrator/Videos/sample/vc1_1080p.mkv -acodec libfdk_aac -ac 2 -b:a 128k -ar 48000 -vcodec libx264 -pix_fmt yuv420p -profile:v main -level 32 -b:v 1000K -r 29.97 -g 30 -s 960x540 -f f4v /home/administrator/Videos/hddvd_1000k.f4v

(7)Nginx啟動(dòng),重啟,關(guān)閉命令

start nginx 開啟  

nginx -s stop 快速關(guān)閉   

nginx -s quit 完全關(guān)閉   

nginx -s reload 修改過配置文件,快速關(guān)閉舊的,開啟新服務(wù)    

nginx -s reopen 重新打開日志文件  

[停止操作]

停止操作是通過向nginx進(jìn)程發(fā)送信號(hào)來進(jìn)行的

步驟1:查詢nginx主進(jìn)程號(hào)

ps -ef | grep nginx

在進(jìn)程列表里 面找master進(jìn)程,它的編號(hào)就是主進(jìn)程號(hào)了。

步驟2:發(fā)送信號(hào)

從容停止Nginx:

kill -QUIT 主進(jìn)程號(hào)

快速停止Nginx:

kill -TERM 主進(jìn)程號(hào)

強(qiáng)迫停止Nginx:

pkill ⑼ nginx

另外, 若在nginx.conf配置了pid文件寄存路徑則該文件寄存的就是Nginx主進(jìn)程號(hào),如果沒指定則放在nginx的logs目錄下。有了pid文 件,我們就不用先查詢Nginx的主進(jìn)程號(hào),而直接向Nginx發(fā)送信號(hào)了,命令以下:

kill -信號(hào)類型 '/usr/nginx/logs/nginx.pid'

[平滑重啟]

如果更改了配置就要重啟Nginx,要先關(guān)閉Nginx再打開?不是的,可以向Nginx 發(fā)送信號(hào),平滑重啟。

平滑重啟命令:

kill -HUP 主進(jìn)程號(hào)或進(jìn)程號(hào)文件路徑

或使用 

/usr/nginx/sbin/nginx -s reload

注意,修改了配置文件后最好先檢查1下修改過的配置文件是不是正 確,以避免重啟后Nginx出現(xiàn)毛病影響服務(wù)器穩(wěn)定運(yùn)行。判斷Nginx配置是不是正確命令以下:

nginx -t -c /usr/nginx/conf/nginx.conf

/usr/nginx/sbin/nginx -t

(8)播放測(cè)試

啟動(dòng)nginx后測(cè)試:

http://192.168.1.105/player.swf?type=http&file=test1.flv

說明: #我的ip是192.168.1.105

#player.swf是我的JW Player播放器

#http是表示居于http分發(fā)方式

#test1.flv是我的flv視頻文件

[flash]

http://localhost:8080/mediaplayer/player.swf?type=http&file=../mp4/HaroldKumar.mp4

http://localhost:8080/mediaplayer/player.swf?type=http&file=../flv/Baroness.flv

[hls --> flash]

http://localhost:8080/jwplayer/HLSprovider/test/jwplayer6/index2.html

[hls]

http://10.240.155.183:8080/hls/movie.m3u8

[rtmp --> http]

http://10.240.155.183:8080/flowplayer/index2.html

[live stream]

./ffmpeg -loglevel verbose -re -i /home/administrator/Videos/sample/h264_720p_hp_5.1_6mbps_ac3_unstyled_subs_planet.mkv  -vcodec libx264 -vprofile baseline -acodec libmp3lame -ar 44100 -ac 2 -f flv rtmp://localhost:1935/hls/movie

更多技術(shù)分享,請(qǐng)關(guān)注網(wǎng)易視頻云官方網(wǎng)站(http://vcloud.163.com/)網(wǎng)易視頻云官方微信(vcloud163)進(jìn)行交換與咨詢。

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 在线黄色毛片 | 天天综合网天天综合色 | 一级黄色在线播放 | 久久久久久久久久av | 久久视频在线看 | 黄色毛片一级片 | ree性亚洲88av| 久久国产精品久久久久久 | 黄a视频 | 日韩小视频 | 中文字幕偷拍 | 日韩欧美自拍 | 成人免费视频网站 | 国产精品久久99 | 国产精品久久久久久久久久免费 | 日本美女一区二区三区 | 国产精品免费一区二区三区四区 | 国产最新精品视频 | 欧美在线1| 久久国产综合 | 久久久精品一区二区三区 | 成人黄色小视频 | 黄色免费网站 | 久久av一区二区三区亚洲 | 欧美成人高清视频 | 国产精品一二三 | av在线不卡网站 | 在线一区二区三区四区 | av入口 | 一区免费看 | 国产欧美一区二区视频 | 欧美一区二区三区在线观看视频 | 亚洲福利在线观看 | 亚洲色图欧洲色图 | 亚洲一区二区三区四区五区中文 | 不卡一二三 | 亚洲欧洲无码一区二区三区 | 国产精品成人在线观看 | 欧美日韩免费在线视频 | 成人国产免费视频 | 在线免费av网址 |