上传前在 iPhone 上压缩 ALAsset 视频/调整其大小
我构建了一个应用程序,可以将 iPhone 中的视频(使用 ALAsset 库,而不是内置的照片/视频选择器进行选择)上传到我的 Web 服务器,然后由该服务器对它们进行压缩/编码。这很有效,但是随着视频的增多,文件会很快变大。在我处理上传之前,是否有一种标准化方法可以在设备上压缩/缩小这些视频的大小?值得 CPU 攻击吗? AV框架支持这个吗?或者我必须使用类似于 ffmpeg 的东西吗?我希望从 1280 x 720 变为大约 516 x 290。首先在设备上处理此问题可以节省大量带宽,但尽管进行了大量搜索,但仍不确定我的选择。
I've built an app that uploads videos from the iPhone (uses the ALAsset libs, not the built in photo/video pickers, for selection) to my web server which then compresses/encodes them. This works great, but files get big very quickly with longer videos. Is there a standardized way to compress/downsize these videos right on the device before I handle the uploading? Is it worth the CPU hit? Does the AV Framework support this? Or do I have to use something along the lines of ffmpeg? I'm looking to go from 1280 x 720 to about 516 x 290. I could save a lot of bandwidth by handling this on the device first, just not sure of my options despite a lot of searching.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
看一下 AVAssetExportSession 及其方法。然后使用预设 AVAssetExportPreset640x480 或其他预设之一将大小从 1280x720 调整为更小的值。目前 AVAssetExportSession 无法实现自定义尺寸(如 516x290)。
干杯,
亨德里克
Take a look at AVAssetExportSession and it's methods. Then use the preset AVAssetExportPreset640x480 or one of the other presets to resize from 1280x720 to something smaller. A custom size (like 516x290) is at the moment not possible with AVAssetExportSession.
Cheers,
Hendrik