无法重新打开 DSP 设备 /dev/dsp:权限被拒绝

Posted

技术标签:

【中文标题】无法重新打开 DSP 设备 /dev/dsp:权限被拒绝【英文标题】:Unable to re-open DSP device /dev/dsp: Permission denied 【发布时间】:2011-08-16 21:21:13 【问题描述】:

所以我昨晚下载了 Asterisk 的源代码并尝试编译它。一切似乎运行顺利,在安装过程中没有明显的错误。我通过网络将 2 部 IP 电话连接到服务器,并且它们注册良好。后来我的问题来了:

在尝试从控制台呼叫其中一部 IP 电话作为测试后,我收到以下错误

WARNING[9211]: chan_oss.c:485 setformat: Unable to re-open DSP device /dev/dsp: Permission denied

我已经尝试搜索所有不同的星号论坛,但似乎没有任何关于这个问题的信息,我的书也没有。

不知道是我编译的时候做错了什么还是什么...

有人有想法吗?


切换到 ALSA 产生了这个错误:

ERROR[10173]: chan_alsa.c:456 alsa_read: Read error: Resource temporarily unavailable

编辑:Asterisk 崩溃了...

奇怪的是,没有其他程序正在运行使用声音,所以我不知道为什么会发生这种情况!

【问题讨论】:

【参考方案1】:

除非您的系统非常旧,否则您几乎肯定希望使用chan_alsa 而不是chan_oss。 OSS 声音系统现在已经很老了,现代系统通常使用 ALSA 声音代替。

【讨论】:

我将它切换到 ALSA,但是它给了我以下错误:ERROR[10173]: chan_alsa.c:456 alsa_read: Read error: Resource temporarily unavailable【参考方案2】:

经过反复试验,我发现了这个问题:Asterisk 1.6 不能很好地与 Ubuntu 配合使用。

我最初犯了使用默认 Ubuntu apt-get repos' 安装的错误,它几乎总是被 1-2 个版本过时。我用 Asterisk 更新了我的存储库并安装了 1.8 版,它工作正常!

【讨论】:

以上是关于无法重新打开 DSP 设备 /dev/dsp:权限被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

/dev/dsp 窗口替代

/dev/dsp 在centOS 6.x 中播放音频时未找到错误

使用ffmpeg录音

在 C/C++ 中在树莓派中播放 WAV,必须使用 dsp?

八度音阶中的 playaudio() [重复]

Android设备监视器无法在Ubuntu 17.10中打开