建议使用以下浏览器,以获得最佳体验。 IE 9.0+以上版本 Chrome 31+ 谷歌浏览器 Firefox 30+ 火狐浏览器
请选择 进入手机版 | 继续访问电脑版
设置昵称

在此一键设置昵称,即可参与社区互动!

确定
我再想想
选择版块
092947bevjlmiytnwwd8ky.jpg 【乘风破浪赋能学习季】昇腾干货课程+云端实验,训战结合,多重好礼等你赢取!
标签
您还可以添加5个标签
  • 没有搜索到和“关键字”相关的标签
  • 云产品
  • 解决方案
  • 技术领域
  • 通用技术
  • 平台功能
取消

HR-annyhou

发帖: 3粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年07月31日 16:42:05 314 7
直达本楼层的链接
楼主
显示全部楼层
[问题求助] 引入RTSP视频流后,创建Graph失败

此项目跑图片没有问题,结果正确。但是,在引入RTSP视频流后,一直创建图失败。

下面为完整的打印日志及host/device端日志,请帮忙看看,谢谢!

Screenshot from 2020-07-31 16-36-15.png



举报
分享

分享文章到朋友圈

分享文章到微博

xiaoyifan6

发帖: 1粉丝: 7

级别 : 版主

发消息 + 关注

发表于2020年07月31日 17:01:39
直达本楼层的链接
沙发
显示全部楼层

视频是否为H264或者H265格式的?


评论
HR-annyhou 2020-7-31 17:26 评论

H264

... 查看全部
点赞 评论 引用 举报

xiaoyifan6

发帖: 1粉丝: 7

级别 : 版主

发消息 + 关注

发表于2020年07月31日 17:17:14
直达本楼层的链接
板凳
显示全部楼层

运行的是哪个sample,我们复现一下。

评论
HR-annyhou 2020-7-31 17:40 评论

不是sample 我自己移植的其他模型

... 查看全部
点赞 评论 引用 举报

xiaoyifan6

发帖: 1粉丝: 7

级别 : 版主

发消息 + 关注

发表于2020年08月03日 10:54:54
直达本楼层的链接
地板
显示全部楼层

1111.png


2.检查编译问题,如果是Host侧Engine的问题,需要确认Engine的源码文件没有编译到Host的APP中或者Engine的源码没有实现Engine的process;如果是Device侧Engine的问题,需要确认Engine的源码没有实现Engine的process或者Engine的so有没有函数的符号表无法找到。

3.重新编译和运行。


点赞 评论 引用 举报

HR-annyhou

发帖: 3粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 14:35:08
直达本楼层的链接
5#
显示全部楼层

graphs {

  graph_id: 10001

  priority: 1

  engines {

    id: 4000

    engine_name: "StreamPuller"

    side: HOST

    thread_num: 1

    ai_config {

      items {

        name: "channel_id"

        value: "0"

      }

      items {

        name: "stream_name"

        value: "rtsp://admin:sykj1234@172.16.2.242:554/h264/ch1/main/av_stream\

      }

    }

  }

  engines {

    id: 1000

    engine_name: "DecodeEngine"

    side: DEVICE

    thread_num: 1

    so_name: "./libDevice.so"

    ai_config{

    }

  }

  engines {

    id: 2001

    engine_name: "PoseDetectionEngine"

    side: DEVICE

    thread_num: 1

    wait_inputdata_max_time: 1000

    ai_config{

      items{

          name: "model"

          value: "../openpose.om"

      }

    }

  }

  engines {

    id: 2002

    engine_name: "JpegEncode"

    side: DEVICE

    thread_num: 1

    ai_config {

      items {

        name: "init_config"

        value: ""

      }

      items {

        name: "passcode"

        value: ""

      }

    }

  }

 

  engines {

    id: 2003

    engine_name: "DstEngine"

    side: HOST

    thread_num: 1

  }

  connects {

    src_engine_id: 4000

    src_port_id: 0

    target_engine_id: 1000

    target_port_id: 0

  }

  connects {

    src_engine_id: 1000

    src_port_id: 0

    target_engine_id: 2001

    target_port_id: 0

  }

  

  connects {

    src_engine_id: 2001

    src_port_id: 0

    target_engine_id: 2002

    target_port_id: 0

  }

  connects {

    src_engine_id: 2002

    src_port_id: 0

    target_engine_id: 2003

    target_port_id: 0

  }

}


评论
HR-annyhou 2020-8-3 14:41 评论

此为graph配置文件。相较于跑图像的代码,仅仅添加了第一个拉取视频流的引擎,此部分代码为InferOfflineVideo/StreamPuller。所以不可能为上面的1/2问题。

... 查看全部
苏打水 7 天前 评论

增加一个引擎后,检查下CreateGraph函数的graphConfig参数有没做相应修改

... 查看全部
点赞 评论 引用 举报

A文弱书生

发帖: 0粉丝: 0

级别 : 版主

发消息 + 关注

发表于2020年08月03日 16:45:15
直达本楼层的链接
6#
显示全部楼层

Create Null Engine问题排查思路奉上:

1. Graph配置文件和Engine实现中对应的Engine name不一致;


2. Engine对应的xxx.so包名被替换,这种原因一般被攻击的场景或者Makefile命名重复才会存在,可通过如下方式检查,即我们来检查VideoDecode Engine对应的so是否确实包含VideoDecode 符号。

"nm libvideoDecode.so | grep VideoDecode"

如上检查发现该so中并没有含有VideoDecode符合,该so应该没有包括VideoDecode Engine对应cpp文件。实际上,libvideoDecode.so被替换成了libpreprocess.so!


3. 存在函数接口声明未实现却在其它地方被调用的场景

如下声明了test2()方法并没有实现,但在Init接口中被调用时,会报2类错误:

1). Device侧报undefined symbol: _Z5test2v,即test2()接口未被定义

Host侧报Invalid so错误。

2). Create null engine 错误


4. 内存不足,会导致创建engine对象失败。这种情况一般概率较低,可能存在于Device侧运行多个Graph场景,此时需要采集device侧内存使用情况,可通过脚本获取实时内存使用状况。


5. device端engine include未使用的头文件,又没有传输对应的so库到device,此时也会导致“create null engine”错误。(比如说你用了StreamPuller又没把ffmpeg交叉编译后放过来=。=)

这种场景可以通过以下2种方式解决:

1)在Makefile 添加 -l 编译选项

2. 或者在graph.config配置文件中指定传输的so文件

看下高亮的两条,其他供参考

点赞 评论 引用 举报

HR-annyhou

发帖: 3粉丝: 0

级别 : 新手上路

发消息 + 关注

发表于2020年08月03日 17:46:20
直达本楼层的链接
7#
显示全部楼层
  1. name一致;

  2. Screenshot from 2020-08-03 17-28-40.png

  3. device侧日志:

    [ERROR] HIAIENGINE(901,matrixdaemon):2020-08-03-16:44:59.374.522 Chlid process recv msg error due to the hdc session was disconnected,[hiaiengine/connector/device/src/hdc/hdc_server.cpp:334:RecvData], Msg: recv msg error
    [ERROR] HIAIENGINE(901,matrixdaemon):2020-08-03-16:44:59.374.638 Chlid process recv msg error due to the hdc session was disconnected,[hiaiengine/connector/device/src/daemon_process.cpp:130:RecvData], Msg: recv msg error

    Screenshot from 2020-08-03 17-44-13.png

    未打印此处日志,DecodeEngine引擎未初始化,是不是DEVICE端的问题?

  4. 仅同时运行一个Graph

  5. 创建Graph时,初始化StreamPuller引擎成功,也跑通过InferOfflineVideo,应该不是ffmpeg的问题;

    Screenshot from 2020-08-03 17-29-24.png


点赞 评论 引用 举报

小黄2020

发帖: 21粉丝: 0

级别 : 注册会员

发消息 + 关注

发表于2020年08月12日 10:46:44
直达本楼层的链接
8#
显示全部楼层

请问调通了吗图片.png


点赞 评论 引用 举报

游客

富文本
Markdown
您需要登录后才可以回帖 登录 | 立即注册