在我的 Ubuntu 16.04 上,每次重启后运行时tvtime
声音都不起作用。我发现这是因为它改变了此列表中音效板的顺序:
$ cat / proc / asound / cards
0 [HDMI ]: HDA-Intel - HDA Intel HDMI
HDA Intel HDMI at 0xf7b14000 irq 33
1 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xf7b10000 irq 32
2 [NVidia ]: HDA-Intel - HDA NVidia
HDA NVidia at 0xf7080000 irq 17
3 [Camera ]: USB-Audio - USB2.0 Camera
AVEO Technology Corp. USB2.0 Camera at usb-0000:00:14.0-4, high speed
我使用的是 1(PCH),问题是下次重启时它会改变顺序,能够为 2,所以我需要修改配置文件。
在配置文件 .tvtime.xml 中我必须修改的行是:
<option name = "MixerDevice" value = "hw: 1 / Line" />
将 1 更改为其所属的数字。
有没有办法编写一个脚本来自动完成这些操作?
我希望我的英语不是太差并且能被理解。
非常感谢。
答案1
我已经创建了一个脚本,它在 Ubuntu 18.04 上对我来说运行良好。它可能会为遇到同样不便的人提供帮助。是这样的:
/bin/sh #!/bin/sh 复制代码 # 首先需要 $ sudo apt install libxml2-utils v4l-utils 档案=“~/.tvtime/tvtime.xml” # TODO:接下来使用这个命令可以发出声音。看看我是如何做到的 pactl 加载模块模块环回 # 确定声音的来源 CanalDeSonidoNro=$(cat /proc/asound/cards|grep "HDA-Intel - HDA Intel PCH"|awk'{打印$1}') # 视频确定栏 对于 /dev/video 中的 d* 做 结果=$(v4l2-ctl --device=$d --info| grep -c -i "Encore ENLTV") 如果 [ $Resultado = 1 ] ; 那么 PlacaVideoNro=$d 菲 完毕 # 萨利达 回声广场和$CanalDeSonidoNro echo 视频广场 es $PlacaVideoNro #基多最后一条线 sed -i '$d' ~/.tvtime/tvtime.xml # sed -i '/MixerDevice/d' ~/.tvtime/tvtime.xml 回显''>>~/.tvtime/tvtime.xml # sed -i '/V4LDevice/d' ~/.tvtime/tvtime.xml 回显''>>~/.tvtime/tvtime.xml # 收集水果 回声“”>>〜/.tvtime/tvtime.xml # amixer -c 0 设置线路取消静音 电视时间 # amixer -c 0 设置线路静音