×

签到

分享到微信

打开微信,使用扫一扫进入页面后,点击右上角菜单,

点击“发送给朋友”或“分享到朋友圈”完成分享

关于CNStream解码速率问题 解决中 FrostLee2023-01-13 17:29:12 回复 1 查看 技术答疑 使用求助 经验交流
关于CNStream解码速率问题
分享到:

【寒武纪硬件产品型号】必填*:MLU220


【使用操作系统】必填*:Ubuntu 18.04.5 LTS 


【使用驱动版本】必填*:CNRT: 4.10.2 adb709e


【问题】:我暂时没有使用推理模块,想先把16路视频流使用rtsp调试到最流畅,视频是720P,json配置如下。

config.json

{

  "profiler_config" : {

    "enable_profiling" : true,

    "enable_tracing" : false

  },


  "subgraph:decode" : {

    "config_path" : "../configs/decode_config.json",

    "next_modules" : ["subgraph:sinker"]

  },


  "subgraph:sinker" : {

    "config_path" : "../configs/sinker_configs/__SINKER_PLACEHOLDER__"

  }

}

decode_config.json

{

  "source" : {

    "class_name" : "cnstream::DataSource",

    "custom_params" : {

      "reuse_cndec_buf" : "true",

      "output_type" : "mlu",

      "decoder_type" : "mlu",

      "output_buf_number" : 1,

      "input_buf_number" : 1,

      "device_id" : 0

    }

  }

}

请教一下output_buf_numberinput_buf_number要怎么设置?看了文档不是很理解,好像并不是越大越好。

另外,两个值的上限是多少?

不设置的默认值是多少?

为什么设置的值大了会导致16路显示不全?


output_buf_number=1且input_buf_number=1 日志】:

**********************  Performance Print Start  (Whole)  **********************

===========================  Pipeline: [MyPipeline]  ===========================

---------------------- Module: [MyPipeline/decode/source] ---------------------- (slowest)

----------Process Name: [PROCESS]

[Counter]: 28588, [Throughput]: 256.211fps

--------------------- Module: [MyPipeline/sinker/rtsp_sink] --------------------

----------Process Name: [INPUT_QUEUE]

[Counter]: 28562, [Throughput]: 258.86fps

----------Process Name: [PROCESS]

[Counter]: 28561, [Throughput]: 298.274fps


-----------------------------------  Overall  ----------------------------------

[Counter]: 28561, [Throughput]: 255.973fps

***********************  Performance Print End  (Whole)  ***********************


output_buf_number=2且input_buf_number=2 日志】:

**********************  Performance Print Start  (Whole)  **********************

===========================  Pipeline: [MyPipeline]  ===========================

---------------------- Module: [MyPipeline/decode/source] ---------------------- (slowest)

----------Process Name: [PROCESS]

[Counter]: 52828, [Throughput]: 203.46fps

--------------------- Module: [MyPipeline/sinker/rtsp_sink] --------------------

----------Process Name: [INPUT_QUEUE]

[Counter]: 52799, [Throughput]: 204.315fps

----------Process Name: [PROCESS]

[Counter]: 52798, [Throughput]: 232.443fps


-----------------------------------  Overall  ----------------------------------

[Counter]: 52798, [Throughput]: 203.346fps

***********************  Performance Print End  (Whole)  ***********************


【只设置output_buf_number=16

**********************  Performance Print Start  (Whole)  **********************

===========================  Pipeline: [MyPipeline]  ===========================

---------------------- Module: [MyPipeline/decode/source] ---------------------- (slowest)

----------Process Name: [PROCESS]

[Counter]: 25697, [Throughput]: 184.074fps

--------------------- Module: [MyPipeline/sinker/rtsp_sink] --------------------

----------Process Name: [INPUT_QUEUE]

[Counter]: 25662, [Throughput]: 190.857fps

----------Process Name: [PROCESS]

[Counter]: 25661, [Throughput]: 218.092fps


-----------------------------------  Overall  ----------------------------------

[Counter]: 25661, [Throughput]: 183.819fps

***********************  Performance Print End  (Whole)  ***********************


最后再复述一下问题,

请教一下output_buf_numberinput_buf_number要怎么设置?看了文档不是很理解,好像并不是越大越好。

另外,两个值的上限是多少?

不设置的默认值是多少?

为什么设置的值大了会导致16路显示不全?


感谢大佬。


版权所有 © 2022 寒武纪 Cambricon.com 备案/许可证号:京ICP备17003415号-1
关闭