Как я регулирую громкость аудио носителей для воспроизведения с AVPlayer на iOS?
Q: Как делают я регулировал громкость аудио носителей для воспроизведения с AVPlayer на iOS?
A: AVPlayer использует системный том (управляемый аппаратным переключателем объема) для воспроизведения носителей.
Используйте MPVolumeView класс для подарить пользователю ползунок управляет в приложении для того, чтобы регулировать системную громкость аудиовыхода. Посмотрите
На iOS 7 можно отключить звук воспроизведения аудио (локальный или переданный потоком) с AVPlayer muted свойство:
Перечисление 1 , Отключающее звук воспроизведения аудио для AVPlayer объект с помощью свойства с отключенным звуком.
#import <AVFoundation/AVFoundation.h> |
AVPlayer *player = <#A properly configured AVPlayer object#>; |
player.muted = YES; // mute the audio |
На iOS 6 и ранее, можно отключить звук воспроизведения аудио с AVPlayer путем создания AVAudioMix с объемом сползают для регулирования громкости к 0 как показано в Перечислении 2:
Перечисление 2 , Отключающее звук воспроизведения аудио с AVPlayer путем создания AVAudioMix с нулевым скатом объема.
#import <AVFoundation/AVFoundation.h> |
AVURLAsset *asset = [AVURLAsset URLAssetWithURL:[self myAssetURL] options:nil]; |
NSArray *audioTracks = [asset tracksWithMediaType:AVMediaTypeAudio]; |
// Mute all the audio tracks |
NSMutableArray *allAudioParams = [NSMutableArray array]; |
for (AVAssetTrack *track in audioTracks) { |
AVMutableAudioMixInputParameters *audioInputParams =[AVMutableAudioMixInputParameters audioMixInputParameters]; |
[audioInputParams setVolume:0.0 atTime:kCMTimeZero]; |
[audioInputParams setTrackID:[track trackID]]; |
[allAudioParams addObject:audioInputParams]; |
} |
AVMutableAudioMix *audioZeroMix = [AVMutableAudioMix audioMix]; |
[audioZeroMix setInputParameters:allAudioParams]; |
// Create a player item |
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithAsset:asset]; |
[playerItem setAudioMix:audioZeroMix]; // Mute the player item |
// Create a new Player, and set the player to use the player item |
// with the muted audio mix |
AVPlayer *player = [AVPlayer playerWithPlayerItem:playerItem]; |
// assign player object to an instance variable |
self.mPlayer = player; |
// play the muted audio |
[mPlayer play]; |
История версии документа
| Дата | Примечания |
|---|---|
| 21.05.2014 | Добавленная информация о AVPlayer отключила звук свойства для iOS 7 |
| 27.08.2010 | Новый документ, демонстрирующий, как регулировать громкость аудио носителей для воспроизведения с AVPlayer на iOS |