Accéder au contenu.
Menu Sympa

linux-31 - Re: [Linux-31] Capture avec avconv

Objet : Discussions sur le logiciel libre

Archives de la liste

Re: [Linux-31] Capture avec avconv


Chronologique Discussions 
  • From: Pierre ESTREM <peterpan31 AT free.fr>
  • To: Linux 31 <linux-31 AT culte.org>
  • Subject: Re: [Linux-31] Capture avec avconv
  • Date: Wed, 25 Sep 2019 02:06:47 +0200

Bonjour,

Ce sont deux flux :
- le flux audio 2 canaux 48 Khz 128 Kb/s constant (mix du micro et speakers que tu m'as recommandé).
 - le flux vidéo (h264)
Voir résultat de mediainfo en PJ.

La commande "avconv -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f pulse -i alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono -filter_complexe [1:a] aformat=channel_layouts=stereo [mic] ; [0:a] [mic] amix=inputs=2 -f x11grab -r 15 -s 1920x1080 -i :0.0 -vcodec libx264 -preset ultrafast capture.avi" plante.

Donc avec :
avconv -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f pulse -i alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono -filter_complexe amix=inputs=2 -f x11grab -r 15 -s 1920x1080 -i :0.0 -vcodec libx264 -preset ultrafast capture.avi

cela marcherait, mais j'ai un décalage des sources mic et speakers et vidéo trop important.

Le but des vidéos : des démos logicielles pour présenter à de "grands débutants".

Je n'ai pas encore essayé le tout (audio + video) en "raw" et 60 Hz.
Aurais-je alors des choses synchrones ???

Merci
pierre estrem


Le 24/09/2019 à 09:20, Aymeric a écrit :
Le 23 septembre 2019 01:00:46 GMT+02:00, Pierre ESTREM<linux-31 AT culte.org> a
écrit :
Bonsoir,

Merci pour ta commande car elle m'a aidé, bien que l'option "-af" m'a
provoqué une erreur.

J'ai fait ceci :

$ avconv -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor

-f pulse -i alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono
-filter_complex amix=inputs=2 -f x11grab -r 15 -s 1920x1080 -i :0.0
-vcodec libx264 -preset ultrafast -y capture.mp4

Cela fonctionne presque.
J'ai des coupures courtes  (pas de son) par intermitence.
C'est pour cela que j'ai baissé le "rate" à 15 fps, mais c'est idem.

Une astuce pour que le son soit fluide ?

Je pense que c'est un problème d'échantillonnage, les deux flux audio ne
doivent pas avoir les mêmes fréquences d'échantillonnage.

Est-ce que tu peux vérifier que les deux flux audio sont ben 44.1kHz oou
48kHz ?

Peux tu essayer pour déjà avoir les deux flux en stéréo:
-filter_complexe '[1:a] aformat=channel_layouts=stereo [mic] ; [0:a] [mic]
amix=inputs=2'

J'ai essayé aussi "amerge=inputs=2" et franchement je ne remarque pas de
différence avec "amix"...
mix et merge ne signifient-ils pas tout deux  "mélanger" ?
amix : mixe plusieurs entrée audio dans une seule sortie audio.
amerge : mixe plusieurs entrée audio dans un seul flux multi piste.

La différence est subtile mais dans ton cas je pense que amix est plus
approprié :)

Aymeric.

Merci
pierre estrem


Le 22/09/2019 à 19:18, Aymeric (via linux-31 Mailing List) a écrit :
On 21/09/2019 02:25, Pierre ESTREM (via linux-31 Mailing List) wrote:
Je ne parviens pas à faire de ces 2 commandes 1 seule commande.

Pour les speakers :

$ avconv -f pulse -i
alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f x11grab -r 30
-s
1920x1080 -i :0.0 -vcodec libx264 -preset ultrafast -threads 4 -y
speakers.mp4

Pour le mic :

$ avconv -f pulse -i alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono
-f x11grab -r 30 -s 1920x1080 -i :0.0 -vcodec libx264 -preset
ultrafast -threads 4 -y mic.mp4

Si je réunis les 2 commandes l'enregistrement du mic passe à la
trappe
(en position 2) :

$ avconv -f pulse -i
alsa_output.pci-0000_00_1b.0.analog-stereo.monitor -f pulse -i
alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono -f x11grab -r 30 -s
1920x1080 -i :0.0 -vcodec libx264 -preset ultrafast -threads 4 -y
speakers-mic.mp4

Comment n'en faire qu'une ligne ?
Salut,

Il te manque un filtre audio pour regrouper les flux audio dans un
seul
ou il faudrait changer le codec audio de sortie pour supporter du
multipiste comme ac3, dts (mais je ne pense pas que ça soit ton but
recherché).

https://ffmpeg.org/ffmpeg-filters.html#amerge-1

Pas testé, mais un truc du genre devrait faire l’affaire:

ffmpeg -f pulse -i alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
-f
pulse -i alsa_input.usb-AKM_AK5370-00-AK5370.analog-mono -af '[a:0]
[a:1] amerge=inputs=2' -f x11grab -r 30 -s 1920x1080 -i :0.0 -vcodec
libx264 -preset ultrafast -threads 4 -y speakers-mic.mp4

Sinon tu n’as normalement pas besoin de l’option -threads ça le fait
tout seul.

""
threads integer (decoding/encoding,video)
           Set the number of threads to be used, in case the
selected
codec implementation supports multi-threading.
[...]
Default value is auto

""

A+

PS : Il me semblait que ffmpeg était revenu dans Ubuntu par défaut et
que la "guerre" avconv/ffmpeg était finie…

-- Aymeric
Aymeric
General
Complete name : capture.avi
Format : AVI
Format/Info : Audio Video Interleave
File size : 70.4 MiB
Writing application : Lavf56.25.101

Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High 4:4:4 Predictive AT L4.0
Format settings, CABAC : No
Format settings, ReFrames : 1 frame
Codec ID : H264
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Variable
Frame rate : 15.000 fps
Color space : YUV
Chroma subsampling : 4:4:4
Bit depth : 8 bits
Scan type : Progressive
Writing library : x264 core 146
Encoding settings : cabac=0 / ref=1 / deblock=0:0:0 /
analyse=0:0 / me=dia / subme=0 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 /
me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 /
fast_pskip=1 / chroma_qp_offset=6 / threads=6 / lookahead_threads=1 /
sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 /
constrained_intra=0 / bframes=0 / weightp=0 / keyint=250 / keyint_min=15 /
scenecut=0 / intra_refresh=0 / rc=crf / mbtree=0 / crf=23.0 / qcomp=0.60 /
qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=0

Audio
ID : 0
Format : MPEG Audio
Format version : Version 1
Format profile : Layer 3
Mode : Joint stereo
Mode extension : MS Stereo
Codec ID : 55
Codec ID/Hint : MP3
Bit rate mode : Constant
Bit rate : 128 Kbps
Channel(s) : 2 channels
Sampling rate : 48.0 KHz
Compression mode : Lossy
Alignment : Aligned on interleaves
Writing library : LAME3.99.5





Archives gérées par MHonArc 2.6.19+.

Haut de le page