FFmpeg AVPacket详解

FFmpeg的AVPacket是解复用后、解码前数据的容器,包含压缩的Frame或多个压缩的音频Frame。AVPacket由data和AVBufferRef管理数据,通过引用计数机制处理内存。AVPacket的内存管理涉及AVPacket创建、AVBufferRef、相关函数(如av_packet_ref, av_packet_unref)以及在队列中的处理。理解并正确管理AVPacket对于音视频处理至关重要。" 85051345,8275826,Ubuntu18.10安装指南:双系统与华硕AC57无线网卡驱动,"['Ubuntu', 'Linux驱动', '双系统安装', '硬件兼容性', '网络配置']
摘要由CSDN通过智能技术生成

目录

一、AVPacket简介

二、AVPacket 字段说明

三、AVPacket中的内存管理

1、 AVPacket创建

(1)、第一种情况

(2)、第二种情况 

2、AVPacket中的AVBufferRef

3、AVPacket 相关函数介绍:

4、AVPacket队列:

5、从队列中取出AVPacket

四、总结


一、AVPacket简介

        AVPacket是FFmpeg中很重要的一个数据结构,它保存了解复用之后,解码之前的数据(仍然是压缩后的数据)和关于这些数据的一些附加信息,如显示时间戳(pts)、解码时间戳(dts)、数据时长,所在媒体流的索引等。

        对于视频(Video)来说,AVPacket通常包含一个压缩的Frame,而音频(Audio)则有可能包含多个压缩的Frame。并且,一个Packet有可能是空的,不包含任何压缩数据,只含有side data(side data,容器提供的关于Packet的一些附加信息。例如,在编码结束的时候更新一些流的参数)。

        AVPacket的大小是公共的ABI(public ABI)一部分,这样的结构体在FFmpeg很少,由

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大王算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值