Pourquoi macOS bloque le son système (et la solution en 30 secondes)
Vous êtes en appel Zoom et voulez diffuser une vidéo YouTube pour que tout le monde l’entende. Vous lancez la lecture, et vos participants n’entendent rien. Ou vous essayez d’enregistrer votre écran avec QuickTime et la vidéo finale n’a pas de son système, juste un silence total. Vous fouillez dans Réglages système, vérifiez les options audio de Zoom, parcourez les menus de QuickTime. Rien.
Ce n’est pas un bug. C’est un choix de conception délibéré d’Apple. macOS ne permet tout simplement pas aux apps de capter le son qui joue sur votre ordinateur. Si vous vous êtes déjà demandé pourquoi ça marche bien sur Windows mais paraît impossible sur Mac, voici ce qui se passe vraiment sous le capot.
Comment macOS gère l’audio
Chaque son sur votre Mac passe par un système appelé CoreAudio. En son centre, il y a un truc appelé le HAL, ou Hardware Abstraction Layer. Le HAL est le gardien entre logiciel et matériel audio. Quand Spotify joue une chanson, CoreAudio envoie cet audio via le HAL à un périphérique de sortie (vos haut-parleurs ou casque). Quand Zoom a besoin de votre voix, il demande au HAL le son d’un périphérique d’entrée (votre micro).
Voilà le point clé : CoreAudio traite entrées et sorties comme des mondes complètement séparés. Le son va vers les haut-parleurs. Le son vient des micros. Il n’y a pas de pont intégré qui relie les deux. Il n’y a pas de moyen pour une app de dire « donne-moi tout ce qui joue actuellement par les haut-parleurs » parce que ce chemin n’existe simplement pas dans le système.
C’est différent du fonctionnement de Windows. Windows a une fonctionnalité appelée capture loopback WASAPI, construite directement dans sa pile audio. La loopback WASAPI permet à toute app de brancher le flux audio qui va à vos haut-parleurs et de le lire en entrée. C’est pour ça que les apps Windows peuvent proposer « Stereo Mix » ou « What U Hear » comme source d’enregistrement.
macOS a choisi de ne rien inclure de tel.
Pourquoi Apple maintient le verrou
Apple n’a jamais publié d’explication officielle, mais le raisonnement est assez clair si vous regardez comment macOS aborde la confidentialité et la sécurité partout ailleurs.
Permettre à toute app de capter en silence tout le son système serait un grave problème de confidentialité. Imaginez un processus en arrière-plan qui enregistre vos appels FaceTime, vos messages vocaux ou le son d’une réunion vidéo confidentielle, à votre insu. En ne fournissant pas de chemin loopback, Apple s’assure qu’aucune app ne peut écouter l’audio d’autres apps sauf si vous installez explicitement un pilote au niveau système et lui accordez la permission.
C’est la même philosophie derrière le fait que macOS vous demande d’approuver l’accès à l’enregistrement d’écran, au micro et à la caméra app par app. Apple préfère verrouiller par défaut et laisser les utilisateurs opter pour, plutôt que de laisser des portes ouvertes.
Le compromis, c’est que des cas d’usage légitimes, comme partager une chanson dans un appel vidéo ou enregistrer un tutoriel avec le son système, deviennent frustrants. Vous restez sans moyen évident de faire quelque chose qui paraît élémentaire.
Ce que font les pilotes audio virtuels
Puisque macOS ne créera pas de chemin loopback pour vous, la solution, c’est d’en créer un vous-même avec un pilote audio virtuel.
Un pilote audio virtuel est un plugin CoreAudio qui s’enregistre auprès du HAL à la fois comme périphérique de sortie et comme périphérique d’entrée en même temps. Quand vous routez votre son système vers cette sortie virtuelle, le pilote prend cet audio et le rend disponible sur l’entrée virtuelle correspondante. Toute app qui peut lire depuis un micro (Zoom, QuickTime, OBS, Discord) peut maintenant capter le son système en sélectionnant le périphérique virtuel comme source d’entrée.
En termes techniques, le pilote crée un ring buffer qui s’intercale entre le côté sortie et le côté entrée. Les échantillons audio écrits sur la sortie sont relus depuis l’entrée. Pour le reste de macOS, ça ressemble à un micro normal. Mais ce « micro » transporte en réalité ce que joue votre Mac.
Ce n’est ni un hack ni un exploit. Le framework CoreAudio d’Apple prend explicitement en charge les plugins HAL tiers. C’est la façon sanctionnée d’étendre les capacités audio de macOS. Le pilote s’installe dans /Library/Audio/Plug-Ins/HAL/ et demande un mot de passe administrateur, raison pour laquelle les outils audio virtuels demandent des permissions élevées pendant l’installation.
Brève histoire des outils de loopback audio Mac
Le besoin de périphériques audio virtuels sur macOS n’est pas nouveau. Les gens contournent cette limitation depuis plus d’une décennie.
Soundflower a été l’une des premières solutions. C’était une extension noyau open source qui créait des périphériques audio virtuels sur macOS. Pendant des années, c’était la réponse incontournable sur les forums et tutos. Mais Soundflower a été abandonné par son développeur d’origine, et à mesure qu’Apple a sorti progressivement les extensions noyau, Soundflower est devenu de plus en plus instable. Sur les versions récentes de macOS, il échoue souvent à s’installer ou cause des glitches audio.
BlackHole a repris là où Soundflower s’est arrêté. C’est un pilote audio virtuel open source activement maintenu qui marche sur les versions actuelles de macOS. BlackHole est solide, mais c’est un tuyau audio brut. Quand vous routez votre son système vers BlackHole, vous n’entendez plus par vos haut-parleurs sauf si vous créez manuellement un périphérique multi-sortie avec l’utilitaire Configuration audio et MIDI d’Apple. Pour les gens à l’aise avec ce genre de configuration, BlackHole marche bien. Pour les autres, c’est un processus déroutant qui implique de jongler entre plusieurs périphériques audio en espérant que tout est bien configuré.
Loopback de Rogue Amoeba est une app payante (99 $) qui fournit une interface soignée pour créer des périphériques audio virtuels avec routage par app. C’est puissant, mais c’est conçu pour des pros de l’audio qui ont besoin d’un contrôle granulaire sur quelles apps envoient du son où. Pour quelqu’un qui veut juste partager du son système dans un appel Zoom, Loopback peut donner l’impression d’acheter une cuisine professionnelle quand on n’avait besoin que d’un grille-pain.
La solution moderne
Soundshine prend une approche plus simple. Il installe un pilote CoreAudio HAL léger et vous donne un micro virtuel qui transporte votre son système. Pas de commandes terminal à lancer, pas de périphériques multi-sortie à configurer dans Configuration audio et MIDI, et pas de schémas de routage complexes à déchiffrer.
Vous installez Soundshine, et un assistant guidé gère l’installation du pilote en environ 30 secondes. Ensuite, une icône dans la barre des menus vous donne un seul interrupteur pour activer ou désactiver le routage audio. Quand il est sur on, « Soundshine Microphone » apparaît comme entrée micro dans n’importe quelle app. Sélectionnez-le dans Zoom, Google Meet, QuickTime, OBS ou ce que vous utilisez, et le son système passe.
Vos haut-parleurs continuent de marcher normalement tout le temps. Soundshine fait passer l’audio jusqu’à votre vrai périphérique de sortie en simultané, donc vous entendez tout ce qu’entendent vos participants. L’audio reste numérique de bout en bout en stéréo 32 bits float à 48 kHz, donc pas de perte de qualité.
L’essentiel
macOS ne vous laisse pas partager le son système parce qu’Apple a intentionnellement omis un chemin loopback entre sorties et entrées audio. C’est une décision de conception centrée sur la confidentialité, et il est peu probable que ça change. La solution, c’est un pilote audio virtuel qui crée le pont que CoreAudio refuse.
Si vous voulez la version la plus simple de cette solution, sans configuration manuelle et sans formation d’ingé son, essayez Soundshine.
Routez n'importe quel son, n'importe où
Soundshine crée un micro virtuel à partir du son de votre système pour que toutes les apps fonctionnent sans bidouille. Pas de terminal, pas d'extension noyau.
Télécharger