Создаю эту тему, чтобы поделиться опытом настройки линукса на проигрывание звука в Jackhammer. Потому что по дефолту это, как правило, не работает.
Qt4 использует для вывода звука интерфейс NAS (Network Audio System).
Чтобы это работало, нужно:
1) Qt4, собранный с поддержкой NAS. Это есть начиная с версии 1.1.687 (см. тему с релизами).
2) Установить пакеты nas и nas-bin:
# apt-get install nas nas-bin
3) Создать эмуляцию OSS, например так:
# modprobe snd_pcm_oss
(лучше добавить этот модуль в автозагружаемые, чтобы не делать после каждой перезагрузки)
Теперь кнопка "Play" в Джеке должна проигрывать звук без проблем.
Под виндой для проигрывания звука используется Windows API, поэтому там таких проблем нет.
>snd_pcm_oss
оно же страшное deprecated... у меня его, оказывается, и нет.
а нельзя там по нажатию кнопки просто порождать дочерний процесс "aplay[paplay,play] $WAVNAME"?
thambs писал: а нельзя там по нажатию кнопки просто порождать дочерний процесс "aplay[paplay,play] $WAVNAME"?
Да я не собираюсь городить огород ради такой простой функции. Под виндой QSound::play работает превосходно и на всех системах. Зачем гнидиксу понадобилось мудрить и ломать NAS - я понимать отказываюсь. Я лишь попытался подсказать, как его починить, по крайней мере в джесси это работает.
Цитата:
thambs писал: оно же страшное deprecated
Ага, и тем не менее в волатилах адекватно работает только OSS. ALSA подтормаживает, а PulseAudio вообще ничего не проигрывает, только хрипит, хотя я вроде бы всё сделал в соответствии с той мизерной документацией и примерами, которые удалось нарыть. А вот OSS работает как часики, но с каких это пор линуксоид ищет лёгкие пути?
Наверное, /dev/dsp объявил deprecated тот же чудак на букву макдоналдс, что и изменил интерфейс memcpy, привязав все новые проги к GLIBC 2.14. Вот есть такие люди, у которых патологическая тяга сломать то, что работает, а потом унизить и изнасиловать тех, у кого это работает. Чтобы ничего не работало, а были только боль и страдания.
Скрытый текст:
Этот текст скрытый. Вы должны оставить хотя бы одно сообщение в теме, чтобы его увидеть.