Tengo una aplicación iOS que reproduce una banda sonora de fondo con un AVPlayer y reproduce otros clips de sonido "en la parte superior" con un segundo AVPlayer. (Los clips de sonido se transmiten desde Internet, de ahí el requisito de AVPlayer). El problema es que cuando el segundo AVPlayer comienza a reproducirse, hace que el fondo de AVPlayer se detenga durante una fracción de segundo, similar a lo que se describe en este comentario:Error de audio al reproducir dos archivos de audio AVPlayer simultáneamente
Play multiple Audio Files with AVPlayer
estoy preparando los clips de audio con este método:
- (void)prepareAudio:(NSURL *)assetURL {
asset = [AVURLAsset URLAssetWithURL:assetURL options:nil];
playerItem = [AVPlayerItem playerItemWithAsset:asset];
[player replaceCurrentItemWithPlayerItem:playerItem];
[playerItem addObserver:self forKeyPath:@"playbackBufferEmpty" options:NSKeyValueObservingOptionNew context:nil];
[playerItem addObserver:self forKeyPath:@"playbackLikelyToKeepUp" options:NSKeyValueObservingOptionNew context:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemDidReachEnd:)
name:AVPlayerItemDidPlayToEndTimeNotification
object:[player currentItem]];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(playerItemFailedToReachEnd:)
name:AVPlayerItemFailedToPlayToEndTimeNotification
object:[player currentItem]];
}
... y luego invocar [player play];
cuando w hormiga para escuchar cada sonido
¿Hay algo que tengo que hacer cuando me juego hasta la sesión de audio o de cada instancia de la AVPlayer, por lo que los sonidos se mezclan sin el fallo?
Esto no puede ser. He hecho un par de experimentos usando archivos sin comprimir PCM rectos, y el problema continúa existiendo. Dicho esto, parece tener algo que ver con la aplicación AVMutableAudioMix. Cada vez que se aplica, es cuando se produce el bobble. –