Lines Matching refs:MppPacket
114 MppPacket为一维缓存封装,可以从MppMem和MppBuffer生成,主要用于表示码流数据。
118 使用MppPacket和MppFrame就可以简单有效的完成一般的视频编解码工作。
120 以视频解码为例,码流输入端把地址和大小赋值给MppPacket,通过put_packet接口输入,在输出端通过get_frame接口得到输入图像MppFrame,即可完成最简单的视频解码过程。
165 ## 2.3 码流封装MppPacket
167 MppPacket主要用于描述一维码流的相关信息,特别是有效数据的位置与长度。MppPacket几个重要的参数成员如下:
180 <center>图表 6 MppPacket重要参数说明</center>
182 MppPacket的其他配置参数成员如下:
189 | buffer | MppBuffer | 表示MppPacket对应的MppBuffer。 |
192 MppPacket做为描述一维内存的结构体,在使用时需要使用malloc出来的内存或者使用MppBuffer的内存进行初始化。在释放MppPacket时有几种情况:
194 如果是外部malloc地址配置到MppPacket,不会做free释放处理,如下示例;
198 如果是拷贝产生的MppPacket,会做free释放内存,如下示例;
202 如果是MppBuffer产生的MppPacket,会在生成时对MppBuffer加引用,在释放时对MppPacket减引用。
236 …体,码流解码后的信息(包括像素数据与pts,错误信息等相关信息)都需要带在MppFrame结构体给调用者。MppFrame中的pts/dts,以及eos标志,就是继承自对应的输入MppPacket。
242 当MppPacket与MppFrame组成的接口无法满足需求时,需要使用MppTask做为一个数据容器,来满足复杂的输入输出需求。MppTask需要与poll/dequeuer/enqueue接口来…
273 | decode | 函数指针 | MPP_RET (\*decode)(MppCtx ctx, MppPacket packet, MppFrame \*frame) <br…
274 | decode_put_packet | 函数指针 | MPP_RET (\*decode_put_packet)(MppCtx ctx, MppPacket packet) <br/>视频解码输…
276 | encode | 函数指针 | MPP_RET (\*encode)(MppCtx ctx, MppFrame frame, MppPacket \*packet) <br…
278 | encode_get_packet | 函数指针 | MPP_RET (\*encode_get_packet)(MppCtx ctx, MppPacket \*packet) <br/>视频编…
302 | 接口定义 | MPP_RET decode_put_packet(MppCtx ctx, MppPacket packet) |
314 一种是外部已经按帧分段的数据,即每一包输入给decode_put_packet函数的MppPacket数据都已经包含完整的一帧,不多也不少。在这种情况下,MPP可以直接按包处理码流,是MPP的默认运…
318 另一种是按长度读取的数据,这样的数据无法判断一包MppPacket数据是否是完整的一帧,需要MPP内部进行分帧处理。MPP也可以支持这种形式的输入,但需要在mpp_init之前,通过control接…
322 这样,调用decode_put_packet输入的MppPacket就会被MPP重新分帧,进入到情况一的处理。
334 输入MppPacket的有效数据长度为length,在送入decode_put_packet之后,如果输入码流被成功地消耗,函数返回值为零(MPP_OK),同时MppPacket的length被清为…
444 当用户发送最后一包MppPacket码流,并置上EOS标记送入解码器,解码器在处理完这最后一包数据之后会进入EOS的状态,不再接收和处理码流,需要reset之后再才能再继续接收新的码流。
559 | 接口定义 | MPP_RET encode_get_packet(MppCtx ctx, MppPacket \*packet) |
561 | 输入参数 | ctx :MPP解码器实例 packet :用于获取MppPacket实例的指针。 |
769 …C_GET_HDR_SYNC输入参数为MppPacket,需要外部用户分配好空间并封装为MppPacket再control到编码器,control接口调用返回时就完成了数据拷贝,线程安全。调用时机…
771 MPP_ENC_GET_EXTRA_INFO输入参数为MppPacket\*,会获取编码器的内部MppPacket来进行访问。调用时机在编码器基本配置完成之后。需要注意的是,这里得到的MppPack…
773 由于在多线程情况下,MPP_ENC_GET_EXTRA_INFO命令获取的MppPacket有可能在读取时被其他control修改,所以这个命令并不是线程安全的,仅做为旧vpu_api的兼容用,不要…