Как перенаправить с аудиовыхода на микрофонный вход с помощью PulseAudio?

Я работаю над мобильным приложением для Maemo / MeeGo, а Maemo использует PulseAudio . Я хочу проиграть mp3 вызывающему абоненту (и отключить микрофон при этом, а не слушать звонящего, все должно быть сделано в фоновом режиме), для этого мне нужно перенаправить аудиовыход из определенного (если невозможно, всего) приложения, подделать его как вход и заставить приложение телефона использовать его.

На моем ПК с Ubuntu я сделал это с помощью pavucontrol. Я создал приемник NULL, затем:

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

И это сработало, Amarok воспроизводил музыку, и она передавалась в Skype, не воспроизводя ее мне, и я ничего не слышал обо всем процессе. Проблема в том; а) Maemo не имеет pavucontrol. б) Даже если бы это было (или если бы я его упакую), это не было бы ничего хорошего, поскольку это приложение только с графическим интерфейсом, и я должен делать все это в фоновом режиме, без какого-либо пользовательского ввода. (имеется в виду: CLI или API)

На вопрос об этом на Freenode #pulseaudio, один услужливый парень ответил: «Это можно сделать с помощью pactl или pacmd, вам нужны команды move-loading-input и move-source-output. , но вам нужно знать индексы устройства и потока ". Итак, похоже, что pavucontrol - это просто графический интерфейс, pactl и pacmd - настоящая сделка, и, что наиболее важно, это приложения CLI.

Я ему очень благодарен, но я ничего не знаю о pactl, «pacmd», «перемещение-приемник-ввод» или «индексы устройства / потока», поэтому мне нужна очень упрощенная справочная страница или источник аналогичного приложения, однострочная команда (две? целая страница команд ?, просто отдай их мне! ^^) или кто-нибудь, у кого хватит терпения объяснить мне это.

14
задан Yekta Leblebici 17 January 2011 в 23:45
поделиться