OGeek|极客世界-中国程序员成长平台

标题: ios - 无法渲染尺寸大于 640x640 的视频 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:17
标题: ios - 无法渲染尺寸大于 640x640 的视频

我正在使用 AVAssetExportSession 导出保存在我的文档目录中的视频。我希望将 CALayer 应用于视频,因此我正在使用 AVMutableVideoComposition 并设置必要的 AVMutableVideoCompositionInstruction 和视频导出正常。

我的问题是,假设现在原始视频的分辨率为 1920x1080,当我通过将视频合成的渲染大小设置为 1920x640 来导出此视频时,它给了我一个大小为 640x360 的视频。

我尝试将渲染大小设置为较小的值,例如 300x300,当然通过裁剪额外的内容,我得到了大小为 300x300 的导出视频。然后我尝试将 rendersixe 设置为 700x700,结果是 640x640 视频。

我能理解的是,它根据我们设置的渲染大小保持纵横比,因此当我将大小设置为 1920x1080 时,它会提供 630x360 的视频,保持 16:9 的比例。同样,当我将大小设置为 700x700 时,它会生成一个大小为 640x640 且纵横比为 1:1 的视频。

问题

我希望视频大小与其原始大小相同。但是,当我将 mutablevideoComposition 的大小设置为原始视频轨道的 naturalSize 时,它​​会将我的大小限制在 640x640 以下(如果大小超过 640x640)。

这是一种已知的行为吗?还是我错过了什么。如果这是一种已知行为,是否有另一种方法可以以原始大小或大于 640x640 的大小导出视频。

我们将非常感谢您的帮助。感谢期待。



Best Answer-推荐答案


我想通了。这是一个简单的错误。我正在使用 AVAssetExportPreset640x480 而不是 AVAssetExportPreset1920x1080 初始化导出 session 。

关于ios - 无法渲染尺寸大于 640x640 的视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28578476/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://sqlite.in/) Powered by Discuz! X3.4