因此,我已经能够设置 avplayer 直接从 firebase 链接流式传输音频,并且我还能够将其设置为从 firebase 下载。我想要弄清楚的是,是否可以在流式传输时或完成流式传输时将文件基本上保存到文件 URL,因为执行下载任务并将播放器当前项目设置为流式传输基本上需要两倍的网络资源。 我也在寻找一种快速的语言解决方案,最好是
最佳答案
如果有人需要这个,我通过在 AVplayeritem 完成缓冲时调用此函数来解决它
func saveTrack(asset: AVURLAsset)
{
let exporter = AVAssetExportSession(asset: asset, presetName: AVAssetExportPresetAppleM4A)`
let fileURL = try! FileManager.default.url(for: .documentDirectory, in: .userDomainMask, appropriateFor: nil, create: false).appendingPathComponent("YourApp/documents/Track01.m4a")
exporter?.outputURL = fileURL
exporter?.outputFileType = AVFileType.m4a
exporter?.exportAsynchronously(completionHandler: {
print(exporter?.status)
print(exporter?.estimatedOutputFileLength)
print(exporter?.maxDuration)
print("finished ssaving file")
print()
})
}
关于swift - 如何在流式传输时从 firebase 保存音频文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49754063/