环绕声 7.1 USB 耳机设置

环绕声 7.1 USB 耳机设置

我在这个网站和其他网站上看到了这个问题的多个版本,但都没有太大帮助。我正在尝试设置我的 Turtle Beach Z60 耳机,以便它播放环绕声,但遇到了一些问题。

我已成功编辑,/etc/pulse/daemon.conf以便default-sample-channels = 8。然而,问题是当我尝试时,speaker-test -c 8左侧、后左、右侧和后右的音量比前左、前中、前右和后中低得多。不仅如此,与通常在 Windows 上工作相比,扬声器的音质非常低。

最后,当我尝试选择声卡时alsamixer出现错误 cannot load mixer controls: Invalid argument

我的/proc/asound/card1/stream0文件是

Turtle Beach Turtle Beach Z60 游戏音频,USB-0000:00:14.0-1,全速:USB 音频

回放:

状态:停止

接口 2

替代集 1

格式:S16_LE

通道:2

端点:1 OUT(自适应)

费率:16000 接口 2 Altset 2

格式:S24_3LE

通道:2

端点:1 OUT(自适应)

价格:16000

捕获:

状态:停止

接口 1

替代集 1

格式:S16_LE

通道:2

端点:1 IN(自适应)

费率:16000 接口 1 Altset 2

格式:S24_3LE

通道:2

端点:1 IN(自适应)

价格:16000

任何帮助都将不胜感激。谢谢。

答案1

这是一篇旧帖子,但我希望它能帮助一些人。我花了很长时间摆弄这副耳机才得到正确的声音。我不是 alsa 或 pulse-audio 方面的专家。

以下内容是在 Fedora Linux 33 上完成的,但可能也适用于 Ubuntu 用户。

此耳机有一个用于语音聊天(低质量)的频道和一个用于普通音频的频道。插入此耳机只会使低质量声音可用于脉冲音频。这可以通过播放音频并转动 USB 线上控制器上的音量轮来验证。仅使用语音通道轮才能更改音量。

您可以看到样本量较低:

pactl list sinks
Sink #5
        State: SUSPENDED
        Name: alsa_output.usb-Turtle_Beach_Turtle_Beach_Z60_Game_Audio_000000000000-00.analog-stereo
        Description: Turtle Beach Z60 Game Audio Analog Stereo
        Driver: module-alsa-card.c
        Sample Specification: s16le 2ch 16000Hz

如果我查看 /proc/asound/card0 中的不同流(我的耳机是 card0,你的可能有所不同)我可以看到 stream0 是 16000Hz 而 stream1 是适当的音质流:

[stephan@nyx ~]$ cat /proc/asound/card0/stream0
Turtle Beach Turtle Beach Z60 Game Audio at usb-0000:00:14.0-1, full speed : USB Audio

Playback:
  Status: Stop
  Interface 2
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 1 OUT (ADAPTIVE)
    Rates: 16000
    Bits: 16
    Channel map: FL FR
  Interface 2
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 OUT (ADAPTIVE)
    Rates: 16000
    Bits: 24
    Channel map: FL FR

Capture:
  Status: Stop
  Interface 1
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 1 IN (ADAPTIVE)
    Rates: 16000
    Bits: 16
    Channel map: FL FR
  Interface 1
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 1 IN (ADAPTIVE)
    Rates: 16000
    Bits: 24
    Channel map: FL FR
[stephan@nyx ~]$ cat /proc/asound/card0/stream1
Turtle Beach Turtle Beach Z60 Game Audio at usb-0000:00:14.0-1, full speed : USB Audio #1

Playback:
  Status: Running
    Interface = 4
    Altset = 1
    Packet Size = 192
    Momentary freq = 44100 Hz (0x2c.199a)
  Interface 4
    Altset 1
    Format: S16_LE
    Channels: 2
    Endpoint: 2 OUT (ADAPTIVE)
    Rates: 8000, 11025, 16000, 22050, 24000, 32000, 44100, 48000
    Bits: 16
    Channel map: FL FR
  Interface 4
    Altset 2
    Format: S24_3LE
    Channels: 2
    Endpoint: 2 OUT (ADAPTIVE)
    Rates: 8000, 11025, 16000, 22050, 24000, 32000, 44100, 48000
    Bits: 24
    Channel map: FL FR
  Interface 4
    Altset 3
    Format: S16_LE
    Channels: 8
    Endpoint: 2 OUT (ADAPTIVE)
    Rates: 8000, 11025, 16000, 22050, 24000, 32000, 44100, 48000
    Bits: 16
    Channel map: FL FR FC LFE SL SR FLC FRC

这是个好消息,可能意味着没有驱动程序问题,但用户空间中的某些东西没有选择正确的输出流。

使用 aplay 命令,我发现我的卡有两个设备。我假设 stream1 位于第二个设备(设备 1)上,在 ALSA 中称为 hw:0,1

[stephan@nyx ~]$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Audio [Turtle Beach Z60 Game Audio], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: Audio [Turtle Beach Z60 Game Audio], device 1: USB Audio [USB Audio #1]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

我通过使用此特定输出设备打开 VLC 来验证此设备上的质量。启动 VLC 并播放音频文件

vlc --aout alsa --alsa-audio-device hw:0,1

在确认声音质量符合要求后,我使用 ALSA 设备在 Pulse-audio 中创建了一个接收器

pactl load-module module-alsa-sink device=hw:0,1

在 GNOME 中,我现在可以看到一个名为“Turtle Beach Z60 Game Audio”的新音频设备。使用它作为输出设备,音质非常好。您可以通过转动 USB 线控制器上的音量滚轮来验证是否使用了正确的声道。它应该对普通音量滚轮而不是语音滚轮做出反应。

您可以通过将此行添加到 /etc/pulse/default.pa 来使对 pulse-audio 的更改永久生效

load-module module-alsa-sink device=hw:0,1

现在,在脉冲音频中列出接收器可以显示接收器的正确样本大小

Sink #6
    State: RUNNING
    Name: alsa_output.hw_0_1
    Description: Turtle Beach Z60 Game Audio
    Driver: module-alsa-sink.c
    Sample Specification: s16le 2ch 44100Hz
    Channel Map: front-left,front-right

请注意,它只显示两个声道,而不是环绕声。这可能是可以在某处进行的设置,但我对环绕声不感兴趣。这至少可以通过使用正确的声道来修复音质。

也许这个问题有更优雅的解决方案,但这对我来说有效。

相关内容