首页 > 解决方案 > 为什么 ffmpeg 中解码包的大小为零?

问题描述

我正在阅读从视频中解码字节流的代码。但我有点困惑,数据包的大小有时可能为 0。这是什么意思?如果为零,这些字节携带的信息是什么?

int len = av_parser_parse2(
        pCodecParserCtx, pCodecCtx,
        &packet.data, &packet.size,
        cur_ptr , cur_size ,
        AV_NOPTS_VALUE, AV_NOPTS_VALUE, AV_NOPTS_VALUE);
    cur_ptr += len;
    cur_size -= len;

if (packet.size==0)
  continue;  

标签: cffmpeg

解决方案


根据官方文档,如果尚未获得数据包并且解析器需要更多输入数据,则数据包大小将设置为零。


推荐阅读