Conky и Ubuntu — визуализация музыки (музыкальные панели)?

Conky и Ubuntu — визуализация музыки (музыкальные панели)?

Я начал играть с Conky несколько дней назад и добился следующего:

(Примечание: хотя я и написал это с нуля, меня вдохновилоэта фотография, благодарность автору за его креативность)

Как видите, у меня есть немного свободного места между цифровыми часами («21:20») и статистикой соединения.

Теперь я бы хотел иметь в этом пространстве то, что я называю "музыкальными полосами". То есть анимированные полосы, которые двигаются в соответствии со звуком, воспроизводимым в данный момент моим музыкальным проигрывателем (сейчас это Clementine). Мне уже удалось отобразить текущий трек, исполнителя, год и т. д. благодаря некоторым скриптам и команде qbus.

Однако у меня есть два основных вопроса:

  • Как мне получить реальные музыкальные данные (кажется, они называются амплитудами)?
  • Как бы мне это анимировать достаточно плавно?

Я использую conky и lua с cairographics, но анимация действительно кажется чем-то сложным, так как я не нашел способа заставить lua/cairographics "перерисовываться". Это заставляет меня уменьшить update_interval в .conkyrc, чтобы добиться чего-то "близкого" к анимации.

К сожалению, установка очень маленького значения update_interval заставляет conky потреблять много ресурсов ЦП, поскольку он не только перерисовывается каждые (например) 50 миллисекунд, но и пересчитывает переменные и повторно выполняет скрипты при необходимости.

Поэтому для анимации я ищу способ добиться плавной анимации (10 кадров в секунду было бы достаточно), не заставляя conky потреблять ресурсы процессора.

Было бы здорово, если бы кто-нибудь мог дать мне несколько идей. Это не обязательно должно быть на LUA, и если есть хорошая альтернатива conky (должно быть что-то легковесное), не стесняйтесь, дайте мне знать!

--

Большое спасибо за идеи и предложения!

решение1

Я думаю, это возможно, используя PulseAudio. Я не знаю, как это сделать полностью, новот утилитаЯ обнаружил, что это поможет вам получить амплитуды — полагаю, вы затем сможете найти что-то, чтобы преобразовать это в диаграммы Conky.

решение2

Я знаю, что прошло уже много времени с тех пор, как вы это опубликовали, однако на днях я нашел отличный визуализатор CLI: https://github.com/dpayne/cli-visualizer

Конечно, это не решит проблему с интервалом обновления, но вам все равно может быть так же интересно, как и мне.

Связанный контент