Pregunta

Estoy trabajando en una aplicación móvil para Maemo / MeeGo y Maemo utiliza PulseAudio. Quiero jugar un mp3 a la persona que llama (y cancelar el micrófono al hacerlo, y no escuchar llamadas, todo debe ser hecho en el fondo), para hacer esto, tengo que redirigir la salida de audio a partir de un cierto (si no es posible, toda ) aplicación, fingir como una entrada y realice aplicación Teléfono usarlo.

En mi PC Ubuntu, lo hice con pavucontrol. He creado un fregadero NULL, entonces:

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

Y funcionó, Amarok tocaba la música y fue transmitiendo a Skype, sin jugar a mí y no he oído nada acerca de todos los procesos. El problema es; a) Maemo no tiene pavucontrol. b) incluso si lo hiciera (o si tengo que embalar la) No sería nada bueno, ya que es una aplicación única en GUI y tengo que hacer todas estas cosas en el fondo, sin ninguna intervención del usuario. (Media: CLI o API)

Cuando se le preguntó acerca de esto en Freenode #pulseaudio y un tipo dijo útiles "Puede más o menos puede hacer a través pactl o pacmd, los comandos que desee mover son disipador-entrada y movimiento de código-producto, pero hay que saber dispositivo y los índices de flujo ". Así que parece que pavucontrol es sólo una interfaz gráfica de usuario, y pactl pacmd son el verdadero negocio, y lo más importante, son aplicaciones de la CLI.

Estoy muy agradecido con él, pero no sé nada acerca de "pactl", "pacmd", "mover-disipador de entrada" o "índices dispositivo / Stream", así que necesito una página manual muy simplificada, o una fuente de aplicación similar, un comando de una sola línea (dos? página entera de comandos ?, dame ellos! ^^) o alguien con la suficiente paciencia para explicar estas cosas a mí.

¿Fue útil?

Solución

Los manuales de pactl y pacmd están disponibles si le dan una búsqueda. Los encontré aquí:

pactl

pacmd (pulso-cli-sintaxis)

creo que está interesado en el siguiente extracto del manual de pactl:

movimiento del disipador de entrada de ID SINK: Mover el flujo de reproducción especificado (identificado por su índice numérico) al disipador especificada (identificado por su nombre simbólico o índice numérico).

debería ser capaz de utilizar pactl list sink-inputs, pactl list source-outputs, pactl list sinks y pactl list sources combinado con un poco de grep y / o sed o algo de esa naturaleza para determinar mediante programación la corriente y el fregadero correcta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top