-
iOS 앱에서 Center Stage 전면 카메라 지원하기
iPhone 17, iPhone 17 Pro, iPhone Air의 전면 카메라에서 AVCapture API를 사용하는 Center Stage로 iOS 카메라 앱을 강화하세요. API로 확대/축소 및 회전 옵션을 활성화하여 더 유연하게 셀피와 비디오의 구도를 설정하고 단체 샷에 모든 사람이 자동으로 들어오도록 할 수 있는 방법을 살펴보세요. Center Stage를 통합하여 영상 통화 시 프레임이 자동으로 조정되도록 하세요. 가상 회의 및 FaceTime 통화에서 사용자가 화면의 전면 중앙에 담깁니다. 또한 실시간 화상 회의를 위해 비디오를 안정화하는 방법을 알아보세요.
챕터
- 0:00 - Introduction
- 1:07 - Center Stage front camera
- 2:09 - Center Stage for photos
- 3:09 - Capture session setup
- 3:56 - Dynamic aspect ratio
- 6:47 - Smart framing monitor
- 9:24 - Sensor orientation compensation
- 11:53 - Center Stage for video recordings
- 13:16 - Center Stage for video calls
리소스
- Supporting Center Stage front camera in your iOS app
- AVCam: Building a camera app
- AVFoundation
- Capture setup
관련 비디오
WWDC26
WWDC23
WWDC21
-
비디오 검색…
-
-
5:29 - Support dynamic aspect ratio
// Select the Center Stage front camera import AVFoundation let deviceDiscoverySession = AVCaptureDevice.DiscoverySession(deviceTypes: [.builtInUltraWideCamera], mediaType: .video, position: .front) guard let camera = deviceDiscoverySession.devices.first else { print("Failed to find the capture device") return } // Find a format that supports the 4x3 aspect ratio for format in camera.formats { if format.supportedDynamicAspectRatios.contains(.ratio4x3) { try! camera.lockForConfiguration() camera.activeFormat = format camera.unlockForConfiguration() break } } // Set dynamic aspect ratio try! camera.lockForConfiguration() let timestamp = try! await camera.setDynamicAspectRatio(.ratio4x3) print("Applied dynamic aspect ratio at timestamp: \(timestamp)") camera.unlockForConfiguration() -
7:39 - Support smart framing monitor
// Find a format that supports smart framing import AVFoundation for format in camera.formats { if format.isSmartFramingSupported { try! camera.lockForConfiguration() camera.activeFormat = format camera.unlockForConfiguration() break } } // Configure the smart framing monitor let monitor = camera.smartFramingMonitor! try! camera.lockForConfiguration() monitor.enabledFramings = monitor.supportedFramings camera.unlockForConfiguration() // Monitor framing recommendations observation = monitor.observe(\.recommendedFraming, options: [.new,]) { monitor, change in if let framing = monitor.recommendedFraming { Task { try! camera.lockForConfiguration() try! await camera.setDynamicAspectRatio(framing.aspectRatio) camera.videoZoomFactor = CGFloat(framing.zoomFactor) camera.unlockForConfiguration() } } } // Start the smart framing monitor try! monitor.startMonitoring() // Stop the smart framing monitor observation?.invalidate() observation = nil monitor.stopMonitoring() -
14:44 - Support Center Stage for video calls
// Find a format that supports Center Stage import AVFoundation for format in camera.formats { if format.isCenterStageSupported { try! camera.lockForConfiguration() camera.activeFormat = format camera.unlockForConfiguration() break } } // Turn on Center Stage AVCaptureDevice.centerStageControlMode = .cooperative AVCaptureDevice.isCenterStageEnabled = true
-
-
- 0:00 - Introduction
Center Stage front camera is available on iPhone 17, iPhone Air, and iPhone 17 Pro. Discover how its square sensor and wide field of view give you greater flexibility to perfectly frame selfies, group shots, and video calls.
- 1:07 - Center Stage front camera
Take a closer look at the Center Stage front camera's hardware. Learn how its square image sensor and 95-degree field of view let you shoot in any orientation without rotating your device, keeping your grip secure and eye contact natural.
- 2:09 - Center Stage for photos
Bring a perfect framing experience to your app. Explore how Auto Zoom and Auto Rotate combine the wide field of view with automatic face and gaze detection to smartly adjust framing as people move in and out of your shots.
- 3:09 - Capture session setup
An overview of the AVCaptureSession setup required to use the Center Stage front camera. Configure an AVCaptureSession with the built-in ultra-wide camera. Add a video preview layer, and receive photos via AVCapturePhotoOutput.
- 3:56 - Dynamic aspect ratio
Discover the dynamic aspect ratio API. Learn how to query supported formats and seamlessly switch aspect ratios without interrupting your camera preview or rebuilding the capture session.
- 6:47 - Smart framing monitor
Automate your framing with AVCaptureSmartFramingMonitor. Learn how to configure the monitor to receive periodic recommendations for aspect ratio and zoom factor based on face and gaze detection, keeping your subjects perfectly framed.
- 9:24 - Sensor orientation compensation
Understand how iOS handles the native portrait orientation of the Center Stage front camera sensor. Learn how AVCapturePhotoOutput automatically applies orientation compensation.
- 11:53 - Center Stage for video recordings
Apply dynamic aspect ratio to video recordings using AVCaptureMovieFileOutput or AVAssetWriter. Learn how to manage recording transitions and take advantage of cinematic stabilization modes for exceptionally smooth footage.
- 13:16 - Center Stage for video calls
Enhance your video conferencing app with Center Stage. Learn how to adopt the API in cooperative or app mode to keep everyone centered, and discover how to enable low-latency stabilization for significantly smoother video calls.