自从IOS 13推出以来,我无法将MP4文件转换为不同的分辨率。它使用Xamarin.IOS 13上的标准AVFoundation库。
有什么想法为什么当转换即将发生时应用会崩溃?
Xamarin Simulator IOS 13没问题。只有在进行测试时才会发生这种情况。
AVAssetExportSession export = new AVAssetExportSession(asset, AVAssetExportSession.Preset640x480);
export.OutputUrl = NSUrl.FromFilename(to);
export.OutputFileType = AVFileType.Mpeg4;
export.ShouldOptimizeForNetworkUse = true;
bool exportComplete = false;
export.ExportAsynchronously(() =>
{
if (export.Error != null)
Console.WriteLine(export.Error.LocalizedDescription);
else
{
asset = AVAsset.FromUrl(export.OutputUrl);
foreach (var track in asset.Tracks)
{
if (track.NaturalSize.Height > 0)
{
var size = track.NaturalSize;
Debug.WriteLine("New size: " + size.Width + "x" + size.Height);
break;
}
}
fileLength = new FileInfo(to).Length;
Debug.WriteLine("New: " + fileLength);
}
exportComplete = true;
});
异常类型:EXC_CRASH(SIGABRT)异常代码: 0x0000000000000000,0x0000000000000000异常注意: EXC_CORPSE_NOTIFY由线程触发:0
特定于应用程序的信息:abort()被调用