3588用mpp编码4k60,帧率只能到4k30
步骤:1.使用rk3588自带的hdmirx,用V4L2获取电脑信号(4k60)
2.将获取的输入内容通过MPP编码(4k60,h265)
结果:
本来想编码4k60帧,结果看mpp编码分辨率只有29帧
加上时间打印,看到从v4l2上拿数据的间隔为14ms,按着14ms的间隔送到mpp进行编码,编码器获取数据的时间间隔为34ms
问题:
是否mpp使用方式错误,导致帧率不够
打印如下:
irefly@firefly:~$ cat /proc/mpp_service/sessions-summary
session iova range dump:
session: pid=3512 index=7
device: fdbd0000.rkvenc-core
memory: 0 MiB
------------------------------------------------------------------------------------------------------------
| session|device| width|height|format|fps_in| fps_out| rc_mode| bitrate|gop_size|fps_calc| profile|
| 7|RKVENC| 3840| 2160| h265| 60| 60| cbr| 1677000| 120| 28.49| main|
session iova range dump:
session: pid=3512 index=7
device: fdc38100.rkvdec-core
memory: 0 MiB
60应该没啥问题:
dengkx 发表于 2023-9-6 17:49
60应该没啥问题:
这个有例程的吗?估计是我mpp的用法不对 mjj 发表于 2023-9-6 18:20
这个有例程的吗?估计是我mpp的用法不对
https://wiki.t-firefly.com/zh_CN/Firefly-Linux-Guide/manual_ubuntu.html#ffmedia 找到问题了,是我拷贝输入数据的时候产生的延时,后面用v4l2的接口获取fd,帧率就上来了 mjj 发表于 2023-9-7 11:41
找到问题了,是我拷贝输入数据的时候产生的延时,后面用v4l2的接口获取fd,帧率就上来了
如何用v4l2的接口获取fd,然后如何给mpp编码呢,谢谢
页:
[1]