Me gustaría saber si hay alguna forma de usar terminal para listar todas las aplicaciones activas que están escuchando dispositivos de audio (micrófonos incorporados, micrófonos usb, etc) a través de terminal. Ya conozco los programas externos ( OverSight ), pero quiero saber específicamente si hay alguna manera para que esto se haga a través de la línea de comandos. Sé que es posible, porque aplicaciones similares a OverSight son capaces de monitorizar y dar información en tiempo real sobre el uso del audio.
Respuesta
¿Demasiados anuncios?
user34759
Puntos
9
Lo más cercano que puedo hacer para esta noche es (usando ggrep
de brew install coreutils
) obteniendo pid
s de procesos que solicitan el micrófono (que parece ser como lo hace OverSight ):
log show \
--info \
--predicate \
"process == 'coreaudiod' && category == 'access'" |
grep kTCCServiceMicrophone |
ggrep -o -P 'pid\:\K[0-9]+'
Esto devolverá algo como
82931
83353
83496
83856
83856
Desafortunadamente, no está claro cómo obtener los nombres de los procesos/rutas; la opción obvia es ps -p <pid>
no produce nada. Utilizan algún arcano en OverSight para aparentemente solucionar esto, pero no soy capaz de adivinar cómo hacerlo a través de CLI.