Як переключитися між Pulseaudio та Jack на Ubuntu 12.04 LTS x86 Linux?


10

На моєму Ubuntu 12.04 є кілька додатків, для яких потрібен Джек. Без Джека вони просто не почнуться, тому мені доведеться тримати Jackd + (QjackCtl). Тепер проблема в тому, що джекд не працює належним чином весь час. Іноді це працює добре, а колись не вдається запуститись (я підозрюю, що причина Pulseaudio).

Тепер я знайшов вирішення, щоб утримати і Джека, і Pulseaudio, бігаючи поруч. Ось що я зробив

1. Installing pulseaudio-modules-jack
2. Editing /etc/pulse/default.pa and adding these lines

    ### Load audio drivers statically
        load-module module-jack-sink
        load-module module-jack-source

Після перезавантаження ПК я бачу як Джек, так і Pulseaudio, що працюють добре. Але тут є ще одна проблема, звуковий сигнал від динаміків дуже низький, шипи процесора досить сильно зросли, апаратні пристрої не показані. Звуковий контроль показує звукову систему 5: 1, де у мене є лише звукова система 2: 1.

Мені потрібен спосіб переключитися між Pulseaudio та Джеком. Я не професійний виробник музики. Мені потрібен Джекд тільки тоді, коли я використовую Ardor або будь-який інший додаток, який потребує Джека. Ви повинні думати, що Pulseaudio буде автоматично відключений при запуску Джека. Але це не так для мене. Раніше я стикався з помилками, намагаючись так

Ось журнал цієї помилки

14:36:48.194 Patchbay deactivated.
    14:36:48.198 Statistics reset.
    14:36:48.228 ALSA connection change.
    14:36:48.241 D-BUS: Service is available (org.jackaudio.service aka jackdbus).
    Cannot connect to server socket err = No such file or directory
    Cannot connect to server socket
    jack server is not running or cannot be started
    Registered event listener change listener:  true 
    14:36:48.258 ALSA connection graph change.
    14:37:12.679 D-BUS: JACK server could not be started. Sorry
    Cannot connect to server socket err = No such file or directory
    Cannot connect to server socket
    jack server is not running or cannot be started
    QSpiAccessible::accessibleEvent not handled:  "2"  obj:  QMessageBox(0xbfd7c2d0) "" 
    FIXME: handle dialog start. 
    Sat Feb  2 14:37:12 2013: Starting jack server...
    Sat Feb  2 14:37:12 2013: JACK server starting in realtime mode with priority 10
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: Cannot lock down 82241434 byte memory area (Cannot allocate memory)[0m
    Sat Feb  2 14:37:12 2013: control device hw:0
    Sat Feb  2 14:37:12 2013: control device hw:0
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: Failed to acquire device name : Audio0 error : Cannot allocate memory[0m
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: Audio device hw:0 cannot be acquired...[0m
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: Cannot initialize driver[0m
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: JackServer::Open() failed with -1[0m
    Sat Feb  2 14:37:12 2013: [1m[31mERROR: Failed to open server[0m
    Sat Feb  2 14:37:13 2013: Saving settings to "/home/soham/.config/jack/conf.xml" ...
    FIXME: handle dialog end. 
    14:37:17.923 Could not connect to JACK server as client. - Overall operation failed. - Unable to connect to server. Please check the messages window for more info.
    Cannot connect to server socket err = No such file or directory
    Cannot connect to server socket
    jack server is not running or cannot be started
    QSpiAccessible::accessibleEvent not handled:  "2"  obj:  QMessageBox(0xbfd7cb40) "" 
    FIXME: handle dialog start. 
    FIXME: handle dialog end. 
    QSpiAccessible::accessibleEvent not handled:  "6"  obj:  QMenu(0x8d0f0a0) "" 

Тепер моє запитання - як я можу безпечно перемикатися між Пульсом та Джеком? Чи є програма для цього?

Ось скріншот -

Відповіді:


3

Найкращий варіант, який я знайшов на даний момент, - це призупинення імпульсного звучання під час роботи гнізда. Це описано на сторінці pulseaudio та jack і включає виклик сервера jack через pasuspender.

З чоловічої сторінки:

   pasuspender is a tool that can be used to tell a local PulseAudio sound
   server to temporarily suspend access to the  audio  devices,  to  allow
   other  applications  access  them  directly.  pasuspender  will suspend
   access to the audio devices, fork a child process, and when  the  child
   process terminates, resume access again.

0

Я розумію, що це питання було задано / відповіли досить давно, але я маю додаткову інформацію, яка може допомогти тим, хто може зіткнутися з цим питанням.

Оригінальний плакат вказує, що вони відчувають сплески процесора (відставання) при одночасному використанні імпульсного аудіо та джекда. На мій досвід (я професійний інженер-студій), це спричинено тим, що ядро ​​з низькою затримкою, яке доступне для використання з ardor et et, не працює. ін.

Я б запропонував спочатку встановити і перезавантажити ваш ПК за допомогою rt-ядра. Ядро повинно бути доступним у репо та синаптиці, проте джерела можуть потребувати активації.

Особисто я б рекомендував rt-ядро, оскільки ubuntu активно підтримує його та є доступним (і не вплине на загальне використання Вашого ПК на сьогоднішній день.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.