2016-09-23 83 views
5

AVAssetExportSession适用于iPhone 6及以下版本,但不适用于iPhone 7,iPhone 7 Plus模拟器。 Xcode 8.0AVAssetExportSession是零iPhone 7 - Plus模拟器

此代码return nil在exportSession中,当在iPhone 7 - Plus模拟器上执行时,但不在iPhone SE,iPhone 6s ...模拟器中。请查找以下代码以获取更多信息。

NSURL *inputURL = [[NSBundle mainBundle] URLForResource: @"example" withExtension:@"m4a"]; 
    AVURLAsset *assetAV = [AVURLAsset URLAssetWithURL:inputURL options:nil]; 
    AVAssetExportSession *exportSession = [[AVAssetExportSession alloc] initWithAsset:assetAV presetName:AVAssetExportPresetAppleM4A]; 
    NSAssert(exportSession != nil, @"AVAssetExportSession must not be nil"); 

这是雷达还是有东西我失踪?

示例项目在:

https://github.com/rafaelpereznajera/AVAssetExportSessionRadar

+0

iPhone 7是否包含示例文件? –

+0

是的,文件退出,在iPhone 6上正常工作。您可以检查github上的示例项目。 – rafaperez

+0

这似乎破了。虽然'AVAssetExportPresetPassthrough'工程... –

回答

0

这是一个错误。

它在Xcode 8.1 beta中得到修复。

的Xcode 8.1的β[AVAssetExportSession allExportPresets] iPhone 7模拟器现在返回:

AVAssetExportPreset1920x1080, 
AVAssetExportPresetLowQuality, 
AVAssetExportPresetAppleM4A, 
AVAssetExportPreset640x480, 
AVAssetExportPreset3840x2160, 
AVAssetExportPresetHighestQuality, 
AVAssetExportPreset1280x720, 
AVAssetExportPresetMediumQuality, 
AVAssetExportPreset960x540 

Xcode的8.0 [AVAssetExportSession allExportPresets] iPhone 7模拟器返回一个空数组。