3836
- 收藏
- 点赞
- 分享
- 举报
3559:Venc编码问题
创建原始帧,调用HI_MPI_VENC_SendFrame接口,Venc模块进行编码。编码失败。
在logmpp中能看到日志消息:
<3>[ venc] [Func]:venc_check_video_info [Line]:1920 [Info]:venc 0 : sendinfo pic info err.
<3>[ venc] [Func]:venc_get_stream [Line]:5014 [Info]:input buf is not enough to hold a frame,in count:0,pack count:4
<3>[ venc] [Func]:venc_check_time_ref [Line]:2720 [Info]:current timeref(0x0) is not larger than last_rcv_time_ref(0x0)
demo大致流程:
HI_MPI_VB_GetBlock
HI_MPI_VB_Handle2PhysAddr
HI_MPI_SYS_Mmap
HI_MPI_VB_Handle2PoolId
HI_MPI_VPSS_SendFrame
HI_MPI_SYS_Munmap
HI_MPI_VB_ReleaseBlock
填写原始帧部分:
u32Height=720;
u32Width=1280;
u32LStride=1280;
u32CStride=1280;
u32LumaSize = (u32LStride * u32Height);
u32ChrmSize = (u32CStride * u32Height) >> 2;
u32Size = u32LumaSize + (u32ChrmSize << 1);
pstVFrameInfo.stVFrame.enField = VIDEO_FIELD_FRAME;
pstVFrameInfo.stVFrame.enPixelFormat = PIXEL_FORMAT_YVU_SEMIPLANAR_420;
pstVFrameInfo.stVFrame.enVideoFormat = VIDEO_FORMAT_LINEAR;
pstVFrameInfo.stVFrame.enCompressMode = COMPRESS_MODE_NONE;
pstVFrameInfo.stVFrame.enDynamicRange = DYNAMIC_RANGE_SDR8;
pstVFrameInfo.stVFrame.enColorGamut = COLOR_GAMUT_BT709;
pstVFrameInfo.stVFrame.u64PhyAddr[0] = u64PhyAddr;
pstVFrameInfo.stVFrame.u64PhyAddr[1] = pstVFrameInfo.stVFrame.u64PhyAddr[0] + u32LumaSize;
pstVFrameInfo.stVFrame.u64PhyAddr[2] = pstVFrameInfo.stVFrame.u64PhyAddr[1] + u32ChrmSize;
pstVFrameInfo.stVFrame.u64VirAddr[0] = u64VirAddr;
pstVFrameInfo.stVFrame.u64VirAddr[1] = pstVFrameInfo.stVFrame.u64VirAddr[0] + u32LumaSize;
pstVFrameInfo.stVFrame.u64VirAddr[2] = pstVFrameInfo.stVFrame.u64VirAddr[1] + u32ChrmSize;
pstVFrameInfo.stVFrame.u32Width = u32Width;
pstVFrameInfo.stVFrame.u32Height = u32Height;
pstVFrameInfo.stVFrame.u32Stride[0] = u32LStride;
pstVFrameInfo.stVFrame.u32Stride[1] = u32CStride;
pstVFrameInfo.stVFrame.u32Stride[2] = u32CStride;
pstVFrameInfo.stVFrame.u64PTS = n_u64PTS;
-------------------------------------------------------------------------------------------------------------------------------------
求大佬们解答小弟的疑问!非常感谢!!!!!!
在logmpp中能看到日志消息:
<3>[ venc] [Func]:venc_check_video_info [Line]:1920 [Info]:venc 0 : sendinfo pic info err.
<3>[ venc] [Func]:venc_get_stream [Line]:5014 [Info]:input buf is not enough to hold a frame,in count:0,pack count:4
<3>[ venc] [Func]:venc_check_time_ref [Line]:2720 [Info]:current timeref(0x0) is not larger than last_rcv_time_ref(0x0)
demo大致流程:
HI_MPI_VB_GetBlock
HI_MPI_VB_Handle2PhysAddr
HI_MPI_SYS_Mmap
HI_MPI_VB_Handle2PoolId
HI_MPI_VPSS_SendFrame
HI_MPI_SYS_Munmap
HI_MPI_VB_ReleaseBlock
填写原始帧部分:
u32Height=720;
u32Width=1280;
u32LStride=1280;
u32CStride=1280;
u32LumaSize = (u32LStride * u32Height);
u32ChrmSize = (u32CStride * u32Height) >> 2;
u32Size = u32LumaSize + (u32ChrmSize << 1);
pstVFrameInfo.stVFrame.enField = VIDEO_FIELD_FRAME;
pstVFrameInfo.stVFrame.enPixelFormat = PIXEL_FORMAT_YVU_SEMIPLANAR_420;
pstVFrameInfo.stVFrame.enVideoFormat = VIDEO_FORMAT_LINEAR;
pstVFrameInfo.stVFrame.enCompressMode = COMPRESS_MODE_NONE;
pstVFrameInfo.stVFrame.enDynamicRange = DYNAMIC_RANGE_SDR8;
pstVFrameInfo.stVFrame.enColorGamut = COLOR_GAMUT_BT709;
pstVFrameInfo.stVFrame.u64PhyAddr[0] = u64PhyAddr;
pstVFrameInfo.stVFrame.u64PhyAddr[1] = pstVFrameInfo.stVFrame.u64PhyAddr[0] + u32LumaSize;
pstVFrameInfo.stVFrame.u64PhyAddr[2] = pstVFrameInfo.stVFrame.u64PhyAddr[1] + u32ChrmSize;
pstVFrameInfo.stVFrame.u64VirAddr[0] = u64VirAddr;
pstVFrameInfo.stVFrame.u64VirAddr[1] = pstVFrameInfo.stVFrame.u64VirAddr[0] + u32LumaSize;
pstVFrameInfo.stVFrame.u64VirAddr[2] = pstVFrameInfo.stVFrame.u64VirAddr[1] + u32ChrmSize;
pstVFrameInfo.stVFrame.u32Width = u32Width;
pstVFrameInfo.stVFrame.u32Height = u32Height;
pstVFrameInfo.stVFrame.u32Stride[0] = u32LStride;
pstVFrameInfo.stVFrame.u32Stride[1] = u32CStride;
pstVFrameInfo.stVFrame.u32Stride[2] = u32CStride;
pstVFrameInfo.stVFrame.u64PTS = n_u64PTS;
-------------------------------------------------------------------------------------------------------------------------------------
求大佬们解答小弟的疑问!非常感谢!!!!!!
我来回答
回答1个
时间排序
认可量排序
认可0
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片![alt](url)
相关问答
-
2017-03-02 15:29:26
-
52020-07-22 10:47:04
-
42019-02-26 13:46:47
-
2018-07-24 16:43:24
-
2020-09-14 16:38:23
-
2020-09-14 16:39:38
-
2024-03-13 09:12:48
-
2020-03-02 15:07:49
-
2019-07-12 18:29:38
-
2019-05-10 18:39:05
-
2021-02-04 15:18:29
-
2020-04-07 11:51:15
-
2020-10-29 11:14:15
-
2019-09-09 18:12:17
-
2018-12-12 17:26:34
-
2016-07-07 15:04:59
-
72013-03-18 14:30:25
-
132012-11-28 18:12:00
-
02017-12-16 18:12:17
无更多相似问答 去提问
点击登录
-- 积分
-- E币
提问
—
收益
—
被采纳
—
我要提问
切换马甲
上一页
下一页
悬赏问答
-
50如何获取vpss chn的图像修改后发送至vo
-
5FPGA通过Bt1120传YUV422数据过来,vi接收不到数据——3516dv500
-
50SS928 运行PQtools 拼接 推到设备里有一半画面会异常
-
53536AV100的sample_vdec输出到CVBS显示
-
10海思板子mpp怎么在vi阶段改变视频数据尺寸
-
10HI3559AV100 多摄像头同步模式
-
9海思ss928单路摄像头vio中加入opencv处理并显示
-
10EB-RV1126-BC-191板子运行自己编码的程序
-
10求HI3519DV500_SDK_V2.0.1.1
-
5有偿求HI3516DV500 + OV5647驱动
举报反馈
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明
提醒
你的问题还没有最佳答案,是否结题,结题后将扣除20%的悬赏金
取消
确认
提醒
你的问题还没有最佳答案,是否结题,结题后将根据回答情况扣除相应悬赏金(1回答=1E币)
取消
确认