我需要从AVAsset中读取音频和视频的原始样本。做这个的最好方式是什么?我可以将多个AVAssetReaderTrackOutput对象附加到一个AVAssetReader。但是[AVAssetReaderOutput copyNextSampleBuffer]是同步的。按时间顺序读取两个轨道的最佳方法是否可以安全地为每个AVAssetReaderTrackOutput分配一个线程?
答案 0 :(得分:2)
好问题 - 每个AVAssetReaderTrackOutput 的一个线程似乎在iOS上正常工作但是它是否应该没有记录。根据AVFoundation的实现方式,您可能会导致对AVAssetReader和AVAsset的异步访问。那会有用吗?没人知道。
要真的安全,你应该创建两个AVAssetReaders甚至两个AVAssets(它们可能只是AVURLAssets)。