opengl、ffmpeg内存泄露及混编问题(2017-4-20)
来源:互联网 发布:北风网大数据课程 编辑:程序博客网 时间:2024/06/14 07:30
记录备忘(2017-4-20)
ffmpeg
a.
从摄像头获取到数据为yuv422格式,通过ffmpeg库函数或者yuyv转rgb的方式来处理数据,然后用opengl显示。直接用ffmpeg的库来转比较方便,各种格式都有,还有缩放等功能
不过,注意sws_getContext只能调用一次,在初始化时候调用即可,另外调用完后,在析构函数中使用sws_free_Context,将它的内存释放
否则会导致内存一直增长
b.
用sws_scale函数转换出来的图像是上下左右颠倒的,两种处理方法:1.改变传入buffer的数据结构,在转换之前就颠倒过来;2.在opengl渲染的时候改变texture的坐标,用1.0来减去texture的坐标就可以了
opengl
glGenTextures()函数,放到初始化里
这个函数每被调用一次,就给纹理重新分配新的ID,这样重复的次数越多,就占内存越多,最终导致内存泄露
ffmpeg库
a.
在mac app开发中,有个文件需要改为.mm混编
编译器的问题导致ffmpeg的函数成了undefined symbol,这是混编的锅,两种方法:1.不在混编的文件里面调用ffmpeg函数;2.extern “c”
b.
编译出Mac上可以用的ffmpeg库,我直接使用的是ijkplayer提供的源码,在iOS那个目录里面找到iOS的compile-ffmpeg.sh文件里面把编译的选项改为Mac平台支持的i386和x86_64再编译
Mac动态库链接问题
mac动态库要放到指定的位置usr/local/…具体看库的要求,并不是加了header search path和library search path就能解决的
- opengl、ffmpeg内存泄露及混编问题(2017-4-20)
- ffmpeg 手动添加 sps pps(处理内存泄露问题)
- ffmpeg 编码 apng 解决内存泄露问题
- ffmpeg中ff_scale_image()内存泄露
- spark内存泄露的问题及解决
- SSH内存泄露及Spring Quartz问题
- SSH内存泄露及Spring Quartz问题
- Delphi的内存管理及内存泄露问题
- 常见内存泄露及解决方案(转)
- 内存泄露及检测工具
- 内存泄露及检测
- 内存泄露及检测
- 内存泄露及检测
- 内存泄露及检测
- 内存泄露及检测
- 内存泄露及调试
- 内存泄露及内存溢出
- 内存泄露问题排查技巧(无米之炊)
- MySQL5.7丢失root密码怎么办?
- 参数重复提交的问题
- Android Studio生成.keystore签名文件
- Find Minimum in Rotated Sorted Array
- php中对象赋值给变量
- opengl、ffmpeg内存泄露及混编问题(2017-4-20)
- 正方形个数
- oracle常用函数详解(详细)
- css table-layout 、border-collapse属性
- 欢迎使用CSDN-markdown编辑器
- iOS 299美元企业账号申请流程及注意事项
- HM中AMP模式的快速算法
- CSS3 选择器—基本选择器
- 同时收到多家公司offer,怎样选择?