kurento是一个开源的webrtc mcu服务器,按官方的文档,建议在ubtntu上安装,过程如下:

注:建议先切换到root身份,如果不是root身份登录的,下列命令,请自行加上sudo . 另:kurento 6.10版,要求ubtntu最低版本为16.04,低版本的安装将出错。

1、安装gunpg

 apt-get update \
&& apt-get install --no-install-recommends --yes \
gnupg

2、确定ubuntu版本

cat /etc/issue
Ubuntu 18.04.2 LTS \n \l #输出

3、设置变量(根据上一步的结果 ,下面2行选1行执行)

# Run ONLY ONE of these lines:
DISTRO="xenial" # KMS for Ubuntu 16.04 (Xenial)
DISTRO="bionic" # KMS for Ubuntu 18.04 (Bionic)

4、添加key

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83

5、设置kurento.list

tee "/etc/apt/sources.list.d/kurento.list" >/dev/null <<EOF
# Kurento Media Server - Release packages
deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6
EOF

注:这一步的作用,实际就是在"/etc/apt/sources.list.d/kurento.list" 这个文件中,追加一行deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6。

执行时,terminal终端中,按顺序把上面4行,都复制进去就行(注:1个字符都不要少)

6、安装kurento media server

apt-get update \
&& apt-get install --yes kurento-media-server

7、启动/停止

sudo service kurento-media-server start
sudo service kurento-media-server stop

kurento有几个重要的配置文件:

/etc/kurento/kurento.conf.json
/etc/kurento/modules/kurento/MediaElement.conf.ini
/etc/kurento/modules/kurento/SdpEndpoint.conf.ini
/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini
/etc/kurento/modules/kurento/HttpEndpoint.conf.ini
/etc/default/kurento-media-server

建议大家看看里面的内容,比如修改监听端口,配置stun/turn server地址等,都可以在里面找到答案。

另外,如果不想麻烦,只是想快速搭建一个kurento环境,也可以直接用docker部署(或直接上dockerhub)。

kurento提供了一系列详细的demo示例,github地址为:https://github.com/Kurento/kurento-tutorial-java.git, 强烈建议大家先跑跑这些hello world,有些还是蛮有意思的,比如下面这个:

通过一个人脸识别的filter,动态给人物带上一顶超级玛丽的小帽子。

如果用docker本机运行,调试tutorial代码时,要注意端口,默认情况下,这些代码连接本机8888端口,如果docker对外暴露的端口不是这个,需要在idea中参考下图修改kurento server的websocket地址:

参考:

https://doc-kurento.readthedocs.io/en/6.10.0/user/installation.html

https://doc-kurento.readthedocs.io/en/6.10.0/user/configuration.html

https://doc-kurento.readthedocs.io/en/6.10.0/user/tutorials.html

https://zhuanlan.zhihu.com/p/38585455

 

webrtc笔记(4): kurento 部署的更多相关文章

  1. (转)ZooKeeper 笔记(1) 安装部署及hello world

    ZooKeeper 笔记(1) 安装部署及hello world   先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...

  2. ActionBarSherlock学习笔记 第一篇——部署

    ActionBarSherlock学习笔记 第一篇--部署          ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...

  3. OGG学习笔记04-OGG复制部署快速参考

    OGG学习笔记04-OGG复制部署快速参考 源端:Oracle 10.2.0.5 RAC + ASM 节点1 Public IP地址:192.168.1.27 目标端:Oracle 10.2.0.5 ...

  4. webrtc笔记(5): 基于kurento media server的多人视频聊天示例

    这是kurento tutorial中的一个例子(groupCall),用于多人音视频通话,效果如下: 登录界面: 聊天界面: 运行方法: 1.本地用docker把kurento server跑起来 ...

  5. 《Maven实战》笔记-8-构建部署Web项目

      一.Web项目结构 1.显式指定Web项目打包方式为war:   2.默认目录 根据“约定大于配置”的规则,Web项目的类及资源文件默认位置为src/main/java和src/main/reso ...

  6. webrtc笔记(1): 基于coturn项目的stun/turn服务器搭建

    webrtc是google推出的基于浏览器的实时语音-视频通讯架构.其典型的应用场景为:浏览器之间端到端(p2p)实时视频对话,但由于网络环境的复杂性(比如:路由器/交换机/防火墙等),浏览器与浏览器 ...

  7. webrtc笔记(3): 多人视频通讯常用架构Mesh/MCU/SFU

    问题:为什么要搞这么多架构? webrtc虽然是一项主要使用p2p的实时通讯技术,本应该是无中心化节点的,但是在一些大型多人通讯场景,如果都使用端对端直连,端上会遇到很带宽和性能的问题,所以就有了下图 ...

  8. ZooKeeper 笔记(1) 安装部署及hello world

    先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.org/doc/r3.4.6/zookeeperOver.html Get ...

  9. 《BI项目笔记》SSAS部署时发生的问题——元数据管理器中存在错误 解决办法

    在生成和部署期间出错.是否继续?解决办法: 用Microsoft SQL Server Management Studio 连接Analysis Services 然后删除多维数据库,重新布署.这样就 ...

随机推荐

  1. Python程序中的线程操作-创建多线程

    目录 一.python线程模块的选择 二.threading模块 三.通过threading.Thread类创建线程 3.1 创建线程的方式一 3.2 创建线程的方式二 四.多线程与多进程 4.1 p ...

  2. Jupyter notebook 使用

    1. 安装代码自动补全 需安装 nbextensions 插件,网站:https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/ins ...

  3. Tensorflow.nn 核心模块详解

    看过前面的例子,会发现实现深度神经网络需要使用 tensorflow.nn 这个核心模块.我们通过源码来一探究竟. # Copyright 2015 Google Inc. All Rights Re ...

  4. angularjs中ng-class常用写法,三元表达式、评估表达式与对象写法

     壹 ❀ 引 ng-class可以说在angularjs样式开发中使用频率特别高了,这不我想利用ng-class的三元运算符的写法来定义一个样式,结果怎么都想不起来正确写法,恼羞成怒还是整理一遍吧,那 ...

  5. 如何使用re模块进行测试用例的参数化

    import re import os from scripts.handle_mysql import HandleMysql from scripts.handle_config import H ...

  6. 浏览器记住密码的自动填充Input问题完美解决方案

    1.input 前from和input占位隐藏 <form style="width:0;height:0;display:none;"> <input type ...

  7. Docker学习——基本使用

    最近公司项目要用docker部署,第一次接触,记录一下,方便使用时查阅. 你有没有遇到过这种情况,在本地运行良好的代码,在另一台电脑或者另一个环境里一堆bug,可以说是水土不服,本质上是两个电脑的运行 ...

  8. 使用JaCoCo Maven插件创建代码覆盖率报告

    这篇博客文章描述了我们如何使用JaCoCo Maven插件为单元和集成测试创建代码覆盖率报告. 我们的构建要求如下: 运行测试时,我们的构建必须为单元测试和集成测试创建代码覆盖率报告. 代码覆盖率报告 ...

  9. 百度Sitemap生成器

    今天用了两个小时, 为无限影视(https://www.88tv.org)开发了一个小工具, 用来生成baidu的sitemap.  方便用. 因为该电影站的视频内容详情网页的ID是自增长的,所以可以 ...

  10. Vue中的组件及路由使用

    1.组件是什么        组件系统是 Vue 的一个重要概念,因为它是一种抽象,允许我们使用小型.独立和通常可复用的组件构建大型应用.通常一个应用会以一棵嵌套的组件树的形式来组织: 1.1组件的声 ...