Проблемы с SPDIF-выходом на Creative X-Fi Titanium (SB0880)

Вопросы, на которые не получается найти ответ в Arch wiki или на форуме
Ответить
Maykro
Сообщения: 2
Зарегистрирован: 26.06.2025

#

Здравствуйте. На моем домашнем компе используется звуковая карта Creative PCI Express X-Fi Titanium (SB0880). Мне нужен только цифровой SPDIF-выход в режиме стерео, он используется для передачи сигнала на Bluetooth-передатчик BT-B21, который затем передаёт звук на наушники по Bluetooth.

В Windows 11 карта работает корректно со стандартными драйверами - звук чистый, без искажений.

Но в Arch возникают следующие проблемы:
- При воспроизведении звука через цифровой SPDIF-выход - звук либо искажён и прерывается, либо вообще не воспроизводится (тишина).
- При воспроизведении через аналоговый выход этой же карты - звук чистый, воспроизводится корректно.
- Проверка с aplay показала, что аналог работает нормально, а SPDIF - тишина.

Есть ли способ добиться корректного вывода по SPDIF на этой карте в Arch Linux?
Cкрытый текст
Изображение
lspci -k -nn -d ::0403
07:00.0 Audio device [0403]: Creative Labs EMU20k2 [Sound Blaster X-Fi Titanium Series] [1102:000b] (rev 04)
        Subsystem: Creative Labs Device [1102:0042]
        Kernel driver in use: snd_ctxfi
        Kernel modules: snd_ctxfi
_________________________________________________________________________

pactl info | grep "Server Name"
Server Name: PulseAudio (on PipeWire 1.4.5)
_________________________________________________________________________

ps aux | grep -E 'pipewire|pulse|alsa|jack'
maykro       786  0.0  0.0 111148 23680 ?        S<sl 08:17   0:01 /usr/bin/pipewire
maykro       789  0.0  0.1 193240 33160 ?        S<sl 08:17   0:01 /usr/bin/pipewire-pulse
maykro     27472  0.0  0.0   6736  4332 pts/1    S+   11:17   0:00 grep --color=auto -E pipewire|pulse|alsa|jack
_________________________________________________________________________

aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: XFi [Creative X-Fi], device 0: ctxfi [Front/WaveIn]
  Subdevices: 256/256
  Subdevice #0: subdevice #0
  ...
  Subdevice #255: subdevice #255
card 0: XFi [Creative X-Fi], device 1: ctxfi [Surround]
  Subdevices: 256/256
  Subdevice #0: subdevice #0
  ...
  Subdevice #255: subdevice #255
card 0: XFi [Creative X-Fi], device 2: ctxfi [Center/LFE]
  Subdevices: 256/256
  Subdevice #0: subdevice #0
  ...
  Subdevice #255: subdevice #255
card 0: XFi [Creative X-Fi], device 3: ctxfi [Side]
  Subdevices: 256/256
  Subdevice #0: subdevice #0
  ...
  Subdevice #255: subdevice #255
card 0: XFi [Creative X-Fi], device 4: ctxfi [IEC958 Non-audio]       <-----------------------------
  Subdevices: 1/1
  Subdevice #0: subdevice #0
_________________________________________________________________________

aplay -L
sysdefault:CARD=XFi
    Creative X-Fi, Front/WaveIn
    Default Audio Device
front:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    Front output / input
rear:CARD=XFi,DEV=0
    Creative X-Fi, Surround
    Rear speakers
center_lfe:CARD=XFi,DEV=0
    Creative X-Fi, Center/LFE
    Center and Subwoofer speakers
side:CARD=XFi,DEV=0
    Creative X-Fi, Side
    Side speakers
surround21:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    2.1 Surround output to Front and Subwoofer speakers
surround40:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    4.0 Surround output to Front and Rear speakers
surround41:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=XFi,DEV=0
    Creative X-Fi, Front/WaveIn
    7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=XFi,DEV=0                                                 <---------------------------
    Creative X-Fi, IEC958 Non-audio
    IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=XFi
    Creative X-Fi
    USB Stream Output
_________________________________________________________________________
(убрал: nvidia hdmi, usb sound card, motherboard sound card)
_________________________________________________________________________

lsmod | grep '^snd'
snd_seq_dummy          12288  0
snd_hrtimer            12288  1
snd_seq               135168  7 snd_seq_dummy
snd_hda_codec_realtek   221184  1
snd_hda_codec_generic   114688  1 snd_hda_codec_realtek
snd_hda_scodec_component    20480  1 snd_hda_codec_realtek
snd_hda_codec_hdmi     90112  1
snd_hda_intel          69632  2
snd_usb_audio         573440  1
snd_intel_dspcfg       40960  1 snd_hda_intel
snd_intel_sdw_acpi     16384  1 snd_intel_dspcfg
snd_usbmidi_lib        49152  1 snd_usb_audio
snd_hda_codec         217088  4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_ump                40960  1 snd_usb_audio
snd_hda_core          143360  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_rawmidi            53248  2 snd_usbmidi_lib,snd_ump
snd_ctxfi             196608  1
snd_seq_device         16384  3 snd_seq,snd_ump,snd_rawmidi
snd_hwdep              24576  2 snd_usb_audio,snd_hda_codec
snd_pcm               212992  6 snd_ctxfi,snd_hda_codec_hdmi,snd_hda_intel,snd_usb_audio,snd_hda_codec,snd_hda_core
snd_timer              57344  3 snd_seq,snd_hrtimer,snd_pcm
snd                   155648  25 snd_hda_codec_generic,snd_ctxfi,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_usb_audio,snd_usbmidi_lib,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_ump,snd_pcm,snd_rawmidi

_________________________________________________________________________

aplay -D hw:0,4 -r 44100 1.wav
Playing WAVE '1.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo      <-------------------------------------  ТИШИНА
_________________________________________________________________________

aplay -D hw:0,0 1.wav
Playing WAVE '1.wav' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo    <-------------------------------------  OK (аналоговый выход на jack наушников)
_________________________________________________________________________

speaker-test -D iec958:XFi -c 2 -r 44100
speaker-test 1.2.14
Playback device is iec958:XFi
Stream parameters are 44100Hz, S16_LE, 2 channels
Using 16 octaves of pink noise
Rate set to 44100Hz (requested 44100Hz)
Buffer size range from 256 to 32768
Period size range from 16 to 16384
Periods = 4
was set period_size = 11025
was set buffer_size = 22050
 0 - Front Left                   <-------------------------------------  Искажения
...
vasek
Сообщения: 516
Зарегистрирован: 31.08.2022

#

ArchWiki
/etc/pulse/daemon.conf
avoid-resampling = yes
default-sample-rate = 48000

SPDIF нужно 48000 .... а по дефолту 44100 --- по этому потрескивание/искажение

Ошибки не исчезают с опытом - они просто умнеют

Maykro
Сообщения: 2
Зарегистрирован: 26.06.2025

#

На сколько я понимаю это config для pulseaudio, а у меня установлен pipewire-pulse. "By default PipeWire sets a fixed global sample rate of 48kHz".
Дополнительно попробовал в ~/.config/pipewire/piperwire.conf прописать
context.properties = {
default.clock.rate = 48000
}
Без изменений. Если через mpv запускать wav файлы, то слышно, что под слоем писка и шипения есть еле-слышимый оригинальный звук. Через aplay при 48000 hz ситуация аналогичная.
Ответить