4 votes

Questions sur AVPlayer, pendant le streaming en direct (iOS)

J'ai des questions sur AVPlayer.

1.comment contrôler le volume de celui-ci ?

Comment savoir si l'AVPlayer recharge la musique à cause d'une mauvaise connexion, ai-je des indications à ce sujet ?

7voto

Ben Scheirman Points 23590

AVPlayer utilise le volume du système, donc si vous avez besoin de fournir des contrôles pour cela vous pouvez utiliser MPVolumeView qui vous donne le curseur pour le contrôle du volume.

Pour le fondu audio, vous pouvez utiliser un AVAudioMix . Voici un peu de code :

//given an AVAsset called asset...
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:asset];
id audioMix = [[AVAudioMix alloc] init];
id volumeMixInput = [[AVMutableAudioMixInputParameters alloc] init];

//fade volume from muted to full over a period of 3 seconds
[volumeMixInput setVolumeRampFromStartVolume:0 toEndVolume:1 timeRange:
     CMTimeRangeMake(CMTimeMakeWithSeconds(0, 1), CMTimeMakeWithSeconds(3, 1))];
[volumeMixnput setTrackID:[[asset tracks:objectAtIndex:0] trackID]];

[audioMix setInputParameters:[NSArray arrayWithObject:volumeMixInput]];
[playerItem setAudioMix:audioMix];

Vous pouvez également régler brusquement le volume d'un mix à un moment donné avec :

[volumeMixInput setVolume:.5 atTime:CMTimeMakeWithSeconds(15, 1)];

J'espère que cela vous aidera. Cette API n'est certainement pas évidente. Je vous recommande vivement de regarder la vidéo de la WWDC 10 intitulée Découvrir la Fondation AV . C'est excellent.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X