UIKit-Camera

AVCaptureDevice.DeviceType

AVCaptureDeviceInput

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

AVCapturePreviewLayer

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

AVLayerVideoGravity

resizeAspect

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

resizeAspectFill

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

可以保证没有黑边

resize

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

相关推荐
百思可瑞教育3 小时前
使用UniApp实现一个AI对话页面
javascript·vue.js·人工智能·uni-app·xcode·北京百思可瑞教育·百思可瑞教育
HarderCoder1 天前
在同步代码里调用 async/await:Task 就是你的“任意门”
swift
HarderCoder1 天前
Swift 三目运算符指南:写法、场景与避坑
swift
YungFan2 天前
iOS26适配指南之UISlider
ios·swift
HarderCoder2 天前
一篇读懂 Swift 不透明类型:让带 associatedtype 的协议也能当返回值
swift
HarderCoder2 天前
`@dynamicCallable`:把 Swift 对象当函数喊
swift
开开心心loky2 天前
[iOS] 属性关键字
macos·ios·objective-c·cocoa·xcode
HarderCoder3 天前
调试 Swift 并发:我到底在哪个 Actor?
swift
HarderCoder3 天前
`@preconcurrency` 完全导读:让旧代码平安驶上 Swift 并发快车道
swift
大熊猫侯佩4 天前
10 个 Xcode 神技:哥谭开发者必学的 IDE 对抗术
xcode·swift·apple