Rediriger le son Mozilla avec sox et pulseaudio, est-ce possible?

Signaler
Messages postés
6
Date d'inscription
vendredi 10 juin 2016
Statut
Membre
Dernière intervention
20 janvier 2020
-
ElementW
Messages postés
4908
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
3 février 2020
-
Bonjour,

connecter en ligne de commande le son provenant de Mozilla avec sox via pulseaudio pour l'enregistrer avec sox en MP3 de préférence (pour pouvoir l'utiliser dans d'autres applications, par ex. "granule", la boîte virtuelle de fichier pour apprendre les langues étrangères, est-ce possible?
ceci pour rendre possible la liaison directe d'une source de sons bien définie avec uniquement un enregistreur de son aussi bien défini (et si possible permettre de gérer sans interférence aucune d'autres sons tels que, par ex., écouter un CD musical ou autre sur la sortie son usuelle)
Configuration: Linux / Firefox 35.0

1 réponse

Messages postés
4908
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
3 février 2020
921
'lut,
oui, c'est possible, et pas bien complexe.

1. Créer une sortie audio bidon

pacmd load-module module-null-sink sink_name=sox sink_properties="'device.description=\"Sortie pour Sox\"'"

2. Rediriger l'audio de Firefox

Exemple avec
pavucontrol
:

3. Utiliser sox pour enregistrer

En utilisant le moniteur de la sortie qu'on vient de créer comme source de l'audio:
sox -t pulseaudio sox.monitor -t mp3 test.mp3

À laisser tourner tout le temps où tu veux enregistrer.

4. Nettoyer

Une fois fini on peut enlever la sortie audio bidon:
pactl unload-module $(pactl list short modules | grep sink_name=sox | cut -f1)

PulseAudio remettra automatiquement Firefox sur la 1ère sortie audio dispo dans sa liste.
tropsimple
Messages postés
6
Date d'inscription
vendredi 10 juin 2016
Statut
Membre
Dernière intervention
20 janvier 2020

excellent! merci! Peut-on éviter (en ligne de commande) le pas dans Pavucontrol? crdlmt
ElementW
Messages postés
4908
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
3 février 2020
921 > tropsimple
Messages postés
6
Date d'inscription
vendredi 10 juin 2016
Statut
Membre
Dernière intervention
20 janvier 2020

Oui on peut; ma ligne est un peu longue parce qu'il faut rediriger toutes les sorties de Firefox une à une...
for s in $(pactl list short sink-inputs | awk -F'\t' "{ if (\$3 == $(pactl list short clients | grep firefox | cut -f1)) print \$1 }"); do pactl move-sink-input $s sox; done