Skip to content

当持有encode_get_packet产生的MppPacket,超过52个时,就会出现画面循环并且画面异常 #939

@lxyevl

Description

@lxyevl

示例代码
std::shared_ptr<void> tmp[64];
int index = 0;
int i = 240;
while (i--)
{
V4L2MppBufferHolder bufferHolder = capture.getBufHolder();
encoder.putFrameBuf(bufferHolder.getMppBuf(), false);
std::shared_ptr packetPtr = encoder.getSharedPacket();
void *ptr = mpp_packet_get_pos(packetPtr.get());
size_t len = mpp_packet_get_length(packetPtr.get());
outFile.write((char *)ptr, len);
tmp[index++ % 52] = packetPtr;
}`
当持有encode_get_packet产生的MppPacket,超过52个时,就会出现画面循环并且画面异常
测试来看应该是mpp自己内存管理的问题

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions