3588用mpp编码4k60,帧率只能到4k30

固件类型:自行编译的固件
SDK包名称:rk3588_linux_release_20230704_v1.1.1a
SDK修改内容:无
Log日志:日志.txt

步骤
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

tchip_askquestions
日志.txt (2.64 KB)

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编码呢,谢谢