# 前言
kurento 是一個WebRtc 流媒體服務服務器,Kurento媒體服務器提供即時可用的組通信,混合,轉碼,錄制和播放。另外,它還提供一些高級的媒體處理模塊,包括有計算機視覺,虛擬現實,透鏡等
# 功能
kurento-room 是kurento Media Server 的一個客戶端demo,包含Rooms API客戶端的實現,并且嵌入了房間服務器以提供群組通信所需的功能(房間的概念)。
kurento-room 是java語言開發的,基于springBoot框架,它是啟動kurento-room-server模塊的主要應用程序,通過websocket借口公開房間API。
客戶端部分使用AngularJS和LumX實現,客戶端主要使用room的JavaScript庫(KurentoRoom.js)。
此應用程序允許Web客戶端:
* 登錄一個房間(創建房間,如果它不存在)
* 離開這個房間
* 發布其媒體流
* 靜音他們的視頻和/或音頻
* 進入全屏
* 自動訂閱在房間中發布的任何流,并在屏幕上播放(視頻)和通過系統揚聲器(音頻)
* 取消訂閱流
* 取消發布媒體
* 向其他對等體發送消息
* 在其發布的視頻流上應用或移除媒體過濾器(使用在識別的人臉上添加帽子的面部覆蓋過濾器)
* 從可用的縮略圖中選擇要在瀏覽器的較大區域中顯示的視頻源
# 安裝Demon
在git clone 完項目后,可以使用Maven在這終端執行。為了保證Demo的正確構建和執行,在構建之前需要先 checkOut出一個穩定的版本(或標簽)
$ git clone[https://github.com/Kurento/kurento-room.git](https://github.com/Kurento/kurento-room.git)
$ cd kurento-room
$ git checkout $(git describe --abbrev=0 --tags)
$ cd kurento-room-demo
$ mvn compile exec:java
安裝完成 并且沒有報錯后,在兼容WebRtc的瀏覽器(谷歌/火狐)中打開下面的url
[https://localhost:8443](https://localhost:8443/)
# 修改Demo的kms服務器地址
需要在配置文件中修改 kms媒體服務器的安裝后的可訪問的地址
配置文件的地址 kurento-room/kurento-room-demo/src/main/resources/kurento-room-demo.conf.json,內容如下
{
~~~
"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.35 F,
"offsetYPercent": -1.2 F,
"widthPercent": 1.6 F,
"heightPercent": 1.6 F
//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\\"\]
# 效果圖

