AVAssetExportSession进度不更新
创始人
2024-11-12 20:00:34
0次

当使用AVAssetExportSession导出视频时,可能会遇到进度不更新的问题。这可能是由于导出会话没有正确地更新进度回调导致的。下面是一种解决方法:

首先,确保你的AVAssetExportSession实例设置了exportProgress属性的观察者。你可以使用KVO (Key-Value Observing)来观察进度属性的变化。

// 创建AVAssetExportSession实例
let exportSession = AVAssetExportSession(asset: asset, presetName: AVAssetExportPresetMediumQuality)

// 设置进度观察者
exportSession?.addObserver(self, forKeyPath: "progress", options: .new, context: nil)

然后在你的观察者方法中,更新进度值并执行相关操作。在这个例子中,我们将进度值打印到控制台。

override func observeValue(forKeyPath keyPath: String?,
                           of object: Any?,
                           change: [NSKeyValueChangeKey : Any]?,
                           context: UnsafeMutableRawPointer?) {
    if keyPath == "progress" {
        let progress = exportSession.progress
        print("Export Progress: \(progress)")
        
        // 执行其他操作,比如更新进度条等
    }
}

最后,在导出会话完成后,记得移除观察者。

exportSession?.removeObserver(self, forKeyPath: "progress")

通过以上步骤,你应该能够正确地观察到AVAssetExportSession的进度,并相应地更新UI。

相关内容

热门资讯

玩家实测!凤凰棋牌辅助功能攻略... 玩家实测!凤凰棋牌辅助功能攻略,凤凰棋牌本来是有辅助攻略1、完成凤凰棋牌辅助器v3.3的残局,帮助玩...
发现一款!高登棋牌辅助功能技巧... 发现一款!高登棋牌辅助功能技巧,高登棋牌竟然是有辅助技巧1、高登棋牌模拟器是什么优化,高登棋牌俱乐部...
推荐几款新版!榆林打锅子透视功... 推荐几款新版!榆林打锅子透视功能插件,榆林打锅子都是有透视插件1、这是跨平台的榆林打锅子轻量版有透视...
一分钟快速了解!狂飙娱乐辅助功... 一分钟快速了解!狂飙娱乐辅助功能方法,狂飙娱乐本来存在有辅助方法1)狂飙娱乐免费钻石:进一步探索狂飙...
记者发布!王者棋牌辅助器功能技... 记者发布!王者棋牌辅助器功能技巧,王者棋牌一直真的是有辅助器技巧1、进入到王者棋牌是否有挂之后,能看...
重大发现!绿洲娱乐透视功能教程... 重大发现!绿洲娱乐透视功能教程,绿洲娱乐确实是真的有透视教程一、绿洲娱乐可以开透视的定义与意义1、绿...
玩家科普!聚乐透视挂功能教程,... 玩家科普!聚乐透视挂功能教程,聚乐一直真的有透视挂教程聚乐能透视中分为三种模型:聚乐模拟器、聚乐私人...
玩家交流!边锋斗地主辅助功能神... 玩家交流!边锋斗地主辅助功能神器,边锋斗地主其实有辅助神器1、许多玩家不知道边锋斗地主辅助怎么退出观...
每日必看!红豆大厅辅助功能插件... 每日必看!红豆大厅辅助功能插件,红豆大厅一直真的有辅助插件1、在红豆大厅插件功能辅助器技巧中,中转单...
普及知识!艺龙游戏辅助功能攻略... 普及知识!艺龙游戏辅助功能攻略,艺龙游戏总是真的是有辅助攻略1、不需要AI权限,帮助你快速的进行艺龙...