ios - 有关将 AVAssetReader 与音频队列/流服务结合使用的综合教程

标签 ios streaming

我正在开发一款应用程序,允许用户在 iPhone 上选择音乐轨道、收听并与其他人实时分享,以便其他人可以同步收听同一首歌曲。

我已经成功获得以下原型(prototype)working :手动将文件添加到我正在使用的 bundle 中,然后使用 AudioFileReadPackets 对其进行解码并使用 GKSession 通过网络发送它。

在接收端..我使用音频队列/流服务来读取流并播放音乐(即AudioFileStreamOpen、AudioFileStreamParseBytes、AudioQueueNewOutput、AudioQueueStart等。有关更多详细信息,请参阅here)。

也就是说,我 found out我不能简单地从 iPhone 的文件系统读取文件并对其进行解码..而是我必须使用 AVAssetReader 等。有很多examples在 Stack Over Flow 上这样做,但他们专注于直接的技术实现,而不是解释大局。我在 Apple 的开发者指南网站上找不到太多全面的指南或文档(例如,看看他们如何描述 CMSampleBuffer Reference ;函数参数没有说明等)。

有任何链接/书籍/等可以引导我走向正确的方向吗?特别是关于访问 iPod 库中的音频文件并使用 AVAssetReader 对它们进行分段,以便它们可以通过网络以流式传输方式发送,通过音频播放 queue/流媒体服务

最佳答案

关于ios - 有关将 AVAssetReader 与音频队列/流服务结合使用的综合教程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12121382/

相关文章:

java - 处理流数据、更新 GUI、使用线程,并且不错过任何一个节拍?

android - 在android中流式传输音频.pls

ios - 是否需要将 scrollview.delegate 设置为 self?

ios - 使用 XCTest : how to trigger App-State Foreground-Inactive Foreground-Active 进行 UI 测试

ios - CAAction 的 runActionForKey :object:arguments: arguments take? 可以取什么值

javascript - 如何使用 Socket.io 实时传输音频?

ffmpeg - 减少 HLS 流式传输 FFMPEG 的延迟

ios - 在 ionic ios 应用程序的输入文本字段中消失光标指针

ios - Mantle 和 CoreData 集成

iphone - MPMoviePlayerController 为流媒体电影创建自定义缓冲区进度条