Toybrick

标题: Rk3588 HDMI-rx 帧率低的问题 [打印本页]

作者: mdd    时间: 2022-4-24 16:24
标题: Rk3588 HDMI-rx 帧率低的问题

今天在测试rk3588HDMIin输入的过程中 发现显示帧率很低
输入源是Windows电脑3840x2160 60p  MAC输出1080p也试了一下 1080p下也没有好转

我用了以下三种方法测试
1. 用EDGE SDK for Python: HDMICAPTURE + DISPLAY模块 目测帧率15-20帧
2. 用 toycam -d 0指令预览(应该内部用到了opencv感觉),目测帧率10帧以下
3. 用gstreamer, v4l2src 到 autovideosink,目测帧率也是10帧以下

感觉以rk3588的性能不该如此,目前是最新的固件。或许是我有些地方没有配置好吗,还是buffer或者gpu-memory需要配置?
求助各位

下图是用gstreamer测试时的warning提示,或许有一些帮助
WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXImageSink:autovideosink0-actual-sink-ximage: A lot of buffers are being dropped.
Additional debug info:
../libs/gst/base/gstbasesink.c(3132): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstXImageSink:autovideosink0-actual-sink-ximage:
There may be a timestamping problem, or this computer is too slow.


作者: mdd    时间: 2022-4-24 16:30
对了,还有一个小问题,就是颜色不对,感觉要转换一下才能正常显示
作者: jefferyzhang    时间: 2022-4-24 17:07
只有python sdk是完全0拷贝显示的,可以代表最高性能。其他都是第三方库的,第三方库没办法保证0拷贝。
至于多少fps这个要看你输入的的信号是多少的,很可能就是25fps。
回头等我有空可以在python sdk里加个debug fps的打印看下
作者: jefferyzhang    时间: 2022-4-24 17:08
颜色那个问题是已知问题,回头我们解决下
作者: mdd    时间: 2022-4-24 20:35
谢谢jeff 期待新版本的sdk
作者: jefferyzhang    时间: 2022-4-28 20:06
颜色问题新版本已经解决了。新旧版本我都测试过,hdmiin是可以稳定30fps的,没有发现像你说的只有十几帧,4K In也是30fps,你可以自己改下试试。参考测试代码如下:
  1. import toybrick as toy
  2. import time


  3. if __name__ == '__main__':
  4.     count = 0
  5.     begintime = time.time()

  6.     hdmi = toy.HdmiCapture(1920, 1080)
  7.     disp = toy.Display('', 1920, 1080, True)
  8.     print("Connect display width = " + str(disp.width()) + " ; height = " + str(disp.height()))
  9.     while True:
  10.         ret, frame = hdmi.read(1920, 1080)
  11.         if frame is not None:
  12.             ret = disp.imshow(frame)
  13.             if ret == toy.RET_TERMINATED:
  14.                 break
  15.             count += 1
  16.             if time.time() - begintime >= 10:
  17.                 fps = count / (time.time() - begintime)
  18.                 print('fps = ' + str(fps))
  19.                 count = 0
  20.                 begintime = time.time()
  21.     # End of While
复制代码




作者: caojing    时间: 2022-7-1 11:20
你好 我这边ubuntu下采集HDMI亦 有这个问题
就编码H264视频 丢帧 跳帧严重
使用测试命令如下
v4l2-ctl  -d /dev/video8 --set-fmt-video=width=3840,height=2160,pixelformat='RGB3' --stream-mmap=4  --stream-skip=10  --stream-to=/userdata/4kp60_nv12.yuv --stream-count=120 --stream-poll --
mpi_enc_test -w 3840 -h 2160 -t 7 -i /userdata/4kp60_nv12.yuv -f 65543 -o /userdata/out.h264 -n 120

目前有对应hdmi demo吗 感谢解答

作者: feelthat    时间: 2022-11-10 23:59
I got answer and shift here:
https://dev.t-firefly.com/thread-125390-1-1.html








欢迎光临 Toybrick (https://t.rock-chips.com/) Powered by Discuz! X3.3