ios - iPhone 5S 的静态图像拍摄时间比 iPhone 5 慢?

标签 ios iphone camera avfoundation avcapturesession

我正在 try catch 8 兆像素的静态图像。我分析了相机管道到达完成处理程序所需的时间,平均 iPhone 5S 需要 0.33 秒,而 iPhone 5 需要不到 0.15 秒。任何机构都可以解释这一点。这是我的分析代码。

__block NSDate *TimerAcross = [NSDate date];
    [stillImageOutput captureStillImageAsynchronouslyFromConnection:connection
                                                  completionHandler:^(CMSampleBufferRef imageDataSampleBuffer, NSError *error)
     {
         DLog(@"handler call  timer = %f", [[NSDate date] timeIntervalSinceDate:TimerAcross]);
    }`

当我在方形凸轮中尝试相同的代码时(苹果演示代码)。我看到 iPhone 5S 花费的时间约为 0.6 秒,比 iPhone 5 少。 这背后的原因是什么。

我的设置用于捕获 YUVSP 图像。 `NSMutableDictionary *outputSettings = [NSMutableDictionarydictionaryWithObject:AVVideoCodecJPEG forKey:AVVideoCodecKey];

[outputSettings setValue:@(kCVPixelFormatType_420YpCbCr8BiPlanarFullRange) forKey:(id)kCVPixelBufferPixelFormatTypeKey];

NSMutableDictionary *videoOutputSettings = [NSDictionary dictionaryWithObject:@(kCVPixelFormatType_420YpCbCr8BiPlanarFullRange) forKey:(id)kCVPixelBufferPixelFormatTypeKey];

[stillImageOutput setOutputSettings:outputSettings];
[videoDataOutput setVideoSettings:videoOutputSettings];
videoDataOutput.alwaysDiscardsLateVideoFrames = YES;

if([captureSession canAddOutput:stillImageOutput] && [captureSession canAddOutput:videoDataOutput])
{
    [captureSession addOutput:videoDataOutput];
    [captureSession addOutput:stillImageOutput];
    NSLog(@"added output to captureSession");
    return YES;
}
else
{
    NSLog(@"error in adding still image output");
    return NO;
}

}`

最佳答案

请分享或检查您连接的视频方向设置。

如果设置为某些固定方向硬件可能需要一些时间才能通过回调返回。请根据您当前的设备方向使用[connection setVideoOrientation:]方法设置方向,这样回调速度会更快。

欲了解更多详细信息,您可以阅读此Link

关于ios - iPhone 5S 的静态图像拍摄时间比 iPhone 5 慢?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21779522/

相关文章:

ios - 自定义 View 上的 UIPanGestureRecognizer 从未调用

ios - 导航栏未显示在嵌入的导航 Controller 中

iPhone UITableView 错误??? -sectionIndexTitlesForTableView 似乎是造成的?

android - 在 Android 中使用 Canvas 转换实现 'rubberbanding' 相机

ios - ios6 中的自动旋转未按预期工作

ios - 无法通过 AdHoc 测试生产推送通知

ios - 如何顺利地允许在我的聊天应用程序中发送消息?

ios - 缩放 ScrollView 内的内容 View 不起作用

android - 是否可以为前后摄像头设置不同的摄像头参数?

android - Android 中的相机捕捉按钮