文章目录
- 前言
- Ubuntu 20.4中使用webrtc-streamer报错
- 总结
 
前言
前端vue2 项目需要播放海康的视频流,本地启动起来了,现在需要的服务器上部署,服务器是Ubuntu 20.04,下面是部署时遇到的问题及解决方法,总耗时2天。
 不知道怎么在Ubuntu中部署前端项目的可以去看我之前几篇文章。
 【vue2】前端如何播放rtsp 视频流,拿到rtsp视频流地址如何处理,海康视频rtsp h264 如何播放
 Ubuntu 常用命令、docker 常用命令、unzip常用命令、tar常用命令
 windows 11安装VMware 17 ,VMware安装Ubuntu 20.4
 【ubuntu】docker中如何ping其他ip或外网
Ubuntu 20.4中使用webrtc-streamer报错
环境:ubuntu 20.04
 webrtc-streamer版本:webrtc-streamer-v0.7.0-Linux-x86_64-Debug.tar.gz
报错截图
 在Ubuntu中启动后没一会就自动退出了,大概报错是
Increasing reorder buffer to 1
avcodec_receive_frame error : -11
VideoDecoder::DecoderThread failure:-1
截图如下:
 
我怀疑是webrtc-streamer 版本太低了,于是乎采用webrtc-streamer-v0.8.5-Linux-x86_64-Debug.tar.gz
 换完版本后好家伙直接启动不起来了,截图如下:
 
一开始看到这个报错也不懂,但肯定和提示的GLIBC有关,搜了一下。大概意思是,glibc版本太低了,支持webrtc的是2.32-2.35。
那就只有升级glibc了,注意升级glibc是一个敏感操作,稍有不慎可能就把系统搞崩了。好在这里我用的是虚拟机,但即使是这样咱也不敢贸然升级。于是重新装了一个Ubuntu 系统版本是22.04,装完系统后打开控制台输入命令
ldd --version
看到2.35,ok这下glibc版本是够用了。启动wertc,还是不行,但这次报错是不是图二,而是图一。
 脑袋都大了,冷静一下继续分析问题,webrtc应该是目前最高版本了,glibc也是满足webrtc了,为什么还会报错?难道wertc版本下载错了?这时候我注意到下载的版本中有debug字样,搜了一下才知道,debug版本身就有问题,要有release版。于是重新下载启动,这次下载启动没问题了。rtsp视频也能播放了。
有时候大家只想看结果,不关心过程,为了方便解决大家问题,在下面重新总结到底怎么解决报错,需要的环境又是什么。
总结
webrtc-streamer 最终启动起来,rtsp视频流能够播放环境如下:
Ubuntu 22.04
 GLiBC版本:2.35
 webrtc版本:webrtc-streamer-v0.8.5-Linux-x86_64-Release.tar.gz
 webrtc下载地址:webrtc-streamer
 webrtc启动命令(进入webrtc文件夹后执行):./webrtc-streamer
 注意:启动起来之后这个命令窗口就不能关了
下班~