iOS 16 弃用 asset.duration

iKK*_*iKK 6 ios avasset swift ios16

使用 Xcode 14.0、iOS 16、Swift 5.7、

由于 iOS 16,我收到以下弃用警告:

iOS 16.0 中已弃用“duration”:改用 load(.duration)

这是我的代码:

var actualTime: CMTime = CMTimeMake(value: 0, timescale: asset.duration.timescale)
Run Code Online (Sandbox Code Playgroud)

我需要更改什么才能消除此警告?

我试过:

var actualTime: CMTime = CMTimeMake(value: 0, timescale: asset.load(.duration).timescale)
Run Code Online (Sandbox Code Playgroud)

但这使得一切都是异步的。我真的需要走那条路吗?

小智 8

let duration = try await asset.load(.duration)
Run Code Online (Sandbox Code Playgroud)