Toybrick

编码H264,示例代码与mpp库接口输出数据不一致

szmtkm

注册会员

积分
179
楼主
发表于 2021-11-16 16:53:08    查看: 4052|回复: 4 | [复制链接]    打印 | 只看该作者
本帖最后由 szmtkm 于 2021-11-16 17:28 编辑

楼主,图片分辨率640x480,编码成H264, 用rockchip_mpp.h中的MPP接口出来的码流大小才5k多的字节,但用mpi_enc_test例程编出来码流有20多万个字节( mpp_packet_get_length);
函数接口 mpp_packet_get_pos() 和  mpp_packet_get_length() 获取出来的不是有效数据的起始地址和长度吗,还是说起始数据中还有其它的数据包含在一起????   若有,如何找到真正需要的码流数据????

回复

使用道具 举报

jefferyzhang

版主

积分
13580
沙发
发表于 2021-11-17 09:02:00 | 只看该作者
码流大小是可配置的
回复

使用道具 举报

szmtkm

注册会员

积分
179
板凳
 楼主| 发表于 2021-11-17 09:48:31 | 只看该作者
本帖最后由 szmtkm 于 2021-11-17 09:52 编辑

楼主,在问下,怎么配置????
具体哪些参数?
fps、 gop、 bps 、mode  quality、 profile 的配置同 mpp库接口的一样,其它参数默认的。
回复

使用道具 举报

jefferyzhang

版主

积分
13580
地板
发表于 2021-11-17 10:41:27 | 只看该作者
码流是指每秒钟平均包大小,而不是单个包大小,I帧会比较大,P帧会很小。
只要你配置的bps和你每秒平均bytes是差不多的,就没有问题
回复

使用道具 举报

szmtkm

注册会员

积分
179
5#
 楼主| 发表于 2021-11-17 11:24:16 | 只看该作者
jefferyzhang 发表于 2021-11-17 10:41
码流是指每秒钟平均包大小,而不是单个包大小,I帧会比较大,P帧会很小。
只要你配置的bps和你每秒平均byte ...

一张640x480的NV12图片,rockchip_mpp.h库接口编码的packet只有4k左右,而用mpp sample 中的示例编码出来有十几k;可以设置编码成H264的packet 压缩率吗?  另有一问:rockchip_mpp.h库的接口是64位对齐的吗,图片640x480、1920x1080编码H264推流时底部为绿色,但图片改为1920x1088时就没了。
回复

使用道具 举报

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

本版积分规则

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


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