我想在命令行上将程序的音频输出重定向到文件,例如
$ redirect-wrapper file.wav my-program
Run Code Online (Sandbox Code Playgroud)
以便
有没有办法做到这一点?这个相关的问题没有帮助,我需要一个命令行解决方案,没有“点击那里,然后在那里”。这大概也是相关的,但也依赖于图形应用程序pavucontrol。我找到了 pavucontrol 的终端替代品 pacmd。
但这仍然只能使以下妥协成为可能:
pacmd list-sinks
pacmd set-default-sink
。pacmd list-sink-inputs | grep name-of-my-program
如果找到了一些东西,输入是打开的。pacmd set-default-sink
.但这仍然会在长达几分钟的时间跨度内更改默认接收器(接收器输入通常不会打开,直到程序实际播放不需要在启动后立即播放的声音)。我实现了这个妥协;GitHub。
仍在寻找不妥协的答案。
在某些程序中,可以将音频输出音量设置为 100% 以上。它似乎得到了 Pulseaudio 的支持,达到了荒谬的数量。我该如何解决这个问题,所以 100% 是绝对限制?
理由:超过 100% 是愚蠢的,完全破坏声音(除非您的音频存在其他严重问题,您正在尝试以这种方式修复{不要这样做})并且最近它设置得太高,甚至在开机时间。
相关:设置最大音量甚至低于 100%(目前没有答案)并将音量设置得更高。
所以我的 sshfs 挂载有权限问题:
root@server01:/mnt# sshfs -o uid=$(id -u www-data) -o gid=$(id -g www-data) user@host:/path mountpoint
root@server01:/mnt# ls -Zlah
total 12K
drwxr-xr-x 3 root root ? 4.0K Nov 29 20:00 .
drwxr-xr-x 23 root 1001 ? 4.0K Nov 29 13:03 ..
drwxrwxrwx 1 www-data www-data ? 4.0K Nov 29 18:53 mountpoint
root@server01:/mnt# getfacl mountpoint/
# file: mountpoint/
# owner: www-data
# group: www-data
user::rwx
group::rwx
other::rwx
root@server01:/mnt# sudo -u www-data ls -lah
ls: cannot access mountpoint: Permission denied
total 8.0K
drwxr-xr-x …
Run Code Online (Sandbox Code Playgroud)