Баланс звука продолжает меняться в High Sierra и Mojave.

У меня проблема: каждый раз, когда я снова подключал свой Bose QC35 II, баланс звука был справа, а не посередине.

Ответы (2)

Итак, я нашел решение на Reddit с помощью AppleScript, но это не сработало полностью, потому что иногда выдавало ошибки:"System Events got an error: Can’t get tab group 1 of window 1 of process \"System Preferences\". Invalid index." number -1719 from tab group 1 of window 1 of process "System Preferences"

оригинальный источник кода: https://www.reddit.com/r/apple/comments/34qmn0/is_there_a_shortcut_or_command_to_switch_the_lr/

Оригинальный код:

tell application "System Preferences"
     activate
     reveal anchor "output" of pane id "com.apple.preference.sound"
end tell
tell application "System Events"
     tell slider 1 of group 1 of tab group 1 of window 1 of process "System Preferences"
          set value to 0.5
     end tell
end tell
tell application "System Preferences"
     quit
end tell

Рабочий код

Я внес некоторые изменения в код:

tell application "System Preferences"
    activate
    reveal anchor "output" of pane id "com.apple.preference.sound"
end tell

tell application "System Events"
    tell application process "System Preferences"
        repeat until exists tab group 1 of window "Sound"
        end repeat
        tell slider 1 of group 1 of tab group 1 of window "Sound"
            set value to 0.5
        end tell
        
    end tell
end tell

tell application "System Preferences"
    quit
end tell

я сохранил свой код в~/Applications/FixSoundBalance.applescript

Cronjob способ

И сделал crontab crontab -eсо значением:

*/5 * * * * /usr/bin/osascript ~/Applications/FixSoundBalance.applescript >/dev/null 2>&1

А в Мохаве вам нужно в первый раз дать разрешения Cron для доступа к специальным возможностям (в разделе «Безопасность и конфиденциальность», вкладка «Конфиденциальность»), после чего все работает нормально.

Альфред Уэй

Когда вы используете приложение alfredapp https://www.alfredapp.com/ , вы можете установить флажок под Features -> Default Results -> Extrasфлажком, AppleScriptsа затем при поиске Fix... в результате вы получите сценарий и сможете запустить его напрямую. Тогда вам не нужно устанавливать cronjob.

Это бесплатное приложение также решает проблему:

https://www.tunabellysoftware.com/balance_lock/

Наушники немного не в порядке? Заметили, что ваш звук не совсем по центру? Войдите в блокировку баланса — это сохранит ваш звук по центру и предотвратит дрейф влево/вправо.

Это идеальная утилита, позволяющая убедиться, что при подключении и отключении наушников звук остается в центре. Он был разработан из-за давней ошибки OS X, из-за которой баланс звука может случайным образом смещаться от центра.

Он прост в использовании и ненавязчиво работает в фоновом режиме.

Загрузите его сейчас совершенно бесплатно и наслаждайтесь идеальным звуком, который больше не нарушает баланс!