|

楼主 |
发表于 2016-6-30 15:20:45
|
显示全部楼层
本帖最后由 leilc 于 2016-6-30 15:30 编辑
goodman兄: 找了半天没找到你的库,汗。。。我直接在论坛里面搜你名字
目前Qt我暂时放一边,想先用海思的sample程序点亮HDMI输出,然后再弄Qt输出到hifb。3519的输出cvbs和BT1120, HDMI是通过9024a芯片转的
我的步骤:
1. 把load3519脚本中加上
insmod extdrv/sil9024.ko norm=12
同时修改hifb.ko的参数为
insmod hifb.ko viedo="hifb:vram0_size:16200" # 1080p x 4 x 2
2. 运行mpp_big-little/sample/hifb下面的sample_hifb,出来两个选项:
0)vo cvbs output, default
1) vo BT1120 output
我修改代码,把这句
g_enVoIntfType = VO_INTF_BT1120
改成了
g_enVoIntfType = VO_INTF_HDMI
本来CVBS输出时候,运行程序打印信息正常,仅仅是HDMI无输出(本来就应该无输出,此时输出是BT1120)。改了这一句之后,运行出错,输出:
**********************************************************
[SAMPLE_COMM_VO_StartDev] -189: failed with 0xa00f8008!
[SAMPLE_HIFB_DoubleBufMode] -1999: start vo dev failed with -1!
对应代码段:
HI_S32 SAMPLE_COMM_VO_StartDev(VO_DEV VoDev, VO_PUB_ATTR_S* pstPubAttr)
{
HI_S32 s32Ret = HI_SUCCESS;
//printf("-----------------dev:%d\n", VoDev);
s32Ret = HI_MPI_VO_SetPubAttr(VoDev, pstPubAttr);
if (s32Ret != HI_SUCCESS)
{
SAMPLE_PRT("failed with %#x!\n", s32Ret);
return HI_FAILURE;
}
s32Ret = HI_MPI_VO_Enable(VoDev);
if (s32Ret != HI_SUCCESS)
{
SAMPLE_PRT("failed with %#x!\n", s32Ret);
return HI_FAILURE;
}
及
s32Ret = SAMPLE_COMM_VO_StartDev(VoDev, &stPubAttr);
if (HI_SUCCESS != s32Ret)
{
SAMPLE_PRT("start vo dev failed with %d!\n", s32Ret);
goto SAMPLE_HIFB_DoubleBufMode_0;
}
通过lsmod,看到9024模块已经加载了。不知道什么原因导致VO_INTF_HDMI参数传下去之后运行出错。但目前还没找到解决方案。有哪位兄弟碰到过这个问题,多谢。
|
|