Вы должны найти, что get volume settings
вернет объект, содержащий среди прочего объем вывода и объем предупреждения. Так, например, вы можете сделать это, чтобы получить весь объект:
osascript -e 'get volume settings'
или, скорее, может быть это, чтобы захватить только выходной объем (например, а не объем предупреждения):
osascript -e 'set ovol to output volume of (get volume settings)'
... но учтите, что не все аудиоустройства будут иметь прямое программное управление настройками громкости. Например, ваш дисплей аудио должен иметь контроль; однако, плата FireWire или USB I / O, вероятно, не будет иметь эти настройки под управлением программного обеспечения (так как они могут быть физическими регуляторами). Если конкретный параметр не находится под контролем программного обеспечения, то он будет отображаться в объекте, возвращаемом get volume settings
как «отсутствующее значение» или что-то в этом роде.
get volume settings
на самом деле не различает 0, 0,1 и 0,01. Он не показывает десятичные значения, что делает его совершенно бесполезным.Я совершил очень скромный сценарий bash под названием "chut". Поскольку я был сыт по горло объемом системы, требующим в качестве входных данных с плавающей запятой (от 0 до 10 с шагом 0,1), но выводил целое число с шагом 14 в диапазоне от 0 до 100.
Пойди разберись ... Если кому интересно: http://github.com/docgyneco69/chut
Во всей своей красе:
источник
Получение и настройка громкости с использованием той же шкалы 1..100:
источник