本文向您展示了如何修复音频和视频提取功能组件EasyStreamingServer读取本地文件时的内存泄漏。内容简洁易懂,一定会让你大放异彩。希望通过这篇文章的详细介绍,你能有所收获。
EasyStreamingServer是一个音视频抽取功能组件,支持文件、RTSP、RTMP、HTTP等多种流媒体协议。支持H.264、H.265、PCM、AAC等多种音视频编码格式的输出。并支持Windows、Linux、安卓、iOS、ARM等各种平台。
当TSINGSEE视频开发人员通过EasyStreamingServer读取本地文件时,会出现内存泄漏问题。
00-1010用EasyStreamingServer读取本地文件时,我们可以看到内存一直在增长。与拉取网络流(如RTSP流)相比,内存消耗相对稳定,没有内存泄漏。
提取本地文件时,内存如下
从上面可以看出,内存消耗一直在增加。然而,RTSP溪流却没有这样的成长。
从代码逻辑的角度来看,该文件与RTSP流的不同之处在于使用了av_bitstream_filter_filter,这就是问题发生的地方。Av_bitstream_filter_filter会重新分配内存,使用后需要及时释放,否则会出现内存泄漏。
从上面的分析我们可以推断,内存泄漏是在EasyStreamingClient中使用av_bitstream_filter_filter后没有及时释放内存造成的。
我们可以通过添加以下代码来解决内存泄漏问题:
if(m _ vbsf _ h364 _ to nexb!=空)
{
av _ free(packet . data);
数据包数据=空;
}经过重新测试,我们没有发现内存泄漏的问题,所以可以提醒大家,如果使用av_bitstream_filter_filter,一定要及时释放内存。
以上内容是音视频提取功能组件EasyStreamingServer读取本地文件时如何修复内存泄漏问题。你学到什么知识或技能了吗?如果你想学习更多的技能或丰富你的知识,请关注行业信息渠道。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/154593.html