什么,'AL lib:pulseaudio.c:612:上下文没有连接:拒绝访问'是什么意思?

时间:2012-03-03 15:49:32

标签: c++ c openal pulseaudio

运行简单的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 个答案:

答案 0 :(得分:3)

我通过将/etc/openal/alsoft.conf(我正在使用Arch Linux)更改为:

来修复它
drivers=alsa,pulse

默认情况下先检查脉冲,我没有安装。

安装Pulse也应该修复它。

答案 1 :(得分:1)

如果仍然没有#39;要修复它(对于PulseAudio的用户),请尝试

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