音视频学习-直播助手内存优化

一、iOS进程中使用的内存

  1)内存的类型

Physical Memory Wired—The amount of memory being used by the operating system.
Physical Memory Active—The amount of memory being used by processes other than the operating system.
Physical Memory Inactive—The amount of memory that was recently released.
Physical Memory Used—The total amount of memory that was used while performing the sample.
Physical Memory Free—The amount of available memory.
Total VM Size—The total size of virtual memory.
VM Page In Bytes—The amount of memory calls sent to RAM.
VM Page Out Bytes—The amount of memory calls sent to disk.
VM Swap Used—The amount of memory called from disk.

  2)Xcode 自带的Instruments工具能够监测到下面几种类型

The ObjectAlloc instrument records and displays a history of all memory allocations since the launch of your application.
The Leaks instrument looks for allocated memory that is no longer referenced by your program’s code; see Finding Leaks Using Instruments.
The Shared Memory instrument monitors the opening and unlinking of shared memory regions.
The Memory Monitor instrument measures and records the system’s overall memory usage.

  通常代码中OC的对象生成释放,c、C++对象的生成释放,malloc和free都能被监控

二、直播助手在排查内存问题时却遇到一个奇怪的问题

  Instruments工具记录没有内存泄漏,Xcode 显示内存从70MB到90MB,在网上搜索之后,得到下面的答案

三、结论

  1)Xcode自带的内存监控工具的内存数据可以说是错误的,要以Instruments工具为准

  https://stackoverflow.com/questions/28321954/ios-memory-usage-increasing-cant-find-the-culprit/28566113#28566113

  

时间: 2024-10-09 00:33:22

音视频学习-直播助手内存优化的相关文章

android音视频点/直播模块开发

前言 随着音视频领域的火热,在很多领域(教育,游戏,娱乐,体育,跑步,餐饮,音乐等)尝试做音视频直播/点播功能,那么作为开发一个小白,如何快速学习音视频基础知识,了解音视频编解码的传输协议,编解码方式,以及如何技术选型,如何解决遇到的坑,本文抛砖引玉,欢迎大咖交流. 一. 音视频的基础知识 1.1 基本概念 视频是什么 静止的画面叫图像(picture).连续的图像变化每秒超过24帧(frame)画面以上时,根椐视觉暂留原理, 人眼无法辨别每付单独的静态画面,看上去是平滑连续的视觉效果.这样的连

Android音视频点/直播模块开发实践总结-zz

随着音视频领域的火热,在很多领域(教育,游戏,娱乐,体育,跑步,餐饮,音乐等)尝试做音视频直播/点播功能.那么作为开发一个小白,如何快速学习音视频基础知识,了解音视频编解码的传输协议,编解码方式,以及如何技术选型,如何解决遇到的坑. 一. 音视频的基础知识 1.1 基本概念 视频是什么 静止的画面叫图像(picture).连续的图像变化每秒超过24帧(frame)画面以上时,根椐视觉暂留原理,人眼无法辨别每付单独的静态画面,看上去是平滑连续的视觉效果.这样的连续画面叫视频.当连续图像变化每秒低于

音视频学习-exceeded mem limit: ActiveHard 50 MB (fatal)

一.现象 ReplayKit2 适配中 UPLOAD进程被系统杀掉 日志中显示原因:exceeded mem limit: ActiveHard 50 MB (fatal) 二.内存占用分析 1)系统回调YUV数据(NV12类型)给到UPLOAD进程,回调方法运行在多线程中 - (void)processSampleBuffer:(CMSampleBufferRef)sampleBuffer withType:(RPSampleBufferType)sampleBufferType 上述在多线程

Android音视频学习第7章:使用OpenSL ES进行音频解码

/* * *这里使用了transcode-1.1.7对wav文件进行解码,然后使用opensl es进行播放 * */ //用到的变量和结构体 WAV wav; //wav文件指针 SLObjectItf engineObject; //引擎对象 SLEngineItf engineInterface; //引擎接口 SLObjectItf outputMixObject; //混音器 SLObjectItf audioPlayerObject; //播放器对象 SLAndroidSimpleB

音视频学习--H264解析渲染

一.H264文件获取 下载一段MP4文件,通过FFMPEG转换成MP4 ffmpeg -i Gravity.mp4 -vcodec h264 out_2.264 二.通过解析H264成帧,然后刷新 这里的环境是 MacOS  + Python2.7 + openCV2 #!/usr/local/bin/python2.7 # -*- coding: utf-8 -*- __author__ = 'qqvipfunction' import sys import cv2 import os imp

【音视频连载-007】基础学习篇-SDL 播放 PCM 音频文件(上)

音视频学习入门技术文章连载: 技术开发故事会连载 [音视频连载-001]基础学习篇-SDL 介绍以及工程配置 [音视频连载-002]基础学习篇-SDL 创建窗口并显示颜色 [音视频连载-003]基础学习篇-SDL 消息循环和事件响应 [音视频连载-004]基础学习篇-SDL 加载图片并显示 [音视频连载-005]基础学习篇-SDL 加载 YUV 文件并显示 [音视频连载-006]基础学习篇-SDL 播放 YUV 视频文件]) 在前面的文章中已经能够利用 SDL 去播放 YUV 视频文件了,接下来

音视频处理之FFmpeg封装格式20180510

一.FFMPEG的封装格式转换器(无编解码) 1.封装格式转换 所谓的封装格式转换,就是在AVI,FLV,MKV,MP4这些格式之间转换(对应.avi,.flv,.mkv,.mp4文件). 需要注意的是,本程序并不进行视音频的编码和解码工作.而是直接将视音频压缩码流从一种封装格式文件中获取出来然后打包成另外一种封装格式的文件. 本程序的工作原理如下图1所示: 由图可见,本程序并不进行视频和音频的编解码工作,因此本程序和普通的转码软件相比,有以下两个特点: 处理速度极快.视音频编解码算法十分复杂,

从零到一,使用实时音视频 SDK 一起开发一款 Zoom 吧

zoom(zoom.us) 是一款受到广泛使用的在线会议软件.相信各位一定在办公.会议.聊天等各种场景下体验或者使用过,作为一款成熟的商业软件,zoom 提供了稳定的实时音视频通话质量,以及白板.聊天.屏幕共享.PPT放映等常用功能.但是在当今浏览器成为端上主流的时代,实时音视频又怎甘于落后呢?相比于需要安装包的 Zoom,直接在网页上开发一款类似的会议软件肯定会受到更多的关注.当需要开会的时候,直接通过一个链接,大家就可以接入并开始会议了.现在,使用七牛实时音视频的 Web SDK,我们可以将

网络摄像机IPCamera RTSP直播播放网络/权限/音视频数据/花屏问题检测与分析助手EasyRTSPClient

前言 最近在项目中遇到一个奇怪的问题,同样的SDK调用,访问海康摄像机的RTSP流,发保活OPTIONS命令保活,一个正常,而另一个一发就会被IPC断开,先看现场截图: 图1:发OPTIONS,摄像机立马断流 图2:但在另一个程序中发OPTIONS保活包又不断流 在大部分的摄像机上,都没什么问题,单单在海康的这一款摄像机中出现了这种问题,不仔细对比命令行中的输出,根本无法确定问题点,图2中的OPTIONS报文中携带了Authorization的头字段,将认证信息都带入了进来,而图1中只是简单将用