AVAsset 不能用本地音频文件播放
AVAsset is not playable with local audio file
NSURL* fileURL=[_musicListViewModel fileURLWithModel:model];
NSData* assetData=[NSData dataWithContentsOfURL:fileURL];
AVAudioPlayer* audioPlayer=[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil];
[audioPlayer play];
AVAsset*asset=[AVURLAsset URLAssetWithURL:fileURL options:nil];
AVAsset* asset=[AVAsset assetWithURL:fileURL];
if (!asset.playable){
[self playerErrorHandler];
return;
}
fileURL 是 file:///var/mobile/Containers/Data/Application/5A0A1FF9-F884-4CB9-9F59-BBFCB7C51A1B/Documents/music_data_path/yI3a6r
.
并且assetData不为零。
audioPlayer 可以从文件播放,而 asset 初始化都不能使自己播放。
错误:后缀是必需的
音频文件的后缀为.mp3,但在文件路径中附加后缀后不起作用。
我的代码有什么问题???
最后发现filePath中suffix是必不可少的,不然AVAsset播放不了,不喜欢AVAudioPlayer
NSURL* fileURL=[_musicListViewModel fileURLWithModel:model];
NSData* assetData=[NSData dataWithContentsOfURL:fileURL];
AVAudioPlayer* audioPlayer=[[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil];
[audioPlayer play];
AVAsset*asset=[AVURLAsset URLAssetWithURL:fileURL options:nil];
AVAsset* asset=[AVAsset assetWithURL:fileURL];
if (!asset.playable){
[self playerErrorHandler];
return;
}
fileURL 是 file:///var/mobile/Containers/Data/Application/5A0A1FF9-F884-4CB9-9F59-BBFCB7C51A1B/Documents/music_data_path/yI3a6r
.
并且assetData不为零。
audioPlayer 可以从文件播放,而 asset 初始化都不能使自己播放。
错误:后缀是必需的
音频文件的后缀为.mp3,但在文件路径中附加后缀后不起作用。
我的代码有什么问题???
最后发现filePath中suffix是必不可少的,不然AVAsset播放不了,不喜欢AVAudioPlayer