我是 iOS 开发的新手,我需要捕获相机帧并将它们转换为 yuv420 以执行 h264 编码。在我的 android 应用程序中,我使用 libyuv 进行转换。现在我想在 iOS 中复制同样的东西。我想知道我有哪些选项以及如何在 iOS 中接收带有数据的相机回调?
问问题
819 次
2 回答
1
也许您需要在您的项目中使用 ffmpeg,请参阅这个问题(这与 iOS 编程无关,但可以编译 ffmpeg 并将其链接到 iOS 应用程序中)。 将 H264 视频转换为原始 YUV 格式
PS 也尝试为 iOS 架构编译 libyuv,也许它更容易使用它而不是 ffmpeg :)
于 2015-05-26T16:45:47.450 回答
1
从相机捕获原始图像数据时,您可以在捕获会话的videoSettings
属性中指定输出缓冲区的像素格式。AVCaptureVideoDataOutput
像kCVPixelFormatType_420YpCbCr8Planar
或之类的像素格式kCVPixelFormatType_420YpCbCr8PlanarFullRange
可能会为您提供一个很好的起点,以便进行额外处理以获得您需要的确切格式。
我还建议您查看 Apple 的“ AV Foundation Programming Guide ”,尤其是有关Still and Video Media Capture的章节。
于 2015-05-26T20:35:47.823 回答