gpt4 book ai didi

linux - 如何使用 PulseAudio 从音频输出重定向到麦克风输入?

转载 作者:IT王子 更新时间:2023-10-29 00:25:50 25 4
gpt4 key购买 nike

我正在为 Maemo/MeeGo 开发移动应用程序,Maemo 使用 PulseAudio。我想给来电者播放 mp3(并在播放时取消麦克风,而不是听来电者,一切都应该在后台完成),为此,我必须从某个(如果不可能,所有)重定向音频输出) 应用程序,将其伪造为输入并让电话应用程序使用它。

在我的 Ubuntu PC 上,我使用 pavucontrol 完成了它。我创建了一个 NULL 接收器,然后:

Audio Output (from Amarok) --> to NULL Output 
Skype Input <-- NULL Output
Skype Output --> NULL

它成功了,Amarok 播放了音乐,它正在流式传输到 Skype,但没有播放给我听,我没有听到任何关于所有过程的声音。问题是;a) Maemo 没有 pavucontrol。b) 即使它确实存在(或者如果我将其打包)也不会有任何好处,因为它是一个纯 GUI 应用程序,而且我必须在后台执行所有这些操作,而无需任何用户输入。 (意思是:CLI 或 API)

在 Freenode #pulseaudio 上被问到这个问题时,一个乐于助人的人说“这几乎可以通过 pactl 或 pacmd 完成,你想要的命令是 move-sink-input 和 move-source-output,但你需要知道设备和流索引。”所以看起来 pavucontrol 只是一个 GUI,pactl 和 pacmd 才是真正的交易,最重要的是,它们是 CLI 应用程序。

我真的很感谢他,但我对“pactl”、“pacmd”、“move-sink-input”或“device/stream indexes”一无所知,所以我需要一个非常简化的手册页,或者类似应用程序的来源,一个单行命令(两个?整页命令?,把它们给我!^^)或者有足够耐心向我解释这些东西的人。

最佳答案

pactlpacmd 的手册很容易找到,如果你搜索一下。我在这里找到了它们:

pactl

pacmd (pulse-cli-syntax)

我认为您对 pactl 手册中的以下摘录感兴趣:

move-sink-input ID SINK : Move the specified playback stream (identified by its numerical index) to the specified sink (identified by its symbolic name or numerical index).

您应该能够使用 pactl list sink-inputspactl list source-outputspactl list sinks pactl list sources 结合一些 grep 和/或 sed 或类似性质的东西以编程方式确定正确的流和接收器。

关于linux - 如何使用 PulseAudio 从音频输出重定向到麦克风输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4719160/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com