Что означает «AL lib: pulseaudio.c: 612: Контекст не подключен: доступ запрещен»? - PullRequest
1 голос
/ 03 марта 2012

Я получаю следующую ошибку при запуске простой программы OpenAL:

AL lib: pulseaudio.c: 612: контекст не подключен: доступ запрещен

Интересно, что если я пытаюсь воспроизвести звук, он воспроизводится правильно, хотя звучит немного искаженно.

Ниже приведен код, который выдает ошибку. Это также происходит, если я инициализирую с помощью ALUT.

#include <AL/al.h>
#include <AL/alc.h>
#include <string.h>

int main() {
  ALCdevice* dev;
  ALCcontext* ctx;
  dev = alcOpenDevice(NULL);
  ctx = alcCreateContext(dev, NULL);
  alcMakeContextCurrent(ctx);
  // cleanup
  alcMakeContextCurrent(NULL);
  alcDestroyContext(ctx);
  alcCloseDevice(dev);
  return 0;
}

Что означает ошибка? Можно это исправить?

Ответы [ 2 ]

3 голосов
/ 03 марта 2012

Я исправил это, изменив /etc/openal/alsoft.conf (я использую Arch Linux) на это:

drivers=alsa,pulse

По умолчанию сначала проверяется Pulse, который я не установил.

Установка Pulse должна исправить это тоже.

1 голос
/ 31 июля 2014

Если это по-прежнему не помогает (для пользователей PulseAudio), попробуйте

cp  /etc/machine-id /var/lib/dbus/machine-id
...