Firefly开源社区

标题: mpp编解码问题 [打印本页]

作者: wxl_zyz    时间: 2022-8-19 21:56
标题: mpp编解码问题
运行ffmpeg_rtsp_mpp demo程序时失败,错误日志如下,请大神指点



tchip_askquestions

log.txt

10.76 KB, 下载次数: 0, 下载积分: 灯泡 -1 , 经验 -1


作者: 时间的蝴蝶    时间: 2022-8-20 09:36
估计 demo 版本太旧了,这你得基于 356x 的去改了
https://gitlab.com/firefly-linux ... tree/rk356x/firefly
作者: wxl_zyz    时间: 2022-8-24 22:53
时间的蝴蝶 发表于 2022-8-20 09:36
估计 demo 版本太旧了,这你得基于 356x 的去改了
https://gitlab.com/firefly-linux/external/mpp/-/tree ...

新版本的也是一样错误,请问vpu功能是默认开启吗?还是需要通过什么方式手动开启?
作者: wxl_zyz    时间: 2022-9-1 21:35
时间的蝴蝶 发表于 2022-8-20 09:36
估计 demo 版本太旧了,这你得基于 356x 的去改了
https://gitlab.com/firefly-linux/external/mpp/-/tree ...

请问mpp相关的驱动是如何安装的?
作者: 时间的蝴蝶    时间: 2022-9-2 14:26
wxl_zyz 发表于 2022-9-1 21:35
请问mpp相关的驱动是如何安装的?

驱动默认编译进内核了,不用安装,https://gitlab.com/firefly-linux ... /video/rockchip/mpp

你可以编译这里的库文件和 demo 测试功能
https://gitlab.com/firefly-linux ... tree/rk356x/firefly
作者: wxl_zyz    时间: 2022-9-2 22:41
时间的蝴蝶 发表于 2022-9-2 14:26
驱动默认编译进内核了,不用安装,https://gitlab.com/firefly-linux/kernel/-/tree/rk356x/firefly/driv ...

目前遇到的情况是,调用 ret = mpi->decode_get_frame(ctx, &frame)进行解码时,返回值为0,但是frame为NULL,请教该问题该如何解决?可能由什么原因导致?
作者: wxl_zyz    时间: 2022-9-2 22:57
时间的蝴蝶 发表于 2022-9-2 14:26
驱动默认编译进内核了,不用安装,https://gitlab.com/firefly-linux/kernel/-/tree/rk356x/firefly/driv ...

pi@NanoPC-T4:/dev$ dmesg|grep vpu_service
[    0.245225] iommu: Adding device ff650000.vpu_service to group 0
[    1.167665] rk-vcodec ff650000.vpu_service: no regulator for vcodec
[    1.168590] rk-vcodec ff650000.vpu_service: probe device
[    1.169327] rk-vcodec ff650000.vpu_service: drm allocator with mmu enabled
[    1.170728] rk-vcodec ff650000.vpu_service: could not find power_model node
[    1.171350] rk-vcodec ff650000.vpu_service: init success
[45938.683129] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01
[46334.929140] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01
[121956.720400] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01
[123673.379084] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01
[123732.616957] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01
[123997.311485] rk_vcodec: vpu_service_ioctl:1889: error: unknown vpu service ioctl cmd 40086c01

请问这是否代表驱动有异常?
作者: 时间的蝴蝶    时间: 2022-9-5 10:30
wxl_zyz 发表于 2022-9-2 22:41
目前遇到的情况是,调用 ret = mpi->decode_get_frame(ctx, &frame)进行解码时,返回值为0,但是frame为N ...

正常现象,解码数据需要时间,一开始可能拿不到结果;反复调用几次,或者检查下 decode_put_packet 是否正常
作者: 时间的蝴蝶    时间: 2022-9-5 10:33
wxl_zyz 发表于 2022-9-2 22:57
pi@NanoPC-T4:/dev$ dmesg|grep vpu_service
[    0.245225] iommu: Adding device ff650000.vpu_servic ...

库版本和内核不匹配
作者: wxl_zyz    时间: 2022-9-5 22:49
时间的蝴蝶 发表于 2022-9-5 10:30
正常现象,解码数据需要时间,一开始可能拿不到结果;反复调用几次,或者检查下 decode_put_packet 是否 ...

decode_put_packet调用后返回0,packet的长度也变为0,根据开发手册里的说法数据应该是被消耗了,但是decode_get_frame后frame还是为NULL
作者: wxl_zyz    时间: 2022-9-5 23:37
时间的蝴蝶 发表于 2022-9-2 14:26
驱动默认编译进内核了,不用安装,https://gitlab.com/firefly-linux/kernel/-/tree/rk356x/firefly/driv ...

请问有没有测试可用的关于rtsp视频流mpp解码的demo,https://github.com/MUZLATAN/ffmpeg_rtsp_mpp,这个跑起来始终得不到预期结果,刚购买的3568的板子
作者: 时间的蝴蝶    时间: 2022-9-8 20:13
wxl_zyz 发表于 2022-9-5 22:49
decode_put_packet调用后返回0,packet的长度也变为0,根据开发手册里的说法数据应该是被消耗了,但是dec ...

不太清楚你是什么情况,你还是对照下 demo 的取帧部分吧,external/mpp/test/mpi_dec_test.c
作者: 时间的蝴蝶    时间: 2022-9-8 20:16
wxl_zyz 发表于 2022-9-5 23:37
请问有没有测试可用的关于rtsp视频流mpp解码的demo,https://github.com/MUZLATAN/ffmpeg_rtsp_mpp,这个 ...

目前没有,或许你可以联系下那个用户
作者: wxl_zyz    时间: 2022-9-8 22:04
时间的蝴蝶 发表于 2022-9-8 20:16
目前没有,或许你可以联系下那个用户

这个链接是https://github.com/rockchip-linux/mpp/的readme.txt里推荐的,不是你们公司同事吗?
作者: wxl_zyz    时间: 2022-9-10 16:33
wxl_zyz 发表于 2022-9-8 22:04
这个链接是https://github.com/rockchip-linux/mpp/的readme.txt里推荐的,不是你们公司同事吗?

你好,请问怎么查看mpp底层日志?目前只有我自己调用mpp_log打印的日志,底层应该也会打印日志吧,是否需要调整日志级别才能看到?
作者: 时间的蝴蝶    时间: 2022-9-13 15:15
wxl_zyz 发表于 2022-9-8 22:04
这个链接是https://github.com/rockchip-linux/mpp/的readme.txt里推荐的,不是你们公司同事吗?

这是 RK 写的 readme;主要是这个 demo 太旧了,肯定没法直接用的
作者: 时间的蝴蝶    时间: 2022-9-13 15:17
wxl_zyz 发表于 2022-9-10 16:33
你好,请问怎么查看mpp底层日志?目前只有我自己调用mpp_log打印的日志,底层应该也会打印日志吧,是否需 ...

写对应值到这个文件,/sys/module/rk_vcodec/parameters/mpp_dev_debug
参考 kernel/drivers/video/rockchip/mpp/mpp_debug.h




欢迎光临 Firefly开源社区 (https://dev.t-firefly.com/) Powered by Discuz! X3.1