Я обновил свой Ubuntu до 13.10, и теперь я не слышу никаких звуков.
Я проверил на alsamixer
, что голоса включены. Например, я не слышу видео на Youtube.
Я также потерял звук при обновлении до 13.10.
Чтобы исправить это, я запустил это в Терминале ( Ctrl kbd> + Alt kbd> + T kbd>):
sudo alsa force-reload
Сделал перезагрузку, и все заработало отлично.
Я начал работать, когда посмотрел этот документ :
Проблема заключалась в том, что мне нужно было добавить некоторые разрешения для моего пользователя. Легко сказать, исправлено ли это, потому что aplay -l
не скажет никаких звуковых карт, но sudo aplay -l
перечислит некоторые. Это было мое исправление:
sudo usermod -aG audio,video,pulse,pulse-access frew
это сработало для меня Как мне изменить, какие аудиоразъемы используются для ввода и вывода? или сделать это в hda-mods.py
и поместить его в папку /etc
, потому что на sudo python run.py
все звук отключен, просто включите звук, затем сохраните его
Если вы хотите сохранить свои изменения на постоянной основе, пока не закрывайте HDA Analyzer. Вместо этого нажмите «Exp» (Экспорт) в левом нижнем углу и используйте «Сохранить как», чтобы записать скрипт Python в файл. Теперь скопируйте этот файл в нечто вроде /etc/hda-mods.py
и отредактируйте /etc/rc.local
как root (например, используя gksudo gedit /etc/rc.local
) и добавьте строку python /etc/hda-mods.py
прямо перед строкой выхода 0, затем сохраните ее и перезагрузите. Ваши изменения должны выжить.
#!/usr/bin/env python
import os
import struct
from fcntl import ioctl
def __ioctl_val(val):
# workaround for OverFlow bug in python 2.4
if val & 0x80000000:
return -((val^0xffffffff)+1)
return val
IOCTL_INFO = __ioctl_val(0x80dc4801)
IOCTL_PVERSION = __ioctl_val(0x80044810)
IOCTL_VERB_WRITE = __ioctl_val(0xc0084811)
def set(nid, verb, param):
verb = (nid << 24) | (verb << 8) | param
res = ioctl(FD, IOCTL_VERB_WRITE, struct.pack('II', verb, 0))
FD = os.open("/dev/snd/hwC0D0", os.O_RDONLY)
info = struct.pack('Ii64s80si64s', 0, 0, '', '', 0, '')
res = ioctl(FD, IOCTL_INFO, info)
name = struct.unpack('Ii64s80si64s', res)[3]
if not name.startswith('HDA Codec'):
raise IOError, "unknown HDA hwdep interface"
res = ioctl(FD, IOCTL_PVERSION, struct.pack('I', 0))
version = struct.unpack('I', res)
if version < 0x00010000: # 1.0.0
raise IOError, "unknown HDA hwdep version"
# initialization sequence starts here...
set(0x0e, 0x300, 0x6080) # 0x0e036080 (SET_AMP_GAIN_MUTE)
os.close(FD)