Salut 'Nal,
Je me suis pris les pieds dans getDisplayMedia() sous Linux. Ça m'a pris plus de temps que d'appeler un LLM, donc autant l'écrire ici.
L'idée, c'est un assistant de réunion qui affiche des suggestions pendant l'appel, plutôt qu'un résumé une fois que tout le monde a raccroché. Pas de bot dans la visio. Le navigateur capte l'audio que l'utilisateur choisit de partager, ce qui évite le participant fantôme que tout le monde voit, et que pas mal de boîtes bloquent.
Sous Windows, partager l'écran entier peut emporter l'audio système, donc le son de Teams desktop ou de Zoom. Sous Linux, cette case n'existe pas. macOS non plus, sauf à installer un pilote du genre BlackHole. J'avais écrit l'inverse sur un billet produit, avant d'aller vérifier.
La popup Chromium propose trois surfaces. Pour la vidéo, peu importe. Pour l'audio, ça change tout.
| Surface | Audio |
|---|---|
| Onglet Chromium | oui, tous les OS desktop (case souvent déjà cochée) |
| Écran entier | Windows et ChromeOS seulement, et encore, il faut cocher |
| Fenêtre | jamais |
Le chemin que je peux documenter sous Linux, c'est une visio dans un onglet Chromium (Meet, Teams web, Zoom web). On partage cet onglet, on a le son. Le .deb de Teams ou de Zoom, le navigateur n'a aucun moyen d'aller chercher leur flux. Je ne promets donc pas la capture d'une appli de bureau.
On peut toujours monter un null-sink PulseAudio ou PipeWire et rerouter le son. Des gens le font, et sous Linux c'est même plus propre qu'un BlackHole sur Mac. Ce n'est pas ce que le produit fait, et je ne vais pas coller un tutoriel pavucontrol dans la doc.
Firefox ne sort pas d'audio d'onglet comparable. Safari non plus. Il reste Chromium, paquet distro ou Chrome. Ça m'agace de l'écrire sur LinuxFr. Je n'ai pas de plan B.
Le classique, c'est de partager la fenêtre de l'appli de visio. La prévisualisation a l'air bonne, le MediaStream arrive, et il n'y a juste pas de piste. Le navigateur ne le signale pas. Je me suis fait avoir.
Dans le code on envoie systemAudio: "include", comme le recommande la doc Chrome, parce que la valeur par défaut pourrait changer :
navigator.mediaDevices.getDisplayMedia({
video: true,
audio: { systemAudio: "include" },
});
Sous Linux, ça ne crée aucune capacité que le navigateur n'a pas déjà.
Une fois qu'on a une piste, la suite est plus banale. AudioWorklet, PCM16 mono 16 kHz, petits morceaux sur une WebSocket, reconnaissance en streaming. On ne déclenche les suggestions que sur des transcripts finalisés, et le système a le droit de se taire. Pour la qualité je regarde la latence et les pouces, pas le texte des conversations. Le timing m'a plus occupé que le modèle. Ça fera un autre journal si ça intéresse.
Censuré par la modération
Si quelqu'un a une piste sérieuse pour l'audio d'onglet dans Firefox, je suis preneur.
# Voici une piste sérieuse
Posté par Olivier Esver (site web personnel) . Évalué à 1 (+0/-1).
A lire
S'il y a un problème, il y a une solution; s'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
# pipewire
Posté par piratebab2 . Évalué à 3 (+2/-0).
pipewire route le son de ce que tu veux, vers ou tu veux.
[^] # Re: pipewire
Posté par shuihuzhuan . Évalué à 1 (+0/-0).
Et avec qjackcontrol ou équivalent, c'est un jeu d'enfant.
# Contre attaque
Posté par gUI (Mastodon) . Évalué à 5 (+2/-0). Dernière modification le 15 septembre 2026 à 22:50.
Je tente une modération soft sur les trucs vibe-codés dont on n'a rien à foutre. J'ai censuré le seul lien du journal.
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: Contre attaque
Posté par Faya . Évalué à 3 (+1/-0).
Mais là le journal n'a vraiment plus aucun sens. Ça parle de plein de trucs mais on ne voit aucun résultat… À ce stade autant supprimer le journal, non ?
[^] # Re: Contre attaque
Posté par BAud (site web personnel) . Évalué à 2 (+0/-0). Dernière modification le 16 septembre 2026 à 00:29.
en avait-il vraiment ? bon, ces derniers temps je lis le début et zappe (de plus en plus souvent) à la fin direct pour voir si ça vaut le coup…
mais quand je tombe à la fin (j'essaie de ne pas me faire mal tout de même) sur une phrase comme :
la latence (ok) et les pouces (?!)
ok, je n'essaie pas de comprendre, je ne lis pas le journal, à confirmer par DaveNull s'il en veut.
compte créé ya 2 jours avant de poster ('fin le 13…) et déjà mal parti :/
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.