Je souhaite créer un tableau d'objets AVPlayerItem
à partir d'un autre tableau, en utilisant la ligne dans la boucle. Cela fonctionne pour un seul article mais pas pour le tableau entier.iOS - Impossible d'utiliser AVQueuePlayer initwithitems()
MPMediaQuery *albumQuery = [MPMediaQuery albumsQuery];
MPMediaPropertyPredicate *albumPredicate = [MPMediaPropertyPredicate predicateWithValue:@"Out Of Exile" forProperty:MPMediaItemPropertyAlbumTitle];
[albumQuery addFilterPredicate:albumPredicate];
NSArray *songs = [albumQuery items];
NSMutableArray <AVPlayerItem*> *items;
NSUInteger i = 0;
while(i < [songs count]){
AVPlayerItem *playerItem = [[AVPlayerItem alloc] initWithURL:[[songs objectAtIndex:i] valueForProperty:MPMediaItemPropertyAssetURL]];
[items addObject:playerItem];
i++;
}
AVPlayerItem *item = [[AVPlayerItem alloc] initWithURL:[[songs objectAtIndex:index] valueForProperty:MPMediaItemPropertyAssetURL]]; //manually created item which works
_player = [[AVQueuePlayer alloc] initWithItems:items];
[_player play];
Donc, mon problème est que je ne peux pas initialiser correctement AVQueuePlayer
avec et tableau et ça me rend fou. Si je l'initialise avec InitWithPlayerItem
et ajoute l'article que j'ai créé cela fonctionne (joue), mais il ne fonctionne pas avec n'importe quel objet du tableau d'éléments.
Même en appelant InitWithItems:items[index*]
, rien ne se passe.