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克隆一份 实际就是加上申请空间然后再进行数据赋值

相关推荐
山栀shanzhi1 天前
FFmpeg 实战:RGB 裸流编码成 MP4,全流程详解(含源码
c++·ffmpeg
kuinnebula2 天前
FFmpeg基础
ffmpeg
这辈子谁会真的心疼你2 天前
怎样让所有mp3声音大小一样?统一声音的两个方法
人工智能·ffmpeg·音视频
landihao2 天前
ffmpeg推流的个别错误和图片压缩视频
ffmpeg·音视频
神秘剑客_CN2 天前
使用ffmpeg+python实现自动给视频添加移动水印
python·ffmpeg·音视频
琪伦的工具库3 天前
批量视频根据参数重命名工具使用指南
ffmpeg·音视频
糖炒栗子03263 天前
SRS + FFmpeg WebRTC 循环推流环境搭建
ffmpeg·webrtc
破阵子443283 天前
从零开始:Windows 系统下 FFmpeg 安装与使用完全指南
windows·ffmpeg
要开心吖ZSH4 天前
MP4 转 WAV 音频转码方案详解(ProcessBuilder + FFmpeg)
java·ffmpeg·音视频
要开心吖ZSH4 天前
MP4 转 WAV 音频转码方案详解(互联网医院病历AI实战-JAVE2方案)
java·ffmpeg