我已经实现了此处讨论的查找(AVAssetReader Seeking),但是当AVAssetReader拆除并构造了一个新的时,当然会有明显的延迟(因为一旦开始读取数据就无法更改timeRange属性)。
我可以想象通过仅读取数据并跳过数据就可以相当干净地进行时间向前搜索,但是这个问题总是会限制时间向后搜索...
有什么想法可以优化这一点,以便用户享受音轨的擦洗吗?
最佳答案
您在这里遇到的情况可能不会滞后,但是每次您创建新的AVAssetReader实例并读取第一个示例时,都会发生某种点击。
实际上,AVASsetReader淡入了前1024个样本(也许更多)。
我通过在要读取的位置之前先读取1024个样本来解决此问题,然后跳过该1024个样本。
希望它也对您有用。