【发布时间】:2013-03-13 22:12:24
【问题描述】:
我正在阅读 AVURLAsset 并通过以下调用初始化阅读器
AVAssetReaderOutput *assetReaderOutput =
[AVAssetReaderAudioMixOutput
assetReaderAudioMixOutputWithAudioTracks:songAsset.tracks
audioSettings: nil];
songAsset (AVURLAsset) 使用 MPMediaItems URLAsset 属性初始化。
我在某些资产上因此崩溃。
[AVAssetReaderAudioMixOutput initWithAudioTracks:audioSettings:] tracks must all have media type AVMediaTypeAudio'
如果 MPMediaItem 是音频资产并在 iTunes 中播放,为什么会这样?
【问题讨论】:
-
这个文件是本地可用还是iTunes匹配歌曲?如果是后者,则需要先下载文件。 iTunes 流式传输这些文件,这就是为什么它在那里可以正常工作,但不能在您的代码中。
-
我把这些文件都添加到本地了。
-
我刚刚看到它是 .mov 文件。如何检查 AVMediaTypeAudio?
-
只要做 AVURLAsset* 资产 = [[AVURLAsset alloc]initWithURL:url options:nil]; if ([[asset trackingWithMediaType:AVMediaTypeAudio] count] == 0) NSLog(@"这个文件没有音频");
标签: ios avassetreader