在上一篇帖子中,完成了推流与拉流操作,但是项目中,很多时候不想部署一台PC去当小型服务器,所以我们的英蓓特MaaXBoard板
卡是可以承担这个任务的。推流、流媒体服务器都用它,实现监控的一端推流到自身板卡,然后再局域网内都可以访问查看实时视频。
2、功能
跟上次差不多,就是源的选择可以是监控设备,视频流、本地文件等,强大的ffmpeg都可以接收
3、步骤
本次将上述的ffmpeg、nginx+rtmp流媒体服务器移植到arm-linux,把他部署到前端设备,局域网内都可以访问了
3.1、前期准备
启动系统后登录,先ping一下域名看看能否通公网,检查下上次装的ffmpeg:输入ffmpeg -V有输出版本表示正常
由于系统上不是所有东西都能apt-get ,或者是某些时候源的问题,所以本次的nginx+rtmp采用编译方式安装,
3.2、安装所需的库文件以支持依赖关系
apt-get update //先更新一下源 apt-get update (所有操作均在root账户下操作,所以不加sodu了)apt-get install libpcre3 libpcre3-dev libssl-dev zlib1g-dev
复制代码3.3、下载所需的nginx+rtmp源码
可以参考:https://www.cnblogs.com/daner1257/p/10549232.html 或者找找资源,这个开源的随处开源下载到
自己 mkdie filename 一个目录,将压缩包传到debian上并解压,得到如下的源码
解压命令
tar -xvf filename // 这个是解压tar.zg的unzip filename //这个是解压zip的 unrar -x filename //这个是解压rar的 一般来说系统上unzip和unrar没有安装,可以自己apt-get unzip unrar -y
复制代码先看看gcc怎么样,执行gcc -v,没有的话要安装一下
执行 : apt-get install gcc -y
执行 cd nginx-1.19.1 进入目录下,配置configuer文件,执行以下命令,目的是给nginx添加rtmp模块(注意自己的路径)
./configure --add-module=/home/ydtest/nginx-http-flv-module-master
复制代码配置完成后接着就可以编译和安装了,命令如下
apt-get install makemake && make install
复制代码然后配置nginx.conf文件:cd conf进入到配置文件目录,执行vim nginx.conf 配置如下,增加rtmp模块
3.5、运行
执行如下命令运行nginx,如果没有报错,再用ps -ef看看进程启动了就是得了,-c后面表示引入nginx指定的配置文件
/ytest/nginx-1.19.1/objs/nginx -c /ytest/nginx-1.19.1/conf/nginx.conf
复制代码ffmpeg -i ./dengziqi.mp4 -c:v libx264 -c:a aac -strict -2 -f flv -s 640x320 -q 10 rtmp://192.168.1.90:1935/live/mv
复制代码live对应conf配置文件的live模块,mv对应推流命令的mv这是密钥,如果-i 参数输入不是mp4,应换成对应的,比如udp://xxx:xxx端口
end