以特定比特率在 iOS 设备上录制视频

Record videos on iOS device at a specific bitrate

我想创建一个录制视频并将其保存到本地设备的应用程序,但它需要以特定比特率进行录制。当前,当在 iOS 设备上录制视频时,必须下载视频并将其转码为可流式传输的大小。与其必须下载和转码(这需要时间),如果设备只是在考虑最大比特率的情况下录制会好得多。

这可能吗?

您录制的内容是 UIImagePickerController 的质量基于枚举UIImagePickerControllerQualityType这些设置可以在不同的设备中更改。
如果您使用 AVFoundation,与 AVCaptureSession 一起使用,您有一个类似的 属性 称为 -sessionPreset 其中一些是固定的,其他的由于设备硬件的原因。
但是您也可以通过在 AVCaptureDevice.
上使用 -activeFormat 属性 来自由 select 最佳帧率 无法实时更改比特率,但您可以导出使用 AVAssetReaderVideoCompositionOutput 录制的电影。更多信息 here.