Il s'agit d'un vieux message mais j'espère qu'il pourra aider certaines personnes. J'ai mis un certain temps à bidouiller ce casque pour obtenir un son correct. Je ne suis pas un expert en alsa ou en pulse-audio.
Ce qui suit est fait sur Fedora Linux 33 mais est probablement pertinent pour les utilisateurs d'Ubuntu aussi.
Ce casque possède un canal pour le chat vocal (basse qualité) et un canal pour l'audio normal. En branchant ce casque, seul le son de basse qualité est disponible pour pulse-audio. Ceci peut être vérifié en jouant de l'audio et en tournant la roue du volume sur le contrôleur du cordon USB. Le changement de volume ne fonctionne qu'en utilisant la molette du canal vocal.
Vous pouvez voir la faible taille de l'échantillon :
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
Si je regarde les différents flux dans /proc/asound/card0 (mes écouteurs sont sur la carte0, les vôtres peuvent varier), je peux voir que le flux0 est à 16000Hz et que le flux1 est le flux de qualité sonore appropriée :
[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
C'est une bonne nouvelle et cela signifie probablement qu'il n'y a pas de problème de pilote mais que quelque chose dans l'espace utilisateur ne sélectionne pas le bon flux de sortie.
En utilisant la commande aplay, j'ai découvert que ma carte a deux périphériques. Je suppose que le flux 1 se trouve sur le second périphérique (périphérique 1) qui, dans ALSA, est appelé 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
J'ai vérifié la qualité sur cet appareil en ouvrant VLC avec ce périphérique de sortie spécifique. Lancez VLC et lisez un fichier audio
vlc --aout alsa --alsa-audio-device hw:0,1
Après avoir vérifié que la qualité du son est maintenant ce qu'elle est censée être, je crée un puits dans Pulse-audio en utilisant le dispositif ALSA.
pactl load-module module-alsa-sink device=hw:0,1
Dans GNOME, je peux maintenant voir un nouveau périphérique audio appelé "Turtle Beach Z60 Game Audio". En l'utilisant comme périphérique de sortie, la qualité du son est excellente. Vous pouvez vérifier que le canal droit est utilisé en tournant la molette de volume sur le contrôleur du cordon USB. Il devrait réagir à la roue de volume normale au lieu de la roue de voix.
Vous pouvez rendre le changement de pulse-audio permanent en ajoutant cette ligne à /etc/pulse/default.pa
load-module module-alsa-sink device=hw:0,1
L'énumération des puits dans pulse-audio montre maintenant la bonne taille d'échantillon pour le puits.
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
Notez qu'il ne montre que deux canaux, pas de surround. Il s'agit probablement d'un réglage qui peut être effectué quelque part, mais je ne suis pas intéressé par le son surround. Cela corrige au moins la qualité du son en utilisant le canal droit.
Il existe peut-être une solution plus élégante à ce problème, mais celle-ci fonctionne pour moi.