UIKit-Camera

AVCaptureDevice.DeviceType

AVCaptureDeviceInput

负责将AVCaptureDevice 转换为输入流,方便captureSession捕捉

AVCapturePreviewLayer

控制的是 AVCaptureVideoPreviewLayer 如何呈现捕捉到的视频内容

AVLayerVideoGravity

resizeAspect

保持视频的原始纵横比,并根据预览层的尺寸进行缩放,确保视频完整地显示在视图中,但可能会出现黑边。

resizeAspectFill

按比例缩放视频内容,以确保填满整个预览层的尺寸,但这可能会导致部分视频内容超出视图的边界(被裁剪掉)。也就是说,它保持视频的纵横比,但会放大视频以完全覆盖预览层。

可以保证没有黑边

resize

忽略视频的纵横比,直接拉伸视频以适应预览层的尺寸。

相关推荐
大熊猫侯佩8 小时前
冰火岛 Tech 传:Apple Foundation Models 心法解密(上集)
llm·ai编程·swift
HarderCoder8 小时前
深入理解 SwiftUI 的 Structural Identity:为什么“换个条件分支”就会丢状态?
swiftui·swift
HarderCoder9 小时前
Swift Continuations 完全指南:一口气弄懂 4 种“桥梁”
swift
HarderCoder10 小时前
Swift 的 `withoutActuallyEscaping`:借一个 `@escaping` 身份,但不真的逃跑
swift
Swift社区11 小时前
Swift 解法详解:LeetCode 371《两整数之和》
开发语言·leetcode·swift
Swift社区11 小时前
Swift 解法详解 LeetCode 362:敲击计数器,让数据统计更高效
开发语言·leetcode·swift
HarderCoder11 小时前
Opaque Types 完全指南:Swift 的“密封盒子”魔法
swift
HarderCoder12 小时前
Thread.sleep vs Task.sleep:一句话记住“别再阻塞线程”
swift
YungFan15 小时前
Swift 6.2 新特性
swiftui·swift
大熊猫侯佩1 天前
苹果 FoundationModels 秘典侠客行:隐私为先的端侧 AI 江湖
ai编程·swift·apple