Thinkphp高仿陌陌网页直播

是种用
TP+Redis+Nginx+nginx-rtmp-module+ffmpeg+HLS +Swoole 的架方案

GitHub
地址:https://github.com/DOUBLE-Baller/momo

QQ群:274904994

示范地址:live.logde.cn

Bootstrap 1

Bootstrap 2Bootstrap 3

长介绍

后台nginx-rtmp 安装讲解

今昔关键有有限种rtmp
server,商业的与开源之。商业的较开源的支持的职能多,个人因需要选择吧

商的出FMS Wowza

开源RTMP server

  1. red5 java java用的于多,性能还是对的!

  2. crtmpserver c++
    支持多rtmp协议,移动装备与IPTV相关网络协议 http://www.rtmpd.com/ Erlyvideo
    erlong 有开源与商贸版本 https//github.com/erlyvideo/erlyvideo h

  3. aXeVideo haXe
    一个试验性的,轻量级的劳务器 http://code.google.com/p/haxevideo/

  4. FluorineFx .Net To be defined http://www/fluorinefx.com

  5. nginx-rtmp c nginx模块
    支持rtmp和HLS https://github.com/arut/nginx-rtmp-module

自身使用的尽管也第5单 Nginx-rtmp ,接下去讲解 安装过程。

安装 Nginx-rtmp

1、下载nginx-rtmp-module:
nginx-rtmp-module的官方github地址:https://github.com/arut/nginx-rtmp-module

采用命令: git clone https://github.com/arut/nginx-rtmp-module.git

将nginx-rtmp-module下载到linux中。

2、安装nginx: nginx的官方网站为:http://nginx.org/en/download.html

wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf nginx-1.8.1.tar.gz
cd nginx-1.8.1
./configure –prefix=/usr/local/nginx –add-module=../nginx-rtmp-module
–with-http_ssl_module
make && make install
此次默认安装目录为:/root,
add-module为下载的nginx-rtmp-module文件路径。
安装时或会见报错没有装openssl,需要执行命令:

yum -y install openssl openssl-devel

3、修改nginx配置文件:

vi /usr/local/nginx/conf/nginx.conf

参加以下内容:

rtmp {

server {    

    listen 1935;  #监听的端口  

    chunk_size 4000;    


    application hls {  #rtmp推流请求路径  
        live on;    
        hls on;    
        hls_path /usr/share/nginx/html/hls;    
        hls_fragment 5s;    
    }    
}    

}
hls_path需要而读而写的权能。 修改http中的server模块:

server {
listen 81;
server_name localhost;

#charset koi8-r;  

#access_log  logs/host.access.log  main;  

location / {  
    root   /usr/share/nginx/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;  
}  

本矣,root可以跟据自己之求来改的。 然后启动nginx:

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

4、开始推流 做好以上之配备后,就好开推流了,我们可使obs来推流。

Bootstrap 4

以装->串流 中填入信息:URL为
rtmp://xxx:1935/hls,xxx为您的服务器的IP地址,hls是用来存放在流媒体的。
秘钥可以不管填写一个,用来播放的上识别播放哪个流媒体的,例如填写test等。
填写了毕后,点击开始串流,就证实我们的流媒体服务器搭建成功了。

5、观看直播(拉流)
观看直播就比较简单了,可以省略的采取h5的vedio标签就是好见见了。
可以看http://xxx:81/hls/mystream.m3u8来见到直播,其中xxx为你的服务器IP地址, 或者采取

Your browser does not support HTML5 video.

与齐, xxx写的是您服务器IP地址。
然后下手机看这个网站即可知看出直播了。延迟大约在20S左右。
(在iOS的safari浏览器中可以健康观看) 写以结尾 为什么延迟
那么高呢?这是坐服务器将见到频流切断成一个个有些之以.ts结尾的文件。 

Bootstrap 5

假设我辈访问的凡.m3u8文书,这个文件内容是用一个个ts文件串联起来的,这就是达成了一个播的功用,所以看起会时有发生死死的延期

Bootstrap 6

设降低延迟吧无是从未法,可以设置切片生成的分寸与走访的快,但是这样大大加了服务器的下压力。
当然,我们呢得据此rtmp拉流工具(VLC等)来拘禁该直播,延迟大体上在2-5S横,拉流地址和推流地址一样。

后台一键安装 直接访问入口即可 初始admin admin

以Bootstrap3精确定制的lyui除了有100%bootstrap体验外,融合了双重多适合国人下的前端组建。并且相同仿代码适应多屏幕大小。

相关文章