【问题标题】:iOS AVCaptureVideoDataOutput cost too much memoryiOS AVCaptureVideoDataOutput 消耗太多内存
【发布时间】:2014-05-07 03:42:32
【问题描述】:

我正在使用AVFoundation 框架通过 iPhone 摄像头捕捉视频,我的代码:

 self.session = [[AVCaptureSession alloc] init];
 ...
 self.output = [[AVCaptureVideoDataOutput alloc] init];
 [self.session addOutput:self.output];

[session addOutput]之前一切顺利,内存限制在3M,但是[session addOutput]之后,内存使用量每秒增加0.06M,几分钟后,App会因为内存警告而崩溃。 AVCaptureVideoDataOutput 似乎消耗了太多内存,并且可能存在内存泄漏问题。

那么我怎样才能减少内存使用呢?

iOS 版本:7.1.1

【问题讨论】:

  • 你启用了僵尸吗?
  • 我也遇到了同样的问题,请问您解决了吗?如果是,请分享您的解决方案。
  • 在主队列中执行[self.session addOutput:self.output];
  • 您找到解决此问题的方法了吗?我目前遇到同样的问题:stackoverflow.com/q/67370456/5281431
  • 遇到了同样的问题。有人找到原因了吗?

标签: ios memory avfoundation avcapturesession


【解决方案1】:
AVCaptureSession *mSession; ;

使用会话预设高度而不是会话预设照片

mSession.sessionPreset = AVCaptureSessionPresetHigh; //yes

mSession.sessionPreset = AVCaptureSessionPresetPhoto; //no

【讨论】:

    猜你喜欢
    • 2020-04-16
    • 2011-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 2016-06-29
    • 2022-06-25
    相关资源
    最近更新 更多