ffmpeg内存模型

文章目录

展示图

拷贝packet

拷贝packet有两种情况

1: 两个packet的buf引用的是同一个数据缓冲空间,类似与浅拷贝

2:两个packet的buf引用的是不同的数据缓冲空间,类似与深拷贝

重要!!!

当我们进行浅拷贝的时候 AVBuffer里面的 refcount就会+1 表示有多一个指向此范围的结构体

当释放引用共享空间的packet的时候 这个计数就会-1 当计数为0的时候 就会释放掉引用的缓存空间

AVFrame也是相同的机制

注意 重要内容为
真实的数据为 avpacket 里面的avbufferRef 里面的AvBuffer

avpacket.c相关函数

av_packet_alloc 简单的赋值 里面的还有没有进行初始化的指针
av_packet_ref

如果这里有数据的话 则会简单的进行指针的拷贝

然后将相关的引用计数给+1

avframe的逻辑也差不多如此

av_packet_copy_props 拷贝全部属性AVPacket

av_packet_clone克隆一份 实际就是加上申请空间然后再进行数据赋值

相关推荐
安步当歌1 小时前
【FFmpeg】ffmpeg中zig-zag的扫描方式
ffmpeg
q***040510 小时前
从MySQL5.7平滑升级到MySQL8.0的最佳实践分享
ffmpeg
一叶飘零_sweeeet11 小时前
FFmpeg 实战全解析:从底层原理到企业级应用落地
ffmpeg
别动哪条鱼1 天前
MP4转AAC转换器C++
c++·ffmpeg·音视频·aac
别动哪条鱼1 天前
FFmpeg 核心数据结构关系图
数据结构·ffmpeg
aqi002 天前
FFmpeg开发笔记(九十一)基于Kotlin的Android直播开源框架RootEncoder
android·ffmpeg·kotlin·音视频·直播·流媒体
寻找华年的锦瑟2 天前
Qt-FFmpeg案例(0基础,包含环境配置)
开发语言·qt·ffmpeg
大新新大浩浩2 天前
amazoncorretto:17镜像中安装ffmpeg
ffmpeg
Industio_触觉智能3 天前
瑞芯微RK3562平台FFmpeg硬件编解码移植及性能测试实战攻略
ffmpeg·视频编解码·瑞芯微·rk3562·触觉智能
八月的雨季 最後的冰吻3 天前
FFmepg--25-h265解码yuv格式
ffmpeg