我刚发现一个非常奇怪的问题,
从本地存储加载mp3文件时,
avplayeritem始终处于未知状态,如果文件放在文档文件夹中则无法播放.
方式1:
//AVAsset *asset = [[AVURLAsset alloc] initWithURL:_URL options:nil];
//AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithAsset:asset];
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:_URL];
//line 1
while (playerItem.status!=AVPlayerItemStatusReadyToPlay
&& playerItem.status!=AVPlayerItemStatusFailed) {
NSLog(@"avplayer: %@ status: %d", playerItem, playerItem.status);
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
}
//line 2
NSLog(@"avplayer status: %d item: %@", playerItem.status, _URL);
NSArray *metadata = [playerItem.asset commonMetadata];
Run Code Online (Sandbox Code Playgroud)
方式2:
AVAsset *asset = [[AVURLAsset alloc] initWithURL:_URL options:nil];
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithAsset:asset];
/*
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:_URL];
//line 1
while …Run Code Online (Sandbox Code Playgroud)