técnicas de depuración PulseAudio

Los recursos de red

  1. pulseaudio Solución de problemas https://wiki.archlinux.org/index.php/PulseAudio/Troubleshooting aquí es un fracaso y las posibles soluciones PulseAudio, como el sonido roto, etc., se puede referir a.
    (Nota Arch Linux: Este sitio puede marcar primero, hay una gran cantidad de otros conocimientos, como Bluetooth, wifi, red, auriculares Bluetooth, pulseaudio cómo configurar los auriculares Bluetooth, se puede aprender)

  2. Introducción pulseaudio marco de código, módulos, componentes, etc. de la base, no puede ser un sistema en los servicios cognitivos PulseAudio y la fuente de cliente https://gavv.github.io/articles/pulseaudio-under-the-hood/ # sobre-pulseaudio

  3. Este hombre es ahora los defensores de la fuente de pulseaudio: puede enfocar la próxima https://www.patreon.com/tanuk

  4. ruta de perfil pulseaudio: / etc / pulso /
    4 archivo de configuración se describe la configuración específica: https://wiki.archlinux.org/index.php/PulseAudio/Configuration

arquitectura de flujo de corriente de la figura pulseaudio

gráfico

fregadero y fregadero-de entrada es un dispositivo de salida, la fuente y la fuente-salida es un dispositivo de entrada tal como un micrófono (actualmente requiere el uso de entorno estructuras de captura, sin el uso de un escenario escenario de aplicación formal), que se aplican al servidor.

Fuente de datos fregadero de entrada es el cliente mediante el envío de comandos o datos utilizando los protocolos nativos toma (o remota) pasados ​​por alto.

La depuración de las habilidades y la atención a los puntos

  • pulseaudio ruta script de inicio: /etc/init.d/ *

  • pulseaudio ruta del programa servidor: / usr / bin /

  • registros de los servidores abiertos

Puesta en marcha del primer servicio pulseaudio matanza, y luego iniciar el pasado para recordar nuestro proceso de reinicio Señor (A113 lua versión del proceso de activación, yodaos el proceso VUI, porque desea que el cliente al servidor de reconexión)

  pulseaudio --system --daemonize=no  --log-level=4 ......

--log parámetros de nivel: Ajuste el nivel de registro es el nivel de depuración Nivel 4

typedef enum pa_log_level {
    PA_LOG_ERROR  = 0,    /* Error messages */
    PA_LOG_WARN   = 1,    /* Warning messages */
    PA_LOG_NOTICE = 2,    /* Notice messages */
    PA_LOG_INFO   = 3,    /* Info messages */
    PA_LOG_DEBUG  = 4,    /* Debug messages */
    PA_LOG_LEVEL_MAX
} pa_log_level_t;
  • El uso de la depuración gdb

Las razones del problema serán ahora, muchas veces sólo el código de seguimiento GDB será muy fácil encontrar el problema. Antes de poner en servicio la necesidad de crear un buen ambiente de depuración, se necesita:

  1. GDB OpenWRT compilado por la placa de destino.
  2. Recompiladas (aumento cflags = -G) bibliotecas con tabla de símbolos dinámicos una placa de repuesto.

Al entrar en la GDB aplicación práctica puede tener muchos medios para recuperar ahora emitirá en este momento.

  • Uso de comandos pactl

pactl es pulseaudio viene con comandos que pueden ayudar a saber el estado de la situación actual de cada disipador de PulseAudio, fregadero de entrada, fuente, fuente-salida. Nos puede ayudar a hacer lo siguiente:

tabla de comandos pactl

En el comando anterior, para incluir algunos de los comandos que se utilizan actualmente:

  • módulo de carga del módulo pactl se carga a través de la línea de comandos, este comando necesitará construir en el entorno de escucha.
  • pactl movi- (fregadero de entrada | fuente-salida) #N FREGADERO | FUENTE mover la corriente absorbida enlace de entrada.
  • pactl conjunto- (fregadero | fuente) de volumen para ajustar el volumen
  • pactl conjunto- (fregadero | fuente) -mute #N 1 | 0 | conmutador
    de silencio. Que es un significado de palanca flip.

Del mismo modo, también podemos utilizar la palabra de comando pacmd PulseAudio proporcionado para lograr la operación mencionada anteriormente, y más

  • Pcm hardware de captura de datos es la escucha

      $ vspdump -m b -d 10 -O
    

En el que cuando el monitor 10 es largo, en cuestión de segundos.

  • aplicaciones de reproducción de reproducción analógica

Podemos jugar con voz normal para confirmar fregadero de entrada para hundir este enlace es normal.

  1. Introduzca el comando wav formato de reproductor de música

    $ paplay input.wav
    
  • disipador de datos PCM de captura

Si necesita capturar el sumidero de datos PCM se puede utilizar de la siguiente manera:

 

  1. Cargar el módulo disipador de tubería

     $ pactl load-module module-pipe-sink file="$(pwd)/output.pcm"
    
  2. Cargar el módulo de bucle invertido

     $ pactl load-module module-loopback
    
  3. Uso pactl vínculo de comandos de bucle invertido fregadero de entrada al disipador de tubería

  4. Uso pactl vínculo de comandos de bucle invertido fuente-salida a monior fregadero (cada disipador generará un monitor por defecto)

  5. Pcm iniciar la captura de datos

     $ pacat output.pcm
    
  • Captura de datos PCM-disipador de entrada

  1. 加载 módulo disipador de tubería

     $ pactl load-module module-pipe-sink file="$(pwd)/output.pcm"
    
  2. Juega a los flujos de reproducción

     $ paplay input.wav
    
  3. La entrada del fregadero fregadero de uso pactl ligada a la tubería.
    4. iniciar la captura de datos PCM

     $ pacat output.pcm
    
  • disipador de entrada de captura y convertida a formato wav

Que antes de capturar más espacio.

 

  1. disipador de carga nula

     $ pactl load-module module-null-sink
    

2. Iniciar la reproducción de reproducción corriente

    $ paplay input.wav

3. Iniciar la grabación

    $ parecord output.wav
  1. Utilice pactl vínculo de comandos fregadero de entrada al disipador nula.
  2. Uso pactl enlace comando source-emitiendo al monitor fregadero nula.
Publicados 755 artículos originales · ganado elogios 464 · Vistas 2,47 millones +

Supongo que te gusta

Origin blog.csdn.net/u010164190/article/details/105336370
Recomendado
Clasificación