SuperAPI AI 工具集

axiom-camera-capture

设计与创作

查看项目

更新于 10-15 20:11

技能介绍

用途:指导在 iOS 上用 AVFoundation 实现自定义相机采集,包括会话搭建、拍照、带音频录像、响应式拍摄体验、旋转处理与会话生命周期管理。

主要能力:介绍 AVCaptureSession 的输入输出结构(AVCaptureDeviceInput、AVCapturePhotoOutput、AVCaptureMovieFileOutput、AVCaptureVideoDataOutput);SwiftUI 相机预览封装;iOS 17+ 的 RotationCoordinator 旋转处理;零快门延迟、重叠采集、快速连拍优先级与 Readiness Coordinator 快门按钮状态;延迟处理(deferred processing)及代理存入 PhotoKit;会话中断(来电、多任务)处理;前后摄像头切换与采集质量配置。

使用方式:先选择采集模式——仅选照片用 PHPicker/PhotosPicker,简单系统界面用 UIImagePickerController,自定义界面才用本技能。需申请相机权限(AVCaptureDevice.requestAccess),并在 Info.plist 配置 NSCameraUsageDescription,录像再加 NSMicrophoneUsageDescription。会话配置必须在专用串行队列中进行,用 beginConfiguration()/commitConfiguration() 包裹,startRunning() 不可放主线程。示例命令与代码保持原样,如 session.sessionPreset = .photo、photoOutput.capturePhoto(with:delegate:)。

适用场景:自建相机 UI、对拍摄速度与画质取舍有要求的拍照、带音频录像、需要正确处理设备旋转、希望拍摄即时响应、需处理来电等中断、前后摄像头切换。

限制:部分 API 有设备与系统要求,如零快门延迟需 iPhone XS 及以上,延迟处理需 iPhone 11 Pro 及以上,且不适用于闪光灯拍摄、手动曝光、包围曝光等;延迟处理照片不能应用像素缓冲区自定义滤镜。资料未提供收费、价格与具体平台支持范围。