我设置了以下测试代码,尝试播放一个简单的 wav,在"无法连接到音频服务器"时出错。
static AuServer *server = 0;
server = AuOpenServer("", 0, NULL, 0, NULL, NULL);
if (!server)
{
fprintf(stderr, "Can't connect to audio servern");
exit(-1);
}
AuSoundPlayFromFile(server, "/public/sounds/test-tone.wav",
AuNone,100, NULL, NULL, NULL, NULL, NULL, NULL);
系统规格: -Linux浏览器 -VB 上的 redhat 7.2 -QT 4.8.5 使用 C++
此问题可能是由于未正确设置 NAS。我必须在编译器和 VB 中安装以下 rpm:
nas-libs-1.9.3-3.fc18.i686
nas-devel-1.9.3-3.fc18.i686
nas-debuginfo-1.9.3-3.fc18.i686
我还需要做什么吗? Linux 不会识别命令"NASD"。 我错过了什么?
我正在询问有关为什么上述代码不起作用的知识,有关 NAS 如何工作以及音频服务器用途的背景信息,以及任何其他想法,以找到我有权访问的可以播放 wav 的库。此外,我只看到 MAN 页面作为 NAS 的文档,任何其他相关的文档链接将不胜感激。
以下是我必须继续文档的所有内容: https://linux.die.net/man/3/ausoundplayfromfile
https://linux.die.net/man/3/auopenserver
背景信息
探索的其他选项我已经涉足了QSound,Phonon和现在的NAS(网络音频系统),并遇到了不同的障碍。我的项目无法轻松使用尚未安装或未包含在 QT4 内核中的库。
QSound:我一直无法玩我的任何测试WAV。根据我的研究,QSound以某种方式使用NAS,所以也许不正确的NAS设置也可能使Qsound失败?很难说有这么少的 Qsound 选项,因为我听到它超越了错误。
Phonon:从 .pro 查找 -lphonon 时遇到编译问题。 可能是由于安装了错误的位声子 RPMS。 安装了 64 位,但无法安装 32 位,存在大量依赖问题。虽然其他开发人员说使用 32 位,但 System 声称是 64 与"arch"命令,所以我至少可以说很困惑。
我发现 QTMultiMedia 实际上在 qt4.8 中可用,它对我有用!它的低水平,由于声子仍然可用,在 4.8 中似乎并不常见。仍然不确定 NAS 的问题是什么,但如果有人发现自己在这里遇到类似情况,我建议查看 QTMultiMedia。
http://doc.qt.io/archives/qt-4.8/qtmultimedia-module.html