现在开始在jetson nano板子上搭建nginx-rtmp服务器,Ubuntu18.04、aarch64的系统
以前折腾过一次,还是莫名其妙成功的,但是现在看来思路很清晰
目录
- nginx-rtmp服务器搭建
- rtmp模块配置
1. nginx-rtmp服务器搭建
这里参考的总章程是这个大佬的:
Ubuntu18.04下配置Nginx+RTMP+HLS+HTTPFLV服务器,实现点播/直播/录制功能(待修改)
1)安装需要的依赖,打开终端输入:
sudo apt-get install libpcre3 libpcre3-dev libssl-dev zlib1g-dev
2)接着为本次测试创建个文件夹,在**/etc目录下创建个rtmpserver文件夹**,把下载的源码都放在这里。
sudo mkdir /etc/rtmpserver
3)下载需要的源码,我选择直接点击蓝色的链接进行下载。习惯终端下载的也可以使用终端
得到的是这样三个压缩包
4)全部解压到之前新建的文件夹内,可以选择先解压到/home,然后终端输入命令进行移动,如图
5)这一步很重要……反正我忘记两次了
删除-Werror
6)回到rtmpserver文件夹内,打开终端输入:
sudo ./configure --with-openssl=../openssl-1.0.2k --add-module=../nginx-rtmp-module-master
7)成功完成后,输入:
sudo make
sudo make install
不出意外就初步搭建好了
2. rtmp模块配置
进入文件夹/usr/local/nginx,找到nginx.conf文件,终端打开该文件进行配置,添加一个rtmp节点,并配置监听端口,具体如下:
worker_processes 1;
events {
worker_connections 1024;
}
rtmp{
server{
listen 1935;
chunk_size 4096;
application vod{
play /opt/video/vod;
}
}
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8081;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
把一个名为480.mp4的视频文件放到/opt/video/vod目录下,打开VLC,选择媒体-》打开网络串流,输入如下链接:rtmp://192.168.1.11/vod/480.mp4
视频成功出来,表示成功!
如果要配置视频直播
再次编辑nginx.conf文件,在rtmp节点下添加一个live配置,在http节点下两个路由,具体如下:
worker_processes 1;
events {
worker_connections 1024;
}
rtmp{
server{
listen 1935;
chunk_size 4096;
application vod{
play /opt/video/vod;
}
#添加直播配置
application live{
live on;
}
}
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 8081;
server_name localhost;
#配置查看服务器状态路由
location /stat{
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
#配置状态信息来源
location /stat.xsl{
root /etc/rtmpserver/nginx-rtmp-module/;
}
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
其他细节可以参考大佬博客里的其他说明,我目前需要的就是这么多。
至此我负责的部分就做的差不多了,服务端启动方法:
启动java服务端:进入java_server的code
输入:java -Djava.ext.dirs=./lib server1
启动nginx-rtmp服务端:进入/usr/local/nginx/sbin
输入:sudo ./nginx
app客户端效果:
jetson nano服务器端效果:
虚服