AVAudioSession().outputVolume возвращает округленные значения вместо правильной громкостиIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 AVAudioSession().outputVolume возвращает округленные значения вместо правильной громкости

Сообщение Anonymous »

Я создаю медиаплеер с помощью MusicKit и MediaPlayer. Когда пользователь нажимает кнопки громкости вверх или вниз, я хочу отразить это в слайдере.

Код: Выделить всё

.onAppear {
do {
try AVAudioSession.sharedInstance().setActive(true)
} catch {
print(error.localizedDescription)
}
}

.onReceive(AVAudioSession.sharedInstance().publisher(for: \.outputVolume), perform: { value in
print(value)
print(AVAudioSession().outputVolume) // All returning the same valuse
print(AVAudioSession.sharedInstance().outputvolume)
})
Вы можете увеличить громкость 16 раз, прежде чем достигнете максимальной громкости. То же самое и с уменьшением громкости. Я ожидаю, что приращение составит 1/16 или 0,0625. Вместо этого в большинстве случаев оно составляет 0,05, но иногда увеличение составляет 0,1.
Если я использую приведенное выше утверждение, я получаю следующие результаты при увеличении громкости с минимального до максимального: 0,0; 0,05; 0,15; 0,2; 0,25; 0,3; 0,4; 0,45; 0,5; 0,55; 0,65; 0,7; 0,75; 0,8; 0,9; 1,0
Значения 0,1; 0,35; 0,6; 0.85 не появилось.
При использовании центра управления для регулировки громкости и повторном нажатии кнопок громкости другие значения отсутствуют.
Похоже, что фактические значения округлены до 0 или 5.
Как мне получить фактический уровень громкости от 0,00 до 1,00? Бонусные баллы за решение в стиле SwiftUI.

Подробнее здесь: https://stackoverflow.com/questions/783 ... rrect-volu
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»