我正在 Titanium Appcelerator 中开发 iOS 应用程序并使用内置摄像头录制 2-5 分钟的视频。录制视频后,需要通过 REST API 将其传递给 PHP Web 应用程序。但是这个视频的大小太大 [几乎 100 Mb] 无法成功传输。我正在寻找一种方法来压缩视频或减小其大小以便能够成功上传。您的建议很有值(value),所以请让我知道什么是最好的前进方式。
谢谢你的时间
最佳答案
你可以试试我开发的模块:ti.ios.trim (最初是为了做视频修剪而构建的,但它也支持视频压缩)。您可以省略 startTime 和 endTime 参数并执行如下操作:
Ti.Media.showCamera({
mediaTypes: [Titanium.Media.MEDIA_TYPE_VIDEO],
success: function(e) {
var tempFile = Ti.Filesystem.getFile(Ti.Filesystem.tempDirectory, new Date().getTime() +'-'+ _.random(0,1000) +'.mov');
tempFile.write(e.media);
compressVideo(tempFile.resolve());
}
});
function compressVideo(pathToVideoFile) {
var trimmer = require('ti.ios.trim');
trimmer.trimVideo({
input: pathToVideoFile,
quality: 1, // use 1 for high compression or 2 for medium compression
success: function(e) {
Ti.API.info('SUCCESS:');
Ti.API.info('path to the compressed file: '+ e.videoURL);
},
error: function(e) {
Ti.API.error('ERROR:');
Ti.API.info(JSON.stringify(e));
}
});
}
关于ios - 如何减小视频大小 - iOS Titanium 视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21284449/