Soundshine app icon

Soundshine

← Volver al blog

Por qué macOS no te deja compartir el audio del sistema (y cómo solucionarlo)

Estás en una llamada de Zoom y quieres reproducir un vídeo de YouTube para que lo oiga todo el mundo. Le das al play y los participantes no oyen nada. O estás intentando grabar la pantalla con QuickTime y el vídeo final no tiene audio del sistema, solo silencio absoluto. Buscas en Ajustes del Sistema, revisas las opciones de audio de Zoom, miras los menús de QuickTime. Nada.

No es un fallo. Es una decisión deliberada de Apple. macOS, sencillamente, no permite que las apps capturen el audio que está sonando en tu Mac. Si alguna vez te preguntaste por qué en Windows esto funciona sin problemas pero en Mac parece imposible, aquí te explico lo que está pasando por debajo.

Cómo gestiona el audio macOS

Todo el sonido del Mac pasa por un sistema llamado CoreAudio. En su núcleo hay un componente llamado HAL, o Hardware Abstraction Layer (capa de abstracción de hardware). El HAL es el intermediario entre el software y el hardware de audio. Cuando Spotify reproduce una canción, CoreAudio envía ese audio a través del HAL hacia un dispositivo de salida (tus altavoces o auriculares). Cuando Zoom necesita tu voz, le pide al HAL el audio de un dispositivo de entrada (tu micrófono).

Aquí está la clave: CoreAudio trata las entradas y las salidas como mundos completamente separados. El audio sale hacia los altavoces. El audio entra desde los micrófonos. No existe un puente integrado que conecte ambos. No hay forma de que una app diga «dame lo que está sonando por los altavoces» porque esa ruta sencillamente no existe en el sistema.

Esto es distinto de cómo funciona Windows. Windows tiene una función llamada WASAPI loopback capture, integrada directamente en su pila de audio. WASAPI loopback permite que cualquier app acceda al flujo de audio que va hacia los altavoces y lo lea como entrada. Por eso las apps de Windows pueden ofrecer «Stereo Mix» o «What U Hear» como fuente de grabación.

macOS decidió no incluir nada parecido.

Por qué Apple lo mantiene bloqueado

Apple nunca ha publicado una explicación oficial, pero las razones son bastante claras si observas cómo macOS aborda la privacidad y la seguridad en general.

Permitir que cualquier app capture en silencio todo el audio del sistema sería un problema serio de privacidad. Imagina un proceso en segundo plano grabando tus llamadas de FaceTime, tus mensajes de voz o el audio de una videoconferencia confidencial, todo sin que tú lo sepas. Al no proporcionar una ruta de loopback, Apple se asegura de que ninguna app pueda espiar el audio de otras apps a no ser que instales explícitamente un controlador a nivel de sistema y le des permiso.

Es la misma filosofía que hay detrás de que macOS te pida aprobar el acceso a la grabación de pantalla, al micrófono y a la cámara app por app. Apple prefiere bloquearlo todo por defecto y dejar que los usuarios opten por activarlo, en vez de dejar puertas abiertas.

La contrapartida es que los usos legítimos, como compartir una canción en una videollamada o grabar un tutorial con audio del sistema, se vuelven frustrantes. Te quedas sin una forma obvia de hacer algo que debería ser básico.

Qué hacen los controladores de audio virtual

Como macOS no va a crear una ruta de loopback por ti, la solución es crear una tú mismo con un controlador de audio virtual.

Un controlador de audio virtual es un plug-in de CoreAudio que se registra en el HAL como dispositivo de salida y de entrada a la vez. Cuando diriges el audio del sistema hacia esa salida virtual, el controlador toma ese audio y lo pone disponible en la entrada virtual correspondiente. Cualquier app que pueda leer desde un micrófono (Zoom, QuickTime, OBS, Discord) puede ya captar el audio del sistema seleccionando el dispositivo virtual como fuente de entrada.

En términos técnicos, el controlador crea un ring buffer situado entre el lado de salida y el lado de entrada. Las muestras de audio escritas en la salida se leen de vuelta desde la entrada. Para el resto de macOS, parece un micrófono normal. Pero ese «micrófono» en realidad está transmitiendo lo que sea que tu Mac esté reproduciendo.

Esto no es un truco ni un exploit. El framework CoreAudio de Apple soporta explícitamente plug-ins HAL de terceros. Es la forma oficial de ampliar las capacidades de audio de macOS. El controlador se instala en /Library/Audio/Plug-Ins/HAL/ y requiere una contraseña de administrador, por eso las herramientas de audio virtual piden permisos elevados durante la instalación.

Breve historia de las herramientas de loopback en Mac

La necesidad de dispositivos de audio virtual en macOS no es nueva. La gente lleva más de una década buscando formas de saltarse esta limitación.

Soundflower fue una de las primeras soluciones. Era una extensión de kernel de código abierto que creaba dispositivos de audio virtual en macOS. Durante años fue la respuesta habitual en foros y tutoriales. Pero Soundflower fue abandonado por su desarrollador original y, a medida que Apple fue eliminando las extensiones de kernel, se volvió cada vez más inestable. En las versiones modernas de macOS, a menudo no se instala correctamente o causa cortes de audio.

BlackHole recogió el testigo donde Soundflower lo dejó. Es un controlador de audio virtual de código abierto que se mantiene activamente y funciona en las versiones actuales de macOS. BlackHole es sólido, pero es una tubería de audio sin más. Cuando diriges el audio del sistema hacia BlackHole, dejas de oírlo por los altavoces a no ser que crees manualmente un dispositivo multi-salida con la utilidad Configuración de Audio MIDI de Apple. Si te manejas bien con ese tipo de configuración, BlackHole funciona perfectamente. Para los demás, es un proceso confuso que implica hacer malabares con varios dispositivos de audio y cruzar los dedos para haberlo configurado bien.

Loopback de Rogue Amoeba es una app de pago (99 $) que ofrece una interfaz pulida para crear dispositivos de audio virtual con enrutamiento por app. Es potente, pero está pensada para profesionales del audio que necesitan control granular sobre qué apps envían audio a dónde. Para alguien que solo quiere compartir el audio del sistema en una llamada de Zoom, Loopback puede parecer comprar una cocina industrial cuando solo hacía falta una tostadora.

La solución moderna

Soundshine adopta un enfoque más sencillo. Instala un controlador HAL de CoreAudio ligero y te da un micrófono virtual que transporta el audio del sistema. Sin comandos de terminal que ejecutar, sin dispositivos multi-salida que configurar en Configuración de Audio MIDI, sin diagramas de enrutamiento complejos que descifrar.

Instalas Soundshine y un asistente guiado se encarga de la instalación del controlador en unos 30 segundos. Después, un icono en la barra de menús te da un único interruptor para activar o desactivar el enrutamiento de audio. Cuando está activado, «Soundshine Microphone» aparece como entrada de micrófono en cualquier app. Selecciónalo en Zoom, Google Meet, QuickTime, OBS o lo que estés usando, y el audio del sistema fluye directamente.

Los altavoces siguen funcionando con normalidad todo el rato. Soundshine pasa el audio a tu dispositivo de salida real a la vez, así que tú oyes todo lo que oyen tus participantes. El audio se mantiene digital de extremo a extremo a 48 kHz, 32-bit float estéreo, sin pérdida de calidad.

Conclusión

macOS no te deja compartir el audio del sistema porque Apple decidió, a propósito, no incluir una ruta de loopback entre las salidas y las entradas de audio. Es una decisión de diseño que prioriza la privacidad, y es poco probable que cambie. La solución es un controlador de audio virtual que cree el puente que CoreAudio no va a crear.

Si quieres la versión más sencilla de esa solución, sin configuración manual y sin necesidad de saber ingeniería de audio, prueba Soundshine.

Enruta cualquier audio, donde quieras

Soundshine crea un micrófono virtual a partir del audio del sistema para que todas las apps funcionen sin líos. Sin terminal y sin extensiones del kernel.

Descargar gratis