我配置了我的 Ubuntu 系统,以便能够在单独的 X 服务器中启动任何应用程序。在单独的 X 服务器中运行游戏或 XBMC 等具有一些主要优势。
然而问题是,当您切换到第二个 X 服务器 (Ctrl+Alt+F8) 时,您听不到任何声音。奇怪的是,当切换回桌面 (Ctrl+Alt+F7) 时,您突然可以听到第二个 X 服务器的声音。这意味着声音正在工作,但您在第二个 X 服务器中时听不到声音。
在较早版本的 Ubuntu(例如 Ubuntu 10.10)中,有一个命令(ck-launch-session
),您可以在第二个 X 服务器中运行它,这样声音就可以正常工作。不幸的是,这个命令在 Ubuntu 11.04 及更高版本中不再有这种效果。这是我在单独的 X 服务器中启动 XBMC 时使用的命令:
xinit /usr/bin/ck-launch-session /usr/bin/xbmc -- :1
当我在 Ubuntu 11.04 或更高版本中的第二个 X 服务器中时,如何启用声音?
相关错误报告:366404
答案1
当我做这种事情时,我必须成为“音频”组的一员。这样每个屏幕的音频都可以听到。有一个问题:切换屏幕不会改变输出的音频。如果我在一个屏幕上运行 KDE 实例并使用 Amarok 播放音乐,我将能够在所有屏幕上听到它。
如果您(像我一样)不知道如何通过命令提示符将用户添加到组,只需在 Synaptic 或软件中心安装“kuser”或sudo apt-get install kuser
在终端中输入。
我似乎记得在使用默认启动器以 root 身份启动它时遇到了一些问题。如果它给出错误,说它无法访问文件,这通常不是问题,只需确保您以 root 身份使用该程序即可。如果它只是告诉您需要 root 身份,请关闭窗口,按 ALT+F2,然后键入gksudo kuser
。计算机将要求您输入密码,然后 Kuser 将正确加载。
答案2
尝试使用以下命令让第二个 x-server 知道你的脉冲音频凭据pax11publish -D :1 -e
(其中 :1 是第二个 X-Server 的显示器编号,通常 :0 是第一个,向上计数)
您正在运行的应用程序可能正在尝试从 X11 根窗口属性中读取脉冲属性。
或者,您可能会陷入主要的控制台套件故障。