首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >了解AVAssetReader和AVAssetReaderTrackOutput

了解AVAssetReader和AVAssetReaderTrackOutput
EN

Stack Overflow用户
提问于 2014-06-07 14:05:55
回答 1查看 1.4K关注 0票数 3

我在我的程序中使用以下代码从录音中提取样本。我认为我理解了这个过程,但当我阅读苹果开发人员指南时,我并不完全理解AVAssetReaderAVAssetReaderTrackOutput是如何协同工作的。

AVAssetReaderTrackOutput是否包含AVAssetReader从中读取的磁道数据?当我像这里一样将输出添加到阅读器时,[reader addOutput:output];,输出是否被认为是阅读器使用的音频数据源?在开发人员指南中,它说addOutput“将给定的输出添加到接收器”。接收器到底是什么?

代码语言:javascript
复制
AVAssetReader *reader = [[AVAssetReader alloc] initWithAsset:self.audioAsset error:&error];
AVAssetTrack *songTrack = [audioTrackArray objectAtIndex:0];
AVAssetReaderTrackOutput *output = [[AVAssetReaderTrackOutput alloc] initWithTrack:songTrack outputSettings:outputSettingsDict];
[reader addOutput:output];
EN

回答 1

Stack Overflow用户

发布于 2014-09-26 15:42:43

AVAssetReader保存着数据,为了访问一些你需要读取音轨的数据。音频和视频是不同的轨道。

要获取数据,您需要分配一个VAssetReaderTrackOutput。

"Receiver“是函数中对象的首字母缩写(精确的是"message")。所以

代码语言:javascript
复制
[receiver sendMessage:data];

下面是一个电影示例代码:http://www.7twenty7.com/blog/2010/11/video-processing-with-av-foundation

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24094287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档