Sound Switcher Indicator2.0.1

Автор: Дмитрий Канн Чтение на 2 мин
Этот пост  на английском

Минуло уж более двух лет с момента последнего релиза Sound Switcher Indicator (1.2.2). Всё это время меня донимали просьбами добавить поддержку переключения профилей устройств. Дело в том, что большинство звуковых карт без этого невозможно переключить на цифровой порт, такой как S/PDIF или HDMI.

И вот, я торжественно представляю Sound Switcher Indicator 2.0.1, который наконец-то поддерживает переключение профилей:

Sound Switcher Indicator 2.0.1.
Sound Switcher Indicator 2.0.1.

Что изменилось

Внешне не очень много:

  • Меню индикатора теперь отображает все доступные порты на всех устройствах, каждый пункт состоит из описания устройства и имени порта.
  • Меню учитывает доступность портов. Например, если вы выдёргиваете штеккер наушников, пункт Headphones пропадёт из меню, а вместо него, вероятно, появится Speakers.

В плане же внутренней реализации изменилось почти всё:

  • Код переписан под Python 3.
  • Приложение теперь работает с устройствами и профилями. Если порт, на который переключается пользователь, в текущем профиле недоступен, будет выбран и активизирован наиболее подходящий из поддерживаемых.
  • Прекращена поддержка версий для GTK+2 и Ubuntu старше 14.10 Utopic.
  • Требуется как минимум PulseAudio v4.0.

Всё это потребовало уймы времени на чтение PulseAudio API, а также копание исходников Gnome Control Center, чтобы разобраться как в нём организована работа с устройствами и профилями. (Замечу в сторону, что разрабатывать этот псевдо-объектно-ориентированный код на C должно быть сущим кошмаром. А полностью уследить за утечками памяти вообще, наверное, нереально.)

Установка

Установить или обновить приложение можно, как обычно, через мой Launchpad PPA согласно инструкции. ■

Подписаться на обновления блога:

Комментарии

Поделиться: