我有一个华硕G46vw (规格以下)运行Ubuntu14.04构建05/05/14,这台笔记本电脑有英特尔卡和一个离散660米。我非常兴奋有HDMI与擎天柱合作。但我还有最后一件事让我发疯。通过HDMI的音频。
我已经尝试谷歌出这个问题的垃圾,我是相当擅长为我自己通过论坛阅读,但我没有运气到目前为止。脉冲音频没有列出我的HDMI输出。也许我需要更新一下脉冲音频?下面是更多的信息。
播放硬件设备列表
# aplay -l
card 0: PCH [HDA Intel PCH], device 0: VT1802 Analog [VT1802 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: VT1802 Digital [VT1802 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: VT1802 Alt Analog [VT1802 Alt Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
# cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xf7a10000 irq 46发布于 2014-08-15 20:19:28
我设法使HDMI音频输出工作在我的笔记本电脑与"NVIDIA公司GF116M GeForce GT 555M/635 M“GPU,使用nvidia驱动器和英伟达。这个过程相当复杂,每次重新启动之后都要执行它。我已经编写了一个脚本,它尽可能地自动化这个过程。它的评论解释了它所做的事情。(编辑:如果你不喜欢运行脚本,你也可以遵循这里描述的过程:https://askubuntu.com/a/660910/73753)
#!/bin/bash
# Check if we are executing as root
if [ $UID != 0 ]; then
echo "This script must be run as root."; exit
fi
# The nvidia driver cannot be loaded while we are configuring the GPU.
# Check whether the nvidia kernel is loaded:
if grep nvidia /proc/modules; then
# It is. Check if we have HDMI audio
if lspci | grep 01:00.1; then
# Yes, so we are already done.
echo "The following list should contain HDMI audio devices"
aplay -l
alsa reload
echo "--> You are done!"; exit
else
# No, disable output through nvidia:
prime-select intel
echo "Please reboot. Afterwards rerun this script."; exit
fi
fi
# Make sure that the GPU is powered
if ! lspci -H1 | grep 01:00.0; then
if ! grep OFF /proc/acpi/bbswitch; then
echo "ERROR: GPU is listed in lspci -H1, but bbswitch thinks it is off"; exit 1
fi
# Turn on the discrete GPU (to get it listed in `lspci -H1`)
echo ON > /proc/acpi/bbswitch
if ! grep ON /proc/acpi/bbswitch; then
echo "ERROR: Failed to turn on the GPU"; exit 1
fi
fi
# Check if the GPU's audio chip is powered
if ! lspci -H1 | grep 01:00.1; then
echo "Suspend the pc and resume it again. This will turn on the audio chip on the discrete GPU. Afterwards rerun this script."; exit
fi
# The output of 'lscpi -H1' should now contain 2 lines similar to:
# 01:00.0 VGA compatible controller: NVIDIA Corporation GF116M [GeForce GT 555M/635M] (rev a1)
# 01:00.1 Audio device: NVIDIA Corporation GF116 High Definition Audio Controller (rev a1)
# Now we need to rescan for the GPU such that the audio chip is found as well
if lspci | grep 01:00.0; then
# Now we 'unmount' the GPU
# the nvidia driver is not loaded, otherwise this step would eventualy cause your computer to freeze/hang
echo 1 > /sys/bus/pci/devices/0000\:01\:00.0/remove
# Wait a bit
sleep 1
# Check if this succeeded
if ! lspci | grep 01:00.0; then
echo "ERROR: Failed to remove the GPU (or so it seems, you can try again)"; exit 1
fi
fi
if ! lspci | grep 01:00.0; then
# Rescan
echo 1 > /sys/bus/pci/rescan
if ! lspci | grep 01:00.1; then
echo "ERROR: Rescan did not find the audio chip"; exit 1
fi
# The output of 'lspci' should now contain 2 lines similar to:
# 01:00.0 VGA compatible controller: NVIDIA Corporation GF116M [GeForce GT 555M/635M] (rev a1)
# 01:00.1 Audio device: NVIDIA Corporation GF116 High Definition Audio Controller (rev a1)
# Now we are ready to restart X11 using the nvidia driver
prime-select nvidia
echo "Please log out and in again. Afterwards rerun this script."; exit
fi
echo "ERROR: Something went wrong"; exit 1https://askubuntu.com/questions/444132
复制相似问题