Ubuntu 12.04 LTS x86 Linux에서 Pulseaudio와 Jack간에 전환하려면 어떻게합니까?


10

내 우분투 12.04에는 Jack이 필요한 일부 응용 프로그램이 있습니다. Jack이 없으면 시작되지 않으므로 Jackd + (QjackCtl)를 유지해야합니다. 이제 문제는 항상 제대로 시작되지 않습니다. 때로는 잘 작동하고 때로는 실패합니다 (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

PC를 다시 시작한 후 Jack과 Pulseaudio가 모두 작동하는지 확인할 수 있습니다. 그러나 여기 또 다른 문제가 있습니다. 스피커의 사운드 출력이 매우 낮고 CPU 스파이크가 약간 증가했으며 하드웨어 장치는 표시되지 않습니다. 사운드 컨트롤은 2 : 1 사운드 시스템 만있는 5 : 1 사운드 시스템을 보여줍니다.

Pulseaudio와 Jack을 전환하는 방법이 필요합니다. 나는 전문 음악 제작자가 아닙니다. Jack이 필요한 Ardor 또는 다른 앱을 사용하는 경우에만 Jackd가 필요합니다. Jack을 시작할 때 Pulseaudio가 자동으로 비활성화 될 것이라고 생각해야합니다. 그러나 그것은 사실이 아닙니다. 이전에는 eroros에 직면했습니다.

그 오류에 대한 로그는 다음과 같습니다.

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) "" 

이제 내 질문은 어떻게 Pulse와 Jack을 안전하게 전환 할 수 있습니까? 그렇게 할 앱이 있습니까?

스크린 샷이 있습니다-

답변:


3

내가 지금 찾은 가장 좋은 옵션은 잭이 작동하는 동안 펄스 오디오를 중단하는 것입니다. 펄스 오디오 및 잭 페이지에 설명되어 있으며을 통해 잭 서버를 호출합니다 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

나는이 질문이 꽤 오래 전에 요청 / 응답되었음을 알고 있지만이 질문을 겪을 수있는 사람들에게 도움이 될만한 추가 정보가 있습니다.

원래 포스터는 펄스 오디오와 잭을 함께 사용하는 동안 CPU 스파이크 (지연)가 발생했음을 나타냅니다. 내 경험 (전문 스튜디오 엔지니어)은 ardor 등에 사용할 수있는 대기 시간이 짧은 커널을 실행하지 않기 때문에 발생합니다. 알.

rt-kernel을 사용하여 PC를 먼저 설치하고 재부팅하는 것이 좋습니다. 커널은 리포지토리 및 시냅스에서 사용할 수 있지만 소스를 활성화해야 할 수도 있습니다.

개인적으로, 나는 우분투가 적극적으로 그것을 지원하고 사용할 수 있기 때문에 rt- 커널을 권장합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.