web-dev-qa-db-fra.com

Enregistrement audio du haut-parleur avec avconv

J'ai des problèmes pour enregistrer l'audio de mes haut-parleurs avec avconv.

Voici la commande que je tape dans le terminal:

avconv -f alsa \
       -i Pulse -f x11grab -r 30 -s 1920*1080 \
       -i :0.0 \
       -vcodec libx264 -preset ultrafast \
       -ab 320k -threads 8 \
       screen.mkv

LE PROBLÈME: avconv enregistre le son du haut-parleur et le son de mon microphone, mais le son du haut-parleur est extrêmement faible. J'ai essayé de jouer avec tous mes niveaux audio/volume et je n'arrive pas à obtenir que avconv capte mieux l'audio des haut-parleurs.

Existe-t-il une option pour la commande avconv qui concerne l'audio des haut-parleurs?

S'il vous plaît ne répondez pas avec "utiliser gtk-recordMyDesktop" ou "kazam", je trouve avconv beaucoup plus pratique.

Toute aide est la bienvenue, merci!

5
Jacob

L'information est dans le pages de manuel pour avconv . Dans ma version (probablement la même que la vôtre), je l’ai trouvée dans le chapitre "Périphériques de saisie", dans la section "Impulsions", à la ligne 1854.

Tapez:

$ pactl list sources | less

Vous verrez des informations sur "Source n ° 0", "Source n ° 1" etc. selon le nombre de cartes son que vous possédez.

Obtenez la chaîne sous "Nom:", ce sera quelque chose comme:

alsa_output.pci-[some number].analog-stereo.monitor

où "un certain nombre" dépend de votre matériel.

Au lieu de démultiplexer en utilisant alsa directement (avconv ... -f alsa ...) comme vous avez essayé de le faire ci-dessus, utilisez Pulse à la place:

avconv ... -f Pulse -i alsa_output.pci-....analog-stereo.monitor ...

Cela enregistrera le son surveillé et transmis aux haut-parleurs, au casque ou ailleurs. Si vous souhaitez utiliser Pulse pour démultiplier et enregistrer le microphone, utilisez l'autre "Nom:" (ou l'un des autres noms) qui n'inclut pas le mot "moniteur".

J'espère que ça aide.

7
Daniel Nikpayuk

Installez le paquet pavucontrol. Ouvrez l'application de contrôle du volume PulseAudio à partir du tableau de bord.

Dans l'onglet Périphériques d'entrée, descendez et choisissez Tous les périphériques d'entrée. Appuyez ensuite sur le bouton coché à côté du périphérique nommé "Moniteur de ... (nom de votre périphérique)". Le dispositif d’entrée par impulsion est maintenant ce qui passe par les haut-parleurs.

enter image description here

Les paramètres que vous utilisez actuellement sur avconv devraient être corrects pour que cela fonctionne correctement.

2
Jorge Suárez de Lis

Le volume du haut-parleur est faible car il est enregistré dans votre micro. Avez-vous déjà trouvé un moyen d'enregistrer les deux ensemble? J'ai le même problème. Je porte des écouteurs pour jouer et le son serait beaucoup mieux ainsi ... Pas assez familier avec Pulse pour savoir quoi changer: - /

1
Matthew Clark
  1. En type de terminal:

     pactl list sources | grep analog-stereo.monitor
    

    Affiche la sortie:

    Name: alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
    
  2. ffmpeg -f Pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor alsa-output_analog-stereo_monitor.wav

0
Vedavrat

J'ai fait la commande pactl pour trouver le nom. Cependant, lorsque je lance avconv, je reçois: john @ JudithLaptop: ~ $ avconv -f Impulsion -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f x11grab -s $ (xwininfo -root | grep 'geometry' | awk '{print $ 2;}') -r 25 -i: 0.0 -vcodec mpeg2video -ar 44100 -s wxga -aspect 16: 9 -y /home/john/Temporary/p.mpg avconv version 0.8.9-4: 0.8.9-0ubuntu0.12.04.1, Copyright (c) 2000-2013, les développeurs Libav créés le 9 Nov 2013 à 19:12:07 avec gcc 4.6.3 Format de saisie inconnu: 'Pulse'

Post-scriptum Je ne sais pas si c'est un fouillis rouge, mais j'ai vu quelque part que ffmpeg avait besoin du paquet libpulse-simple pour pouvoir utiliser le paramètre Pulse. Je ne vois pas le paquet libpulse-simple dans mes dépôts Ubuntu Precise 32 bits.

0
John Rose