Toybrick

关于使用mpp硬解码jpeg图片的问题

15195979392

新手上路

积分
21
楼主
发表于 2022-3-9 19:01:07    查看: 4525|回复: 4 | [复制链接]    打印 | 只看该作者
       我使用官方test里的mpi_dec_test解码了一张640x480的jpg图片,没对代码做任何改动,生成的yuv文件可以正常用ffplay播放出来,我看yuv文件的大小为614400(640x480的2倍),应该是用的yuv422格式解码的,但是我没看到代码里哪里对输出格式设置为了yuv422,打印出来的是65551,对应MPP_FMT_BUTT,是未指定输出格式时默认为yuv422吗?

        还有,我根据test自己改了一版代码,在/* poll and wait here */
    ret = mApi->poll(mCtx, MPP_PORT_OUTPUT, MPP_POLL_BLOCK);
    if (ret)
    {
        // MPP_ERR("mpp output poll failed\n");dump_mpp_frame_to_file
        cout << "mpp output poll failed " << endl;

        return ret;
    }


这个函数运行时,有区别于官方test的报错打印,但是没退出,报错如下:
mpp[2208]: vcodec_ service: vcodec_ service_ reg_ wr reg size mismatch wr 636 rd 736
mpp[2208] : vcodec_ service: vcodec_ service_ cmd_ send ioctl VPU_ I0C_ SET_ REG failed ret -1 errno 14 Bad address
mpp[2208]: HAL_ JPEG_ VDPU2: hal_ jpegd_ vdpu2_ start send cmd failed 14
mpp[2208]: vcodec_ service: vcodec_ service_ cmd_ poll ioctl VPU_ I0C_ GET_ REG failed ret -1 errno 110 Connection timed out
mpp[2208]: HAL_ JPEG_ VDPU2: hal_ jpegd_ vdpu2_ wait poll cmd failed 110


第一行的打印,官方test也有,但是没有后面几行报错,我解码出来的图片大小没问题,播放出来就是花花绿绿的看不清,有时是全绿

我想请教懂的大佬第一行打印是什么意思,后面的报错可能是因为什么产生的?
(第一次接触硬解码,甚至是解码的知识,新人小白求助


回复

使用道具 举报

jefferyzhang

版主

积分
13578
沙发
发表于 2022-3-10 11:21:14 | 只看该作者
硬件库遵循最小使用原则,编码什么格式,解码就是什么格式,
解码完自行使用其他元件再去转换格式。
有些芯片vpu支持后处理转码,3399是不带的。
回复

使用道具 举报

15195979392

新手上路

积分
21
板凳
 楼主| 发表于 2022-3-10 15:02:14 | 只看该作者
jefferyzhang 发表于 2022-3-10 11:21
硬件库遵循最小使用原则,编码什么格式,解码就是什么格式,
解码完自行使用其他元件再去转换格式。
有些芯 ...

那就是说我用3399没法指定图片的解码格式是嘛?报错产生的原因也是因为我自行指定了输出格式?
回复

使用道具 举报

jefferyzhang

版主

积分
13578
地板
发表于 2022-3-10 15:09:25 | 只看该作者
15195979392 发表于 2022-3-10 15:02
那就是说我用3399没法指定图片的解码格式是嘛?报错产生的原因也是因为我自行指定了输出格式? ...

报错原因我没跟过不了解,但是你说用mpi_dec_test是正常的,就不会有什么太大问题。

你拿到的图片肯定是没办法在mpp里去指定特定格式输出的,可以从mpp输出得到他的格式类型,然后自行用rga或者cpu去转换。
回复

使用道具 举报

15195979392

新手上路

积分
21
5#
 楼主| 发表于 2022-3-10 15:16:39 | 只看该作者
jefferyzhang 发表于 2022-3-10 15:09
报错原因我没跟过不了解,但是你说用mpi_dec_test是正常的,就不会有什么太大问题。

你拿到的图片肯定是 ...

OK,我知道了,谢谢大佬
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表