You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS15与iOS16下iPhone11超广角相机拍摄裁切差异及解决方案问询

iOS15/iOS16超广角相机视频录制裁切差异解决方案

关于iOS16是否强制启用ISP级EIS的问题

iOS16并没有强制ISP启用EIS,你遇到的裁切是系统默认的数字裁切策略,而非EIS本身生效——即使设置preferredVideoStabilizationMode = .off,iOS16仍会对部分超广角视频格式自动应用裁切来优化画面表现。

实现iOS15/iOS16统一无裁切录制的代码方案

1. 筛选原生无裁切的相机格式

iPhone11的超广角相机存在多个视频格式,部分格式默认绑定了数字裁切逻辑。需筛选出不支持视频稳定且对应目标分辨率的原生格式:

guard let ultraWideDevice = AVCaptureDevice.default(.builtInUltraWideCamera, for: .video, position: .back) else {
    fatalError("超广角相机不可用")
}

// 筛选1080p/30fps、无视频稳定支持的原生格式
let targetFormats = ultraWideDevice.formats.filter { format in
    let formatDesc = format.formatDescription
    let dimensions = CMVideoFormatDescriptionGetDimensions(formatDesc)
    let supportsStabilization = format.isVideoStabilizationSupported
    let supports30fps = format.videoSupportedFrameRateRanges.contains { range in
        range.minFrameRate <= 30 && range.maxFrameRate >= 30
    }
    return !supportsStabilization && dimensions.width == 1920 && dimensions.height == 1080 && supports30fps
}

// 应用筛选后的格式
if let selectedFormat = targetFormats.first {
    do {
        try ultraWideDevice.lockForConfiguration()
        ultraWideDevice.activeFormat = selectedFormat
        ultraWideDevice.unlockForConfiguration()
    } catch {
        print("相机格式配置失败: \(error.localizedDescription)")
    }
}

2. 彻底关闭视频稳定相关的自动调整

除了设置稳定模式为.off,还需禁用系统的自动稳定调整:

if let videoConnection = captureSession.connections.first(where: { $0.isVideoOrientationSupported }) {
    if videoConnection.isVideoStabilizationSupported {
        videoConnection.automaticallyAdjustsVideoStabilizationEnabled = false
        videoConnection.preferredVideoStabilizationMode = .off
    }
}

3. 验证视野范围

设置完成后,可通过ultraWideDevice.activeFormat.videoFieldOfView验证视野角度——iPhone11超广角原生FOV约为120度,若数值接近则说明已启用无裁切格式。

补充说明

iOS16对相机编码管线做了优化,部分支持EIS的格式即使关闭稳定模式,系统仍会保留轻微裁切逻辑。因此必须严格选择不支持任何视频稳定模式的格式,才能确保在iOS15和iOS16下都获得原生无裁切的录制效果。

内容的提问来源于stack exchange,提问作者chamcham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 21:15:41