2016-10-17 54 views
1

我正在学习如何按照这里的指南来创建Kurento自定义模块:http://doc-kurento.readthedocs.io/en/stable/mastering/develop_kurento_modules.htmlKurento自定义模块:媒体对象不可用(代码:40108)

作为学习快捷方法,我克隆Java客户端以及由Chroma教程使用的Github的C++模块: http://doc-kurento.readthedocs.io/en/stable/tutorials/java/module-chromafilter.html

我能够成功构建和运行色度模块。通过将所有出现的“色度”更改为“情感”(将“色度”更改为“情感”,将“CHROMA”更改为“生成文件”等),然后对源代码,生成文件等进行简单的修改。 EMOTION“),包括模块名称和函数/方法名称。目的是获得完全相同的Chroma教程来运行,除了我可以确定它现在正在对我的新自定义模块(其功能应该完全相同)进行API调用。

经过一番努力,我能成功编译两个C++自定义模块(KMS-情感),以及Java客户端应用(kurento的感情)。

但是,似乎仍然有问题。我没有从浏览器上的远程流获取视频。看着在/ var日志/日志/ kurento媒体服务器,有这样的错误:

2016-10-17 19:27:48,204852 3488 [0x00007f0e8cff9700] debug KurentoWebSocketTransport WebSocketTransport.cpp:422 processMessage() Message: >{"id":5,"method":"create","params":{"type":"EmotionFilter","constructorParams":{"mediaPipeline":"6842e4d3-782a-4ce7-8617-9daf72a0b1d4_kurento.MediaPipeline","window":{"topRightCornerY":5,"__module__":"emotion","topRightCornerX":5,"height":40,"__type__":"WindowParam","width":40}},"properties":{},"sessionId":"3fe8b253-c4c1-421f-bddb-b6f2c6674683"},"jsonrpc":"2.0"}< 
2016-10-17 19:27:48,206450 3488 [0x00007f0e8cff9700] error filterelement    kmsfilterelement.c:139 kms_filter_element_set_filter() <kmsfilterelement0> Invalid factory "emotion", element cannot be created 
2016-10-17 19:27:48,206895 3488 [0x00007f0e8cff9700] debug KurentoWebSocketTransport WebSocketTransport.cpp:424 processMessage() Response: >{"error":{"code":40108,"data":{"type":"MEDIA_OBJECT_NOT_AVAILABLE"},"message":"Media Object not available"},"id":5,"jsonrpc":"2.0"} 

我已经构建并安装在我的模块(libkmsemotionmodule.so)在正确的位置(如下图所示),并重新启动了kurento媒体服务器。

$ ls -l /usr/lib/x86_64-linux-gnu/kurento/modules/total 848 
-rw-r--r-- 1 root root 26920 Sep 10 18:55 libkmschromamodule.so 
-rw-r--r-- 1 root root 121128 Oct 1 00:12 libkmscoremodule.so 
-rw-r--r-- 1 root root 35112 Sep 10 19:01 libkmscrowddetectormodule.so 
-rw-r--r-- 1 root root 104744 Oct 1 01:33 libkmselementsmodule.so 
-rw-r--r-- 1 root root 503539 Oct 17 18:57 libkmsemotionmodule.so 
-rw-r--r-- 1 root root 39192 Oct 1 02:14 libkmsfiltersmodule.so 
-rw-r--r-- 1 root root 26904 Sep 10 18:58 libkmsplatedetectormodule.so 

可能是什么问题?

+0

确定只是增加.. 。我发现我可以复制与原始k相同的错误urento色度模块通过从git获取并编译它... 我编写kms色度的过程如下所示。 1)git clone https://github.com/Kurento/kms-chroma.git 2) CD KMS-色度 3)MKDIR建立 4)CD建立 5)..的CMake = -DCMAKE_INSTALL_PREFIX的/ usr &&使 6)须藤使安装 7)须藤服务kurento媒体服务器-6.0停止 8)须藤服务kurento-media-server-6.0开始 –

+0

如果我通过“sudo apt-get install kms-chroma-6.0”来安装它...模块工作正常......所以我错过了什么......? –

回答

0

确定...我设法找到这个问题......我的系统中安装的OpenCV 3.1 ......,似乎该模块与OpenCV的3.1兼容(或冲突),即使没有问题与编译......当我下载的源和我的系统上建立的OpenCV 2.4.13.1并重新编译模块......这是现在能够运行......

因为我试图整合这可能对我来说是一个问题一些现有的C++应用程序作为kurento自定义模块,并揭露其Web应用程序的功能... ...和应用程序使用了OpenCV 3.X ......但是,这将是一个单独的问题...

相关问题