IEC958 (S/PDIF) 不工作

IEC958 (S/PDIF) 不工作

我无法让 IEC958 输出工作。光纤线通过我的声卡物理连接到有源 192KHz DAC:

ツ sudo lspci |grep -i audio 00:1b.0 Audio device: Intel Corporation 7 Series/C216 Chipset Family High Definition Audio Controller (rev 04)

我检测到了多个设备:

设备

当我选择第一个“HDMI / DisplayPort 2 - 内置音频”时,声音从显示器的内置扬声器中传出。

当我选择第二个“线路输出 - 内置音频”时,声音从我直接连接到声卡的耳机插孔中传出。

我确实知道 DAC 可以工作,因为两天前我还在 Archlinux 上使用它,物理设置没有任何变化。

一切似乎都设置正确pavucontrol

配置。同样,如果我选择 HDMI 或 Line Out,我就能听到声音。只是 S/PDIF 不行: 配置 输入设备包括一个显示器(正确吗?) 输入 输出设备在体积计上显示弹跳条: 输出

声卡是我主板的组成部分。更多诊断信息:

ツ aplay -l
**** 播放硬件设备列表 ****
卡 1:PCH [HDA Intel PCH],设备 0:ALC892 Analog [ALC892 Analog]
  子设备:1/1
  子设备 #0: 子设备 #0
卡 1:PCH [HDA Intel PCH],设备 1:ALC892 Digital [ALC892 Digital]
  子设备:0/1
  子设备 #0: 子设备 #0
卡 1:PCH [HDA Intel PCH],设备 3:HDMI 0 [HDMI 0]
  子设备:1/1
  子设备 #0: 子设备 #0
卡 1:PCH [HDA Intel PCH],设备 7:HDMI 1 [HDMI 1]
  子设备:1/1
  子设备 #0: 子设备 #0
ツ pacmd 列表卡
有 1 张卡可用。
    索引:0
    姓名:
    司机:
    所有者模块:7
    特性:
        alsa.card = "1"
        alsa.card_name = “HDA 英特尔 PCH”
        alsa.long_card_name = “HDA Intel PCH 位于 0xf7d30000 irq 46”
        alsa.driver_name = “snd_hda_intel”
        设备.总线路径 = “pci-0000:00:1b.0”
        sysfs.path = “/devices/pci0000:00/0000:00:1b.0/sound/card1”
        设备.总线 = “pci”
        设备.供应商.id =“8086”
        设备.供应商.名称 = “英特尔公司”
        设备.产品.id =“1e20”
        device.product.name = “7 系列/C216 芯片组系列高清晰度音频控制器”
        设备.form_factor =“内部”
        设备.string =“1”
        device.description = "内置音频"
        模块-udev-detect.discovered =“1”
        设备.icon_name =“音频卡-pci”
    简介:
        输入:模拟立体声:模拟立体声输入(优先级 65,可用:否)
        输出:模拟立体声:模拟立体声输出(优先级 6500,可用:未知)
        输出:模拟立体声+输入:模拟立体声:模拟立体声双工(优先级 6565,可用:未知)
        输出:analog-surround-21:模拟环绕 2.1 输出(优先级 1300,可用:未知)
        输出:模拟环绕声-21+输入:模拟立体声:模拟环绕声 2.1 输出 + 模拟立体声输入(优先级 1365,可用:未知)
        输出:analog-surround-40:模拟环绕 4.0 输出(优先级 1200,可用:未知)
        输出:analog-surround-40+输入:analog-stereo:模拟环绕 4.0 输出 + 模拟立体声输入(优先级 1265,可用:未知)
        输出:analog-surround-41:模拟环绕 4.1 输出(优先级 1300,可用:未知)
        输出:analog-surround-41+输入:analog-stereo:模拟环绕 4.1 输出 + 模拟立体声输入(优先级 1365,可用:未知)
        输出:analog-surround-50:模拟环绕 5.0 输出(优先级 1200,可用:未知)
        输出:模拟环绕 50+输入:模拟立体声:模拟环绕 5.0 输出 + 模拟立体声输入(优先级 1265,可用:未知)
        输出:analog-surround-51:模拟环绕 5.1 输出(优先级 1300,可用:未知)
        输出:analog-surround-51+输入:analog-stereo:模拟环绕 5.1 输出 + 模拟立体声输入(优先级 1365,可用:未知)
        输出:analog-surround-71:模拟环绕 7.1 输出(优先级 1200,可用:未知)
        输出:analog-surround-71+输入:analog-stereo:模拟环绕 7.1 输出 + 模拟立体声输入(优先级 1265,可用:未知)
        输出:iec958-stereo:数字立体声(IEC958)输出(优先级 5500,可用:未知)
        输出:iec958-立体声+输入:模拟立体声:数字立体声(IEC958)输出+模拟立体声输入(优先级 5565,可用:未知)
        输出:hdmi-stereo:数字立体声(HDMI)输出(优先级 5900,可用:否)
        输出:hdmi 立体声 + 输入:模拟立体声:数字立体声 (HDMI) 输出 + 模拟立体声输入(优先级 5965,可用:否)
        输出:hdmi-surround:数字环绕 5.1(HDMI)输出(优先级 800,可用:否)
        输出:hdmi-surround+输入:analog-stereo:数字环绕 5.1 (HDMI) 输出 + 模拟立体声输入(优先级 865,可用:否)
        输出:hdmi-surround71:数字环绕 7.1 (HDMI) 输出(优先级 800,可用:否)
        输出:hdmi-surround71+输入:analog-stereo:数字环绕 7.1(HDMI)输出 + 模拟立体声输入(优先级 865,可用:否)
        输出:hdmi-stereo-extra1:数字立体声(HDMI 2)输出(优先级 5700,可用:未知)
        输出:hdmi-stereo-extra1+输入:analog-stereo:数字立体声(HDMI 2)输出+模拟立体声输入(优先级 5765,可用:未知)
        off:关闭(优先级0,可用:未知)
    活跃个人资料:
    接收器:
        alsa_output.pci-0000_00_1b.0.iec958-stereo/#59:内置音频数字立体声 (IEC958)
    来源:
        alsa_output.pci-0000_00_1b.0.iec958-stereo.monitor/#59:内置音频数字立体声监视器(IEC958)
    端口:
        模拟输入前置麦克风:前置麦克风(优先级 8500,延迟偏移 0 微秒,可用:否)
            特性:
                device.icon_name =“音频输入麦克风”
        模拟输入后置麦克风:后置麦克风(优先级 8200,延迟偏移 0 微秒,可用:否)
            特性:
                device.icon_name =“音频输入麦克风”
        模拟输入线路输入:线路输入(优先级 8100,延迟偏移 0 微秒,可用:否)
            特性:

        模拟输出线路输出:线路输出(优先级 9900,延迟偏移 0 微秒,可用:是)
            特性:

        模拟输出耳机:耳机(优先级 9000,延迟偏移 0 微秒,可用:否)
            特性:
                device.icon_name =“音频耳机”
        iec958-立体声输出:数字输出(S/PDIF)(优先级 0,延迟偏移 0 微秒,可用:未知)
            特性:

        hdmi-output-0:HDMI/DisplayPort(优先级 5900,延迟偏移 0 微秒,可用:否)
            特性:
                设备.icon_name =“视频显示”
        hdmi-output-1:HDMI / DisplayPort 2(优先级 5800,延迟偏移 0 微秒,可用:是)
            特性:
                设备.icon_name =“视频显示”
                设备.产品.名称 = “VX2770 系列”
ツ pacmd list-sinks
有 1 个水槽可用。
  * 索引:59
    姓名:
    司机:
    标志:硬件 HW_MUTE_CTRL DECIBEL_VOLUME LATENCY DYNAMIC_LATENCY
    状态:正在运行
    暂停原因:(无)
    优先级:9038
    音量:前左:65536 / 100% / 0.00 dB,前右:65536 / 100% / 0.00 dB
            余额 0.00
    基本音量:65536 / 100% / 0.00 dB
    音量步数:65537
    静音:否
    当前延迟:7.67 毫秒
    最大请求:1 KiB
    最大倒退:1 KiB
    监测来源:59
    样品规格:s16le 2ch 44100Hz
    通道图:前左、前右
                 立体声
    使用者:3
    链接数:3
    配置延迟:8.00 毫秒;范围是 8.00 .. 371.52 毫秒
    卡:0
    模块:7
    特性:
        alsa.分辨率位 = “16”
        设备.api =“alsa”
        设备.class =“声音”
        alsa.class =“通用”
        alsa.子类 = “通用混合”
        alsa.name =“ALC892 数字”
        alsa.id =“ALC892 数字”
        alsa.子设备 = “0”
        alsa.subdevice_name = "子设备#0"
        alsa.设备 = “1”
        alsa.card = "1"
        alsa.card_name = “HDA 英特尔 PCH”
        alsa.long_card_name = “HDA Intel PCH 位于 0xf7d30000 irq 46”
        alsa.driver_name = “snd_hda_intel”
        设备.总线路径 = “pci-0000:00:1b.0”
        sysfs.path = “/devices/pci0000:00/0000:00:1b.0/sound/card1”
        设备.总线 = “pci”
        设备.供应商.id =“8086”
        设备.供应商.名称 = “英特尔公司”
        设备.产品.id =“1e20”
        device.product.name = “7 系列/C216 芯片组系列高清晰度音频控制器”
        设备.form_factor =“内部”
        设备.string =“iec958:1”
        设备.缓冲.缓冲区大小 = “65536”
        设备.缓冲.fragment_size =“32768”
        设备.access_mode =“mmap +计时器”
        设备.配置文件.名称 = “iec958-立体声”
        device.profile.description = "数字立体声 (IEC958)"
        device.description = "内置音频数字立体声 (IEC958)"
        alsa.mixer_name =“Realtek ALC892”
        alsa.组件 = “HDA:10ec0892,104384fb,00100302 HDA:80862806,80860101,00100000”
        模块-udev-detect.discovered =“1”
        设备.icon_name =“音频卡-pci”
    端口:
        iec958-立体声输出:数字输出(S/PDIF)(优先级 0,延迟偏移 0 微秒,可用:未知)
            特性:

    活动端口:
ツ cat /etc/modprobe.d/alsa-base.conf     
# 自动加载器别名
安装声音槽-0 /sbin/modprobe snd-card-0
安装声音槽 1 /sbin/modprobe snd-card-1
安装声音槽-2 /sbin/modprobe snd-card-2
安装声音槽 3 /sbin/modprobe snd-card-3
安装声音槽 4 /sbin/modprobe snd-card-4
安装声音槽-5 /sbin/modprobe snd-card-5
安装声音槽-6 /sbin/modprobe snd-card-6
安装声音槽-7 /sbin/modprobe snd-card-7

# 使可选模块在通用模块之上加载
安装 snd /sbin/modprobe --ignore-install snd $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-ioctl32 ; /sbin/modprobe --quiet --use-blacklist snd-seq ; }
#
# 解决错误 #499695(在 Ubuntu 中恢复,参见 LP #319505)
安装 snd-pcm /sbin/modprobe --ignore-install snd-pcm $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-pcm-oss ; : ; }
安装 snd-mixer /sbin/modprobe --ignore-install snd-mixer $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-mixer-oss ; : ; }
安装 snd-seq /sbin/modprobe --ignore-install snd-seq $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; /sbin/modprobe --quiet --use-blacklist snd-seq-oss ; : ; }
#
安装 snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq-midi ; : ; }
# 使可选模块加载于声卡驱动模块之上
安装 snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-emu10k1-synth ; }
安装 snd-via82xx /sbin/modprobe --ignore-install snd-via82xx $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist snd-seq ; }

# 加载 saa7134-alsa 而不是 saa7134(无论如何它都会被拖进来)
安装 saa7134 /sbin/modprobe --ignore-install saa7134 $CMDLINE_OPTS && { /sbin/modprobe --quiet --use-blacklist saa7134-alsa ; : ; }
# 防止异常驱动程序抢占索引 0
选项 bt87x 索引=-2
选项 cx88_alsa 索引=-2
选项 saa7134-alsa 索引=-2
选项 snd-atiixp-modem 索引=-2
选项 snd-intel8x0m 索引=-2
选项 snd-via82xx-modem 索引=-2
选项 snd-usb-audio index=-2
选项 snd-usb-caiaq 索引=-2
选项 snd-usb-ua101 索引=-2
选项 snd-usb-us122l 索引=-2
选项 snd-usb-usx2y 索引=-2
# Ubuntu #62691,为 snd-cmipci 启用 MPU
选项 snd-cmipci mpu_port=0x330 fm_port=0x388
# 防止 snd-pcsp 被加载为第一个声卡
选项 snd-pcsp 索引=-2
# 阻止 snd-usb-audio 作为第一个声卡加载
选项 snd-usb-audio index=-2

选项 snd-hda-intel 索引=1
ツ iecset 音频开启
snd_ctl_open:没有该文件或目录
ツ lsmod|grep snd
snd_hda_codec_hdmi 49152 1
snd_hda_codec_realtek 106496 1
snd_hda_codec_generic 73728 1 snd_hda_codec_realtek
snd_hda_intel 40960 4
snd_hda_codec 126976 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek
snd_hda_core 81920 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek
snd_hwdep 20480 1 snd_hda_codec
snd_pcm 98304 5 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_core
snd_seq_midi 16384 0
snd_seq_midi_event 16384 1 snd_seq_midi
snd_rawmidi 32768 1 snd_seq_midi
snd_seq 65536 2 snd_seq_midi,snd_seq_midi_event
snd_seq_device 16384 3 snd_seq,snd_seq_midi,snd_rawmidi
snd_timer 32768 2 snd_seq,snd_pcm
snd 81920 18 snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_pcm,snd_rawmidi

笔记:我已经完成了这里的大部分步骤,https://help.ubuntu.com/community/SoundTroubleshootingProcedure,我进行了广泛的搜索,昨天花了几个小时。我很困惑,作为最后的手段,我在这里发帖。

答案1

答案其实很简单,它没有包含在默认的 gnome 音频控制面板中,这很愚蠢。

步骤1:

sudo apt install libavresample-dev pavucontrol libasound2-plugins-extra

第2步:

pavucontrol

步骤3:

勾选高级音频编解码器的所有框

步骤4:

通过 S/PDIF 输出(光纤或同轴)到支持该输出的扬声器组,享受令人惊叹的声音。 在此处输入图片描述

相关内容