Issue :数字输入没有声音S/PDIF / IEC958。
Device /软件: USB外部声卡: CM106 -Ubuntu20.04LTS- GUI :Gnome-闪回
Config音频: FreeBox播放器(法国互联网电视提供商)-数字输出S/PDIF ===>声卡-数字输入S/PDIF
FreeBox播放器配置:主音输出S/PDIF,有无通
数字输入iec958在图形控制或脉冲命令行应答中可见。但是声音计(呜呜计)仍然是空的,没有声音,没有信号。
我没有任何其他声音设备检查FreeBox球员S/PDIF输出。
是否有任何文件,我可以检查,在/sys,/proc或/dev,看看是否有任何数字信号/数据?
iec958输入是可见的,但没有声音/信号?为什么?
有什么特别的事情可以让它发挥作用吗。
如何解决此问题?从哪里开始?什么步骤?
它使很多周末,我试着修复它,阅读论坛,我不记得所有我试过的细节在这里。我会回答你关于这个疑难解答的问题。
谢谢你的帮助。
发布于 2022-05-31 15:28:20
如果您在pavucontrol中看到一个输入级别,那么您的卡将接收到输出,您应该能够记录它。
根据我的经验,除了设置恒定的记录/回放之外,没有办法获得脉冲音频来配置您的卡来传递这条线。
您可能可以使用amixer更改此选项,但这是非常特定于卡的,而且您的卡可能根本无法做到这一点,因此您可能有一个常量(cpu消耗)的回送解决方案。
如果您的问题是您没有看到输入上的任何内容,那么您将需要配置您的卡:在pavucontrol中,将配置下的配置文件更改为包含“数字立体声(IEC958)输入”的内容。
更新:
我已经对我的CM106设备进行了实验,我认为linux驱动程序不支持将spdif混合到输出中。
但是,根据数据表(http://www.steila.com/usb4io/CMedia/CM106--L_F-Datasheet-1.3.pdf),该卡确实支持它,实际上,有些实验允许我将一个值写入寄存器1,从而启用SPDIFMIX (hidraw1是与usb声卡相对应的hidraw设备,插入时检查dmesg ):
perl -e 'print pack "H*", "002001b001"' >/dev/hidraw1这将寄存器设置为启用电源的默认值(00b0) +启用SPDIFMIX (01b0) (在小endian中)。
下面的shell skript攻击设置了每个"USB声音设备“上的位--如果与错误的卡一起使用可能会很危险:
#!/bin/sh
cd /sys/class/hidraw || exit
for dev in *; do
set "$dev"/device/input/*/name
read name <"$1"
if [ "$name" = "USB Sound Device" ]; then
echo "enabling SPDIFMIX on $dev"
printf "\000\040\001\260\001" >/dev/"$dev"
fi
donehttps://unix.stackexchange.com/questions/677207
复制相似问题