RV1126+FFMPEG多路码流监控项目——测试
前面几章奖这个项目的代码都写完了,现在可以进行编译,放进板子里面测试了,编译烧录步骤我这里就不再赘述了,VI模块内容详细说了。
1.编译后的程序移植进板子后,放在userdata文件夹下,运行命令:
./rv1126_ffmpeg_main 0 rtmp://电脑IP:1935/live/01 0 rtmp://电脑IP:1935/live/02自己电脑IP不知到的,win+r,cmd,输入ipconfig,查看以太网的IPv4的地址,然后在板子上ping一下:
ping IP地址这就是ping成功了。
但此时还不能直接运行,会提示少几个库找不到
根据报错提示,我们在虚拟机中找到这些库,命令是:
find . -name "库的名字"然后将这些库移植进板子的usr/lib的文件夹
2.Nginx编译集成了 rtmp 模块,专门用来做 RTMP 直播中转服务。 执行start ./nginx.exe就是启动流媒体服务程序。
开始菜单搜索框输入PowerShell,点击「Windows PowerShell」打开,手动切换到 nginx 目录
start .\nginx.exe执行这个命令,启动 nginx 后,程序会持续监听 1935 端口,接收 RV1126 发过来的 H.264 视频码流,把视频数据缓存到服务器内部。不启动 nginx:端口无人监听,开发板推流会连接失败,没有任何视频数据。
再打开两个PowerShell,进入ffmpeg中的bin文件夹,
准备好这两个命令,
此时板子的终端,准备好执行命令,开始执行之后,PowerShell也开始执行,就可以显示出两路画面。
如果没有显示出画面,就将专用网络的防火墙关了,再重新执行一遍程序,一般来说就可以了。
成功执行之后,可以永久放行端口就不用反复开关防火墙
- 打开「控制面板→系统和安全→Windows Defender 防火墙→高级设置」
- 左侧选择「入站规则」→ 右侧「新建规则」
- 规则类型选端口,下一步
- 选择 TCP,特定本地端口填写
1935,下一步 - 勾选「域、专用、公网」全部选项,下一步
- 名称填写
RTMP 1935,完成创建
出站规则也要新建一条一模一样的
同样新建规则,TCP 1935 端口,放行出站,保证 ffplay 播放器向外拉流不受拦截。
以上就是整个项目的执行顺序
