Sel*_*vin 0 iphone format video-capture ios5
功能是从iPhone录制视频并将其上传到服务器,然后它应该与Android设备同步,并应该可以在那里播放.从谷歌搜索我开始知道iPhone记录.mov文件.
我想知道的是,如果除了.mov之外还有其他可用的格式,那么它可以在Android设备上以及在服务器上播放.
谢谢.
SDK: 5.0;
Xcode: 4.2;
Devices: iPhone 4,4S, iPad2,3
Run Code Online (Sandbox Code Playgroud)
.mov不是一种格式; 它是一个容器文件.iPhone使用流行的h.264编码器进行视频,然后将其(带有音频和数据)包含在.mov文件中,这是一种快速文件格式.您无法更改容器文件或iPhone使用的编码器.
您可以使用一些服务将视频文件从一种格式编码到另一种格式.看看zencoder和pandastream.
确实有一种方法.您可以使用AVAssetExportSession类.AVAssetExportSession对象具有一个名为outputFileType的属性,您可以将其设置为AVFileTypeMPEG4.通过使用预设名称AVAssetExportPresetPassthrough,视频将不会被实际重新编码,但只是容器将更改为mp4(因此它将超级快).
AVAssetExportSession *exporter = [[AVAssetExportSession alloc] initWithAsset:#videoAsset# composition presetName:AVAssetExportPresetPassthrough];
exporter.outputFileType = AVFileTypeMPEG4;
exporter.outputURL = outputURL;
[exporter exportAsynchronouslyWithCompletionHandler:^(void){
switch (exporter.status) {
case AVAssetExportSessionStatusFailed:
// Failed!
break;
case AVAssetExportSessionStatusCompleted:
// Success!
break;
case AVAssetExportSessionStatusCancelled:
// Cancelled!
break;
}
}];
Run Code Online (Sandbox Code Playgroud)