When I instantiate an AVAssetExportSession object in new simulators instance with either of the 2 methods:
AVAsset *videoAsset = [AVAsset assetWithURL:videoURL];
AVAssetExportSession *exporter = [AVAssetExportSession exportSessionWithAsset:asset presetName:AVAssetExportPresetHighestQuality];
or
AVAssetExportSession *exporter = [[AVAssetExportSession alloc] initWithAsset:asset presetName:AVAssetExportPresetHighestQuality];
and, run the app on one of the 3 new simulators: iPhone XR, iPhone XS, and iPhone XS MAX, I got exporter = nil
, whereas on all other simulators I got a normal non null exporter object.
I also noticed that ONLY when I set the presetName
parameter to be AVAssetExportPresetPassthrough
, the exporter is not nil. Any other presetName will make the initialization to fail.
Anyone has encountered the similar problems?
Apparently it's an apple bug... https://bugreport.apple.com/web/?problemID=44701489 Will report back once the original bug is closed.
EDIT: This issue has been fixed by Apple in iOS 10.1 SDK. You just update your xcode to 10.1.