首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >AVAsset 'tracksWithMediaType‘返回空数组?(音频)

AVAsset 'tracksWithMediaType‘返回空数组?(音频)
EN

Stack Overflow用户
提问于 2017-06-15 10:36:50
回答 0查看 907关注 0票数 1

我想用AVAssetExportSession.When合成两个音频我用AVAsset用'tracksWithMediaType:AVMediaTypeAudio‘得到音轨,我得到一个空数组。这些音频文件是由'AVAudioRecorder‘录制的,并且它们有.aac扩展名。我用来获取跟踪的代码:

代码语言:javascript
复制
 AVAsset * asset = [AVAsset assetWithURL:[NSURL URLWithString:model.localPath]];

 NSArray * tracks = [asset tracksWithMediaType:AVMediaTypeAudio];

 AVAssetTrack * track = nil;
 if (tracks.count) {
     track = tracks[0];
 }

初始化AVAudioRecorder的设置

代码语言:javascript
复制
AVAudioSession * audioSession = [AVAudioSession sharedInstance];
[audioSession setCategory:AVAudioSessionCategoryRecord error:nil];
[audioSession setActive:YES error:nil];


NSMutableDictionary *recordSettings = [[NSMutableDictionary alloc] init];
[recordSettings setValue :[NSNumber numberWithInt:kAudioFormatMPEG4AAC] forKey: AVFormatIDKey];
[recordSettings setValue :[NSNumber numberWithFloat:11025.0] forKey: AVSampleRateKey];//44100.0
[recordSettings setValue :[NSNumber numberWithInt:2] forKey: AVNumberOfChannelsKey];
[recordSettings setValue:[NSNumber numberWithInt:AVAudioQualityMax] forKey:AVEncoderAudioQualityKey];

我还尝试使用其他.mp3文件来获取跟踪,但它是一个空数组。音频文件的本地路径为:

代码语言:javascript
复制
  /var/mobile/Containers/Data/Application/DDAB48C4-A233-4B4C-B3B7-5F66AE076239/Documents/media/1497494042.aac
EN

回答

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

https://stackoverflow.com/questions/44557616

复制
相关文章

相似问题

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