使用webrtc RTSP 视频实时预览
一、首先将海康的摄像头 将视频编码设置成 h264编码 否则浏览器无法播放
二、 在github 发布页面根据需要的平台选择相应的包下载
https://github.com/mpromonet/webrtc-streamer/releases
三、方式1
docker run -d --restart=always -p 8000:8000 -it mpromonet/webrtc-streamer -o -s -w ../
但是此方式的弊端有两点:
1、前端在设置访问地址的时候 只能天localhost 或者 127.0.0.1 填本机ip会报错
2、还会阻塞接口
四、方式2
直接下载对应包本地部署
这里下载6.0版本 最新7.0版本会报缺失GLIBC_包安装起来还是有点蛮烦的 而且最新的包一般不稳定 所以这里推荐使用6.0版本
下载地址
https://github.com/mpromonet/webrtc-streamer/releases/download/v0.6.0/webrtc-streamer-v0.6.0-Linux-x86_64-Release.tar.gz
下载以后解压缩
tar -zxvf webrtc-streamer-v0.6.0-Linux-x86_64-Release.tar.gz
mv webrtc-streamer-v0.6.0-Linux-x86_64-Release webrtc-streamer
启动
root@hicourt-System-Product-Name:/home/xuguangzong/Workspace/webrtc-streamer# ./webrtc-streamer -o -s -w ../
由于这样无法做到开机自启和后台运行,所以接下来配置开机自启
################
ubuntu 开机自启
ubuntu-18.04不能像ubuntu16.04那样通过编辑rc.local来设置开机启动脚本,但是如果在18.04铁了心要通过rc.local来添加开机自启动脚本也不是不行,方法如下:
1、建立rc-local.service文件
vim /etc/systemd/system/rc-local.service
2、将下列内容复制进rc-local.service文件
[Unit] Description=/etc/rc.local Compatibility ConditionPathExists=/etc/rc.local [Service] Type=forking ExecStart=/etc/rc.local start TimeoutSec=0 StandardOutput=tty RemainAfterExit=yes SysVStartPriority=99 [Install] WantedBy=multi-user.target
3、创建文件rc.local
vim /etc/rc.local4、将下列内容复制进rc.local文件
4、将下列内容复制进rc.local文件
#!/bin/sh -e # # rc.local # # This script is executed at the end of each multiuser runlevel. # Make sure that the script will "exit 0" on success or any other # value on error. # # In order to enable or disable this script just change the execution# bits. # # By default this script does nothing. /Workspace/webrtc-streamer-v0.6.0-Linux-x86_64-Release/webrtc-streamer -o -s -w ../ &
exit 0
5、给rc.local加上权限
chmod +x /etc/rc.local
6、启用服务和检查状态
systemctl enable rc-local
systemctl start rc-local.service
systemctl status rc-local.service
五、注意:如果过程中 报了如下类似的错误
./webrtc-streamer: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by ./webrtc-streamer)
那就需要安装GLIBC
查看当前版本
strings /lib/x86_64-linux-gnu/libm.so.6 | grep GLIBC_
到该地址下载对应的包 http://ftp.gnu.org/gnu/libc/
wget http://ftp.gnu.org/gnu/libc/glibc-2.28.tar.gz
tar -zxvf glibc-2.28.tar.gz
cd glibc-2.28
mkdir build
cd build
../configure --prefix=/usr/local/glibc
make -j8
sudo make install
cd /lib/x86_64-linux-gnu
ln -s /usr/local/glibc/lib/libm-2.28.so libm.so.6
//会报错 ln: failed to create symbolic link ‘libm.so.6’: File exists
//此时需要强连
sudo ln -sf /usr/local/glibc/lib/libm-2.28.so libm.so.6