事件未到达kurento java服务器

时间:2016-03-09 07:08:30

标签: java webrtc json-rpc kurento libnice

我是Kurento媒体服务器的新用户,我正在尝试将一个事件从kurento媒体服务器发送到我拥有的java应用程序。

我使用以下步骤创建了一个事件:

编辑了"events": [{ "properties": [{ "name": "Total", "doc": "Total", "type": "float" }], "extends": "Media", "name": "TotalDetected", "doc": "Total Detected." }] json文件:

.hpp

然后在我的sigc::signal<void, TotalDetected> signalTotalDetected; 文件中:

.cpp

并在我的try { GST_WARNING ("Sending Event: TotalDetected"); TotalDetected event (shared_from_this(), "Total-detected", total); signalTotalDetected (event); GST_WARNING ("Sent Event: TotalDetected"); } catch (std::bad_weak_ptr &e) { GST_WARNING ("EXCEPTION: Total detected "); } 文件中:

totalFilter.addTotalDetectedListener(new EventListener<TotalDetectedEvent>() {
    @Override
    public void onEvent(TotalDetectedEvent event) {
        log.info("\n\nTotal Detected Event By:"+event.getTotal());
    }
});

在我的java服务器中,我使用以下方式注册了该事件:

dpkg -l | egrep -i "kurento|nice|kms"

但是在完成所有这些之后,我无法接收来自kms的任何事件,我查看了kms日志我获取了正在发送的事件的日志但是我没有在java服务器端获得任何事件。

代码中是否有任何遗漏?

在eclipse控制台上

编辑1:我得到了这个日志

[KurentoClient]  Req->
   {
       "id":17,
       "method":"subscribe",
       "params":{
          "object":"fcffbeb5-4ee0-4b49-ba05-a7bc7e716b2f_kurento.MediaPipeline/cb218dbd-0d4a-48cd-88ee-e6ecaf9f4350_vadcustomfilter.VADCustomFilter",
          "type":"TotalReceived",
          "sessionId":"67361dad-bce7-4ad6-a4ce-a26090190bad"
       },
       "jsonrpc":"2.0"
    }
[KurentoClient]  <-Res 
    {
        "id":17,
        "result":{
            "value":"0f2a346b-49f1-4867-aa7d-45ac3780bbbd",
            "sessionId":"67361dad-bce7-4ad6-a4ce-a26090190bad"
        },
        "jsonrpc":"2.0"
    }

编辑2: 以下是{{1}}

的输出
ii  gstreamer0.10-nice:amd64      -> 0.1.4-1                                   
ii  gstreamer1.0-nice:amd64       -> 0.1.4-1                                   
ii  gstreamer1.5-nice:amd64       -> 0.1.13.1~20160224182402.77.g7bbb87a.trusty
ii  kms-cmake-utils               -> 1.3.0.trusty                              
ii  kms-core-6.0                  -> 6.4.0.trusty                              
ii  kms-core-6.0-dev              -> 6.4.0.trusty                              
ii  kms-elements-6.0              -> 6.4.0.trusty                              
ii  kms-elements-6.0-dev          -> 6.4.0.trusty                              
ii  kms-filters-6.0               -> 6.4.0.trusty                              
ii  kms-filters-6.0-dev           -> 6.4.0.trusty                              
ii  kms-jsonrpc-1.0               -> 1.1.0.trusty                              
ii  kms-jsonrpc-1.0-dev           -> 1.1.0.trusty                              
ii  kmsjsoncpp                    -> 1.6.3~20160119154506.38.g263929e.trusty   
ii  kmsjsoncpp-dev                -> 1.6.3~20160119154506.38.g263929e.trusty   
ii  kurento-media-server-6.0      -> 6.4.0.trusty                              
ii  kurento-media-server-6.0-dev  -> 6.4.0.trusty                              
ii  kurento-module-creator-4.0    -> 4.0.4.trusty                              
ii  libnice-dev                   -> 0.1.7.1~20160119154918.10.ge060eb5.trusty 
ii  libnice10:amd64               -> 0.1.7.1~20160119154918.10.ge060eb5.trusty 

2 个答案:

答案 0 :(得分:3)

尝试将您的libnice版本升级到0.1.13。这是一些冰候选者的错误来源。让我们看看这是否解决了事件的问题。

答案 1 :(得分:1)

一切似乎都好。你只需要确定事件是否被触发。

如果您通过错误更改警告,您将能够在不配置任何内容的情况下查看日志。通过这种方式,您可以知道事件是否被触发。

如果您无法查看日志,那么您可能无法从GStreamer元素触发事件或者注册来自cpp的信号。