2017-04-13 21 views
0

我已经在基于测试程序的kurento上创建了一个opencv模块,它被识别并正确加载到kms中,现在我正在测试它。我的想法是使用魔镜例子,用我的插件调用替换faceoverlayfilter的通话所以我把它在pom.xml文件相关性并提出这改变了MagicMirrorHandler.java:在Java中使用OpenCV Kurento模块的问题

import org.kurento.module.fotoacceso3.*; 
//import org.kurento.client.FaceOverlayFilter; 

...

//  // Media logic 
//  FaceOverlayFilter faceOverlayFilter = new FaceOverlayFilter.Builder(pipeline).build(); 
// 
//  String appServerUrl = System.getProperty("app.server.url", 
//   MagicMirrorApp.DEFAULT_APP_SERVER_URL); 
//  faceOverlayFilter.setOverlayedImage(appServerUrl + "/img/mario-wings.png", -0.35F, -1.2F, 
//   1.6F, 1.6F); 
// 
//  webRtcEndpoint.connect(faceOverlayFilter); 
//  faceOverlayFilter.connect(webRtcEndpoint); 

     fotoacceso3 fotoacceso3 = new fotoacceso3.Builder(pipeline).build(); 

    String appServerUrl = System.getProperty("app.server.url", 
     MagicMirrorApp.DEFAULT_APP_SERVER_URL); 
//  faceOverlayFilter.setOverlayedImage(appServerUrl + "/img/mario-wings.png", -0.35F, -1.2F, 
//   1.6F, 1.6F); 

webRtcEndpoint.connect(fotoacceso3); 
fotoacceso3.connect(webRtcEndpoint); 

当我运行代码它不会给出错误,并显示两个视频,但模块不会做任何事情。我对Java有很少的经验,我能做些什么来检查问题出在哪里?

回答

0

问题是,虽然我创建我的插件时没有使用大写字母,但是当生成Java代码时,函数是用大写字母创建的,因此要调用插件我必须在我的代码如下:

fotoacceso3 fotoacceso3 = new fotoacceso3.Builder(pipeline).build(); 

要这样:

Fotoacceso3 fotoacceso3 = new Fotoacceso3.Builder(pipeline).build();