Tkabber Wiki

Проблемы со звуком
Login

Проблемы со звуком

Материал из Tkabber Wiki

Содержание

В старпаке/старките нет звука

Официальные старкиты и старпаки не содержат пакета Snack, который обычно играет звук в Ткаббере.

(Далее мы будем говорить про старпак для краткости, но всё сказанное относится в равной мере и к старкитам.)

Решение: Возьмите один из готовых старкитов пакета Snack, доступных в архиве старкитов и положите его в тот же каталог, где у вас находится старпак Ткаббера.

При старте старпак Ткаббера ищет файлы, подходящие под маску snack*.kit и лежащие там же, где сам старпак, и загружает первый найденный.

В настоящий момент в архиве старкитов есть три версии старкита Snack:

Системозависимые старкиты примерно вдвое меньше в размере, чем полный, но их нельзя таскать за собой в другую ОС.

Внимание! Кажущаяся разумной альтернатива — использовать внешнюю программу для проигрывания звука — работать не будет, так как звуковые файлы находятся на виртуальной файловой системе старпака и недоступны для внешних программ.

Изменение громкости звуковых оповещений

Дальнейшие советы касаются только случая использования встроенной звуковой библиотеки snack.

При помощи файла config.tcl

В раздел hook::add finload_hook { ... } нужно добавить следующие строки:

if {$sound::snack} {
     ::snack::audio scaling 0.4
}

Здесь 0.4 означает, что звуки в Ткаббере будут проигрываться в 4/10 от общей громкости системы. Значение может меняться от 0.0 до 1.0.

Во время работы Ткаббера

Открываем консоль через меню Помощь → Показать консоль. В ней вводим:

     ::snack::audio scaling 0.4

Делаем опцию в настройках Ткаббера

В файле tkabber/plugins/general/sound.tcl находим строчку:

   custom::defvar options(mute) 0 \

сразу перед ней вставляем строки:

   custom::defvar options(volume) 100 \
         [::msgcat::mc "Sound volume (from 0 to 100)"] \
         -command [list [namespace current]::volume_set] \
         -type integer -group Sound

потом находим строчку:

proc ::sound::load_sound_file {name args} {

сразу перед ней вставляем строки:

proc ::sound::volume_set {args} {
          variable options
          if {$options(volume) < 0 } {set options(volume) 0}
          if {$options(volume) > 100 } {set options(volume) 100}
          ::snack::audio scaling [expr {$options(volume) / 100.0}]
}

В опциях звука появится ещё один параметр Sound volume (from 0 to 100). Громкость меняется от минимальной (0) до максимальной (100). Если собираетесь использовать этот вариант настройки, то не забудьте убрать из config.tcl последствия настройки согласно первому пункту.

Archimed

Не работает звук под линуксом в ALSA

[2009-12-22 13:52:00]<teo> kostix_: libsnack2-alsa не рекомендуется к использованию. libsnack2 и настройка эмуляции oss в alsa рекомендуется.

Также можно подключить внешнюю программу. Например, mplayer играет за милую душу.