文档章节

Kurento Room快速入门

chapin
 chapin
发布于 2017/02/17 16:39
字数 688
阅读 60
收藏 1

为了与框架快速初始连接,我们建议运行演示应用程序并观察客户端和服务器之间的WebSocket消息交换。

目前,该演示仅支持Ubuntu 14.04 LTS 64位。

功能

这个名为 kurento-room-demo 的项目包含Rooms API的客户端实现(HTML,JavaScript,图形资源),并嵌入房间服务器以提供群组通信所需的功能(所谓的房间)。

SpringBoot框架,它启动kurento-room-server模块的主要应用程序,通过WebSocket接口公开房间API。

客户端部分已经使用AngularJS和lumX实现,客户端主要使用room的JavaScript库(KurentoRoom.js)。

此应用程序允许Web客户端:

  • 登录一个房间(创建房间,如果它不存在)
  • 离开这个房间
  • 发布其媒体流
  • 静音他们的视频和/或音频
  • 进入全屏
  • 自动订阅在房间中发布的任何流,并在屏幕上播放(视频)和通过系统扬声器(音频)
  • 取消订阅流
  • 取消发布媒体
  • 向其他对等体发送消息
  • 在其发布的视频流上应用或移除媒体过滤器(使用在识别的人脸上添加帽子的面部覆盖过滤器)
  • 从可用的缩略图中选择要在浏览器的较大区域中显示的视频源

运行Demo

git clone 教程后,可以使用Maven exec插件直接从终端执行。 为了确保演示可以正确构建和执行,在继续构建之前先checkout出一个稳定的发行版(或标签)(防止丢失依赖项,因为Kurento master是开发分支):

$ git clone https://github.com/Kurento/kurento-room.git
$ cd kurento-room
# checkout the latest tag
$ git checkout $(git describe --abbrev=0 --tags)
$ cd kurento-room-demo
$ mvn compile exec:java

现在在WebRTC兼容的浏览器中打开以下URL,并通过提供所需的用户名和房间名称连接到新房间:https://localhost:8443。

修改demo的配置文件

有几个选项或属性可能需要修改,以使演示正常运行。

修改上述演示的执行中使用的属性文件kurento-room-demo.conf.json,位于文件夹src/main/resources中,其内容如下:

{
   "kms": {
      "uris": ["ws://localhost:8888/kurento", "ws://127.0.0.1:8888/kurento"]
   },
   "app": {
      "uri": "https://localhost:8443/"
   },
   "kurento": {
      "client": {
         //milliseconds
         "requestTimeout": 20000
      }
   },
   "demo": {
      //mario-wings.png or wizard.png
      "hatUrl": "mario-wings.png",
      "hatCoords": {
         // mario-wings hat
         "offsetXPercent": -0.35F,
         "offsetYPercent": -1.2F,
         "widthPercent": 1.6F,
         "heightPercent": 1.6F

         //wizard hat
         //"offsetXPercent": -0.2F,
         //"offsetYPercent": -1.35F,
         //"widthPercent": 1.5F,
         //"heightPercent": 1.5F
      },
      "loopback" : {
         "remote": false,
         //matters only when remote is true
         "andLocal": false
      },
      "authRegex": ".*",
      "kmsLimit": 1000
   }
}

启动演示服务器时,可以在命令行上覆盖这些属性:

$ mvn compile exec:java -Dkms.uris=[\"ws://192.168.1.99:9001/kurento\"]

在本示例中,我们已指示出在创建 Room API 所需的 KurentoClient 时使用运行的KMS实例的不同URI。

有关演示配置和执行的更多详细信息,请参阅部署部分

© 著作权归作者所有

共有 人打赏支持
chapin
粉丝 18
博文 83
码字总数 102961
作品 0
成都
程序员
Kurento应用开发指南(以Kurento 5.0为模板) 目录

Kurento是什么 3 Kurento简介 3 2.1 WebRTC媒体服务器 3 2.2 Kurento 媒体服务器 4 2.3 Kurento API, 客户端和协议 5 2.4 使用Kurento创建应用程序 7 Kurento Media Server的安装与卸载 8 3....

小马_wolf
2016/07/14
427
0
Kurento应用开发指南(以Kurento 5.0为模板) 之一:简介,安装与卸载

Kurento是什么 Kurento是一个WebRTC媒体服务器,并且包含一个客户端API集合, 用以简化WWW和移动平台上的高级视频应用程序的开发。 Kurento的功能包括组通信,转码,记录,混音,广播和routi...

小马_wolf
2016/07/14
296
0
Kurento应用开发指南(以Kurento 5.0为模板) 之三:示例教程 一对多的视频呼叫

5.2 教程3一对多的视频呼叫 这个示例页面应用程序使用WebRTC技术实现了一对多的视频呼叫。换句话说,它是一个基于页面的视频广播应用。 5.2.1 运行示例程序 运行这个DEMO之前,需要先安装 Ku...

小马_wolf
2016/07/14
101
0
kurento学习进阶一(源码库依赖关系)

Developer Guide¶ This section is a comprehensive guide for development of Kurento itself. The intended reader of this text is any person who wants to get involved in writing c......

liuweihui521
04/13
0
0
Kurento应用开发指南(以Kurento 5.0为模板) 之五:kurento架构

Kurento 架构 和大多数的媒体通信技术一样,Kurento把所有的交互通信系统的关键功能抽象成两层(或平台): ?信令平台 系统中负责通信管理的部分,它的组成模块提供的功能有媒体协商,QoS参数协...

小马_wolf
2016/07/14
187
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

7 个致命的 Linux 命令

导读 如果你是一个 Linux 新手,在好奇心的驱使下,可能会去尝试从各个渠道获得的命令。以下是 7 个致命的 Linux 命令,轻则使你的数据造成丢失,重则使你的系统造成瘫痪,所以,你应当竭力避...

问题终结者
昨天
0
0
设计模式:工厂方法模式(工厂模式)

工厂方法模式才是真正的工厂模式,前面讲到的静态工厂模式实际上不能说是一种真正意义上的设计模式,只是一种变成习惯。 工厂方法的类图: 这里面涉及到四个种类: 1、抽象产品: Product 2、...

京一
昨天
0
0
区块链和数据库,技术到底有何区别?

关于数据库和区块链,总会有很多的困惑。区块链其实是一种数据库,因为他是数字账本,并且在区块的数据结构上存储信息。数据库中存储信息的结构被称为表格。但是,区块链是数据库,数据库可不...

HiBlock
昨天
0
0
react native 开发碰到的问题

react-navigation v2 问题 问题: static navigationOptions = ({navigation, navigationOptions}) => ({ headerTitle: ( <Text style={{color:"#fff"}}>我的</Text> ), headerRight: ( <View......

罗培海
昨天
0
0
Mac Docker安装流程

久仰Docker大名已久,于是今天趁着有空,尝试了一下Docker 先是从docker的官网上下载下来mac版本的docker安装包,安装很简易,就直接拖图标就好了。 https://www.docker.com/products/docker...

writeademo
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部