Kurento是一个WebRtc媒体服务器,包含了一组API,可以让开发者为WWW和移动端简单的开发出视频应用,kurento媒体服务器功能包括组通信、转码、录制、混合、广播和视听流路由,同时还提供了先进的媒体处理能力,涉及计算机视觉、视频索引、增强现实和语音分析。kurento模块化结构能更容易的集成第三方媒体处理算法(如语音识别、情感分析、人脸识别等)。
官方提供的API为JAVA、JS。其他详细信息请参照kurento官方文档。
目前网络上有关kurento的信息比较少,只有官方文档作为参考,官方文档中有关API和kurento模块的后续开发并没有说的很详细,需要参照demo的代码和API的java/js包。
官方并没有给出后续的集群方案和相关性能测试报告。
本次尝试使用的是ubuntu14.04系统。
依次执行如下命令:
echo "deb http://ubuntu.kurento.orgtrusty kms6" | sudo tee /etc/apt/sources.list.d/kurento.list
wget -O - http://ubuntu.kurento.org/kurento.gpg.key| sudo apt-key add -
sudo apt-get update
sudo apt-get installkurento-media-server-6.0
sudo apt-get installsoftware-properties-common
启动和停止服务方式:
sudo service kurento-media-server-6.0 start
sudo service kurento-media-server-6.0 stop
为了方便调试和观察,官方demo是运行在本地的eclipse上。
首先在官方的github上下载demo,分为java和js两种版本,本次是下载java版的demo(kurento-tutorial-java-master.zip)。
在eclipse中导入maven项目,官方的demo中包含了多种功能的演示示例,如下:
kurento-chroma
kurento-crowddetector
kurento-group-call
kurento-hello-world
kurento-hello-world-recording
kurento-hello-world-repository
kurento-magic-mirror
kurento-metadata-example
kurento-one2many-call
kurento-one2one-call
kurento-one2one-call-advanced
kurento-one2one-call-recording
kurento-platedetector
kurento-player
kurento-pointerdetector
kurento-send-data-channel
kurento-show-data-channel
每个demo都可以独立的运行,运行之前请修改源码中的websocket地址为kurento媒体服务器的IP地址。
kurento-hello-world的运行
首先修改HelloWorldApp.java中的服务器地址,如下:
final static String DEFAULT_KMS_WS_URI = "ws://192.168.150.128:8888/kurento";
public KurentoClient kurentoClient() {
return KurentoClient.create(System.getProperty("kms.ws.uri",DEFAULT_KMS_WS_URI));
}
之后在eclipse中运行该demo,如下:
此时可以在浏览器中打开此网页,请使用google chrome浏览https://localhost:8443
点击start按钮,左侧为本地视频,右侧为经过kurento之后的视频,未做任何处理。其他demo仿照此方法都可以运行看效果。