本文主要是介绍nginx-rtmp-module模块实现视频点播的示例代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《nginx-rtmp-module模块实现视频点播的示例代码》本文主要介绍了nginx-rtmp-module模块实现视频点播,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习...
预置条件
- 配置点播服务器
192.168.246.102
, 配置好网卡使其能上网, 安装nginx和nginx-rtmp-module模块,开放端口80, 1935。 - 配置远程服务器
192.168.246.103
,配置好网卡使其能上网,安装nginx模块,开放端口80。 - 播放测试工具: VLC media player
Nginx点播基本配置
配置点播服务器 192.168.246.102
# 配置worker的用户 # 如果不配置此项,默认为nobody,视频因权限问题无法播放 user www; .js.. rtmp { server { listen 1935; application vod { play /var/rec; } } }
添加www用户
# groupadd www # useradd -g www www
重启Nginx
# systemctl restart nginjsx
创建/var/rec
目录
# mkdir /var/rec
把文件flv或mp4文件放置在/var/recChina编程
目录下,并修改权限
# chown www:www /var/rec -R # cd /var/rec # ls abcd-1703474265-2023-12-25-11_17_45.flv abcd-1703474338-2023-12-25-11_18_58.flv
使用 VLC media player
点击菜单 “媒体” - “打开网络串流”, 输入 URL
rtmp://192.168.246.102/vod/abcd-1703474265-2023-12-25-11_17_45.flv
注意:如果 /var/rec
有下级目录,播放URL需要使用两个斜杠
比如,要播放 /var/rec/flv
下的flv文件 abc.flv
输入URL为 rtmp://192.168.246.102/vod//flv/abc.flv
点播远程文件
点播服http://www.chinasem.cn务器也可以播放远程服务器的资源
配置远程服务器192.168.246.103
http { ... server { listen 8081; server_name localhost; location / { root /www; } } }
开放8081端口
# firewall-cmd --zone=public --add-port=8081/tcp --permanent # firewall-cmd --reload
创建目录 /www/rec
, 并把视频文件放在此目录下
# mkdir /www/rec # ... 此处省略了移动文件步骤 # cd /www/rec # ls abcd-1703474051-2023-12-25-11_14_11.flv abcd-1703474066-2023-12-25-11_14_26.flv
配置点播服务器 192.168.246.102
rtmp { server { listen 1935; application vod2 { play http://192.168.246.103:8081/rec; } } }
使用 VLC media player
点击菜单 “媒体” - “打开网络串流”, 输入 URL
rtmp://192.168.246.102/vod2/abcd-1703474066-2023-12-25-11_14_26.flv
注意:如果 /www/rec
有下级目录, 播放URL需要使用两个斜杠
比如,要播放 /var/rec/flv
下的flv文件 abc.flv
输入URL为&pythonnbsp;rtmp://192.168.246.102/vod2//flv/abc.flv
指定多个播放位置
配置点播服务器 192.168.246.102
rtmp { server { listen 1935; application vod3 { # /var/abc 目录不存在 play /var/abc /var/rec http://192.168.246.103:8081/rec; } } }
使用 VLC media player播放 rtmp://192.168.246.102/vod3/abcd-1703474338-2023-12-25-11_18_58.flv
- 由于目录
/var/abc
不存在, 尝试播放目录/var/rec
下的文件; - 可以成功播放目录
/var/rec
下的文件abcd-1703474338-2023-12-25-11_18_58.flv
, 于是不再从后面位置查找要播放的文件。
参考
https://github.com/arut/nginx-rtmp-module
到此这篇关于nginx-rtmp-module模块实现视频点播的文章就介绍到这了,更多相关nginx-rtmp-module 视频点播内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!
这篇关于nginx-rtmp-module模块实现视频点播的示例代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!