mediasoup-demo安装记录
环境CentOS 7 64位 VMWare12虚拟机(win10主机),安装好NodeJS 10.13(大于8.9就可以)
已按照GitHub说明拉下来代码,配置好Node环境,开始执行npm start,前面具体步骤不再说明,直接从遇见的错误开始
错误1、gcc版本过低

gcc默认4.8.5版本,需要升级
很多博客上的下载源码编译的太麻烦了,终于找到一个简单的,3步完成升级:https://cloud.tencent.com/developer/article/1471685
不过,这个好像不是永久性的,每使用都需要这么干一下 -_-,记到这里方便复制
sudo yum install centos-release-scl
sudo yum install devtoolset--gcc*
scl enable devtoolset- bash
which gcc
gcc --version
错误2、文件未找到

ll 看一下发现 mediasoup@3.2.5 目录没有下载下来

并且最有一步提示 clang-tools-r298696-linux.tgz下载时权限不够
所以直接 rm -rf 掉node_modeles目录
重新 sudo npm install
然后开始下载编译RTC相关的东西,耗时几分钟
后面有一次sudo npm忽然就找不到命令了,不知道什么操作导致的,原因就是sudo执行的是/usr/bin下的程序,普通命令执行的是环境变量下的程序,如果两者不一致,sudo就会报找不到
所以程序如果没有安装在/usr/bin下,一定要在下面建个对应的软连接(快捷方式),参考这里

编译结束,install 完成,耗时6分钟

然后再cd到app目录下install一下,这个倒是没什么错误
cd到server下npm start-->
错误3、日志级别属性未定义

也就是这个东西

该属性来自于config.js配置文件,打开config.js发现根本没有定义这些属性,而config.example.js中正确定义,可能是复制文件的时候手残没有切换分支,把V1分支的复制了过来,重新复制一份配置文件
重新npm start,服务启动成功

然后启动app,4个error

翻译一下,大体意思是说 “可能的竞争条件:可能基于过时的window.SHOW_INFO值重新分配了window.SHOW_INFO”(机翻)。
也就是说这几个参数设置错误,不过服务仍然启动完成

CentOS自带的火狐浏览器会自动打开该网址,然而。。。自动给我屏蔽了

不知道为什么设置浏览器配置后还是无法访问(其实点详细了解->添加例外就可以了,然而虚拟机没有摄像头和麦克风,所以看不到),所以使用Windows上浏览器访问,懒得配置Linux的端口就直接关闭防火墙,否则Windows访问不到3000端口
然而,,,,Windows Chrome也给我拦了,没有证书的假的https是无法被认可的(哈哈哈)

还好可以点击“高级”,“继续前往”,就可以成功访问了,允许打开摄像头麦克风,显示如下

错误4、IP地址未设置
明显又有错误,不过已经成功跑起来了( ̄_ ̄|||)
看服务端server打印信息发现room error

端口绑定失败
mediasoup:ERROR:worker[pid:] RTC::PortManager::Bind() | throwing MediaSoupError: port bind failed due to address not available [udp:1.2.3.4, attempt:] +3m
mediasoup:WARN:Channel[pid:] request failed [method:router.createWebRtcTransport, id:]: port bind failed due to address not available [udp:1.2.3.4, attempt:] +3m
是配置文件中webRtcTransportOptions相关参数没有改过来

改为自己服务器的IP,然后重启server,一切正常,就可以看到如下效果了

至此安装完成,当然这是本地访问,要部署在公网server上的话还需要按说明略作调整。
关于mediasoup一些很有用的例子:https://mediasoup.org/documentation/examples/
mediasoup-demo安装记录的更多相关文章
- 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL
前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...
- 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用
关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用 工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...
- sourceinsight安装记录
sourceinsight安装记录 此文章为本人使用sourceinsight一个星期之后的相关设置步骤记录和经验记录,以备以后查验,网上的相关资料都也较为完善,但是对于新手还是有一定困难的,所以在这 ...
- openerp安装记录及postgresql数据库问题解决
ubuntu-14.04下openerp安装记录1.安装PostgreSQL 数据库 a.安装 sudo apt-get install postgresql 安装后ubu ...
- Matlab安装记录 - LED Control Activex控件安装
Matlab安装记录-LED Control Activex控件安装 2013-12-01 22:06:36 最近在研究Matlab GUI技术,准备用于制作上位机程序:在Matlab GUI的技术 ...
- Arch Linux 安装记录
Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...
- redis5.0.3单实例简单安装记录
redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...
- mysql5.7安装记录
mysql安装记录 版本5.7 windows系统 一.缺少my.ini文件 [mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设 ...
- Liunx/RHEL6.5 Oracle11 安装记录
1.创建用户组 groupadd oinstall #创建用户组oinstall groupadd dba #创建用户组dba useradd -g oinstall -g dba -m oracle ...
- zookeeper三节点集群安装记录
以下是3个节点的zk安装记录. 下载 下载地址: http://mirrors.shu.edu.cn/apache/zookeeper/ cd /data/opt/zk wget http://mir ...
随机推荐
- pandas玩转excel-> (2)如何利用pandas读取excel数据文件
import pandas as pd #将excel文件读到内存中,形成dataframe,并命名为peoplepeople=pd.read_excel('D:/python结果/task2/Peo ...
- 【vue 权威指南】 学习笔记 一
内容简介 vue.js 是一个用来开发Web界面的前端库. 1.vue.js 是什么 vue.js 是一个构建数据驱动的web界面的库,vue.js 通过简单的API提供高效的数据绑定和灵活的组件系统 ...
- 《操作系统真象还原》bochs安装
在安装bochs之前,我们先需要安装虚拟机和linux发行版,也可以安装双系统,总之有个linux操作系统就好. 我是在ubuntu14.04系统下安装bochs的. 安装Bochs 以下为安装步骤 ...
- java_HashMap的遍历方法_4种
1.通过接收keySet来遍历: HashMap<String,String> map = new HashMap<>(); map.put("bb",&q ...
- linux - mysql - 卸载:RPM包安装方式的MySQL卸载
(1)检查是否安装了MySQL组件 [root@DB-Server init.d]# rpm -qa | grep -i mysql MySQL-devel-5.6.23-1.linux_glibc2 ...
- gogs迁移至gitlab
一.先来聊一聊迁移的思路,不管是gogs迁移至gitlab,还是gitlab迁移至gogs,亦或gitlab迁移至gitlab,手动迁移的步骤都是如下图所示(在gitlab上新建一个空项目就会有这样的 ...
- easy_thinking
登陆抓包,改成32位,根据tp6任意创建文件的漏洞,修改cookie. 上传文件. 木马在/runtime/session下, 然后传bypass文件绕过disablefunction,得到flag
- AntDesign(React)学习-6 Menu展示数据
1.官方文档请查看https://ant.design/components/menu-cn/antPro自带的菜单功能很强大,但是太复杂了,感觉大部分功能都用不上,下面实现一个简单从后台动态获取菜单 ...
- linux-安装、启动nginx
1.下载安装pcre库 pcre是一个正则表达式库,nginx的rewrite模块需要依赖该库. 下载地址:http://www.pcre.org/ wget https://ftp.pcre.org ...
- 《Head first设计模式》学习笔记 – 迭代器模式
<Head first设计模式>学习笔记 – 迭代器模式 代器模式提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示. 爆炸性新闻:对象村餐厅和对象村煎饼屋合并了!真是个 ...