我最近在一台新电脑上安装了 Xubuntu 20.04,其硬件配置如下:
- 主板 HP 型号 Memphis 2-S
- CPU Intel Pentium G3250 双核 3.2 GHz
- 16 公羊
- 500 转固态硬盘
- 显卡 GeForce 1030(使用 NVidia 专有或开源驱动程序)。
为了收听声音,我要么使用混合 USB 控制台 Yamaha MG12XU 作为外部声卡,要么使用 KVM HDMI 切换器(也可用作 USB 外部声卡),或者我将耳机直接插入计算机上的插头。
问题是我在听音乐时会出现“跳跃”和“间隙”。就好像读数向前或向后跳了几十毫秒,或者有时只是一片空白。
这个问题完全是随机的:如果我倒着听我的歌曲,问题不会在歌曲的同一时刻重现。它发生在从流媒体(deezer、youtube....)收听声音或使用 VLC 或 Mixxx 或其他任何方式播放本地文件时;无论文件类型是什么:ogg、mp3 或 flac,都会出现同样的问题。
当我从控制台启动 Mixxx 时,它似乎有点“健谈”,我注意到启动时出现了一些错误(但当从我的笔记本电脑启动 Mixxx 时也会出现这些错误,而我的笔记本电脑没有这个声音问题)并且每次发生跳跃/间隙时都会出现重复错误。
以下是启动 Mixxx 时出现的错误
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2642:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_route.c:869:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_oss.c:377:(_snd_pcm_oss_open) Unknown field port
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
ALSA lib pcm_usb_stream.c:486:(_snd_pcm_usb_stream_open) Invalid type for card
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
Warning [Controller]: USB permissions problem (or device error.) Your account needs write access to USB HID controllers.
ALSA lib pcm.c:8526:(snd_pcm_recover) underrun occurred
ALSA lib pcm.c:8526:(snd_pcm_recover) underrun occurred
Warning []: SoundDeviceNetworkThread: Failed bumping priority
这是我跳跃/间隙发生时的错误
ALSA lib pcm.c:8526:(snd_pcm_recover) underrun occurred
我还注意到一些奇怪的事情:即使没有播放声音,控制台中也会出现此错误。当所有 Mixxx 播放器都停止时,有时,我会看到控制台中出现一堆“欠载”错误。
根据一些论坛上的信息,我修改了 /etc/pulse/daemon.conf 文件,如下所示:
default-fragments = 4 => modified to 100
default-fragment-size-msec = 25 => modified to 10000
有了 100 秒的缓冲时间,我以为问题就会得到解决,但是,它并没有改变任何东西:没有变坏也没有变好。
真是令人绝望。我知道这台电脑不是“游戏”电脑,但它似乎足够强大,可以读取声音文件。即使我的旧 32 位笔记本电脑也没有这个问题……
也许“underrun”错误不是问题。但在这种情况下
- 我不知道在哪里寻找错误消息来尝试找出问题的根源
- 为什么每次出现问题时都会出现此消息?