0
0
I use ffmpeg to record different microphones in a single wav file:
ffmpeg -f alsa -i hw:4,0 -f alsa -i hw:3,0 -f alsa -i hw:2,0 -filter_complex "amerge=inputs=3" outnull2.wav
The problem is that the last microphone has always a shorter delay than the two others.
How can I synchronize the microphone ? Is this due to the compressing operation?
Edit: Here is the new command with offsets on two canals:
ffmpeg -f alsa -i hw:4,0 -f alsa -i hw:3,0 -itsoffset 0.01 -f alsa -i hw:2,0 -itsoffset 0.02 -filter_complex "amerge=inputs=3" outnull2.wav
The problem is the offsets don't solve the problem because on each record of the 3 inputs the delay changes.
I don't understand why the delay is changing on each record. How can I set a top to synchronize all the inputs.
Can you try setting
-itsoffset -0.5
before that-i
corresponding to the delayed input? This offsets the audio by 0.5 seconds, for example. Or use positive values. – slhck – 2017-06-06T11:16:43.683Unfortunately the delay changes it Isabelle not fixed. – user3262532 – 2017-06-06T12:33:02.790
Sorry my phone changed my word. I said it is not fixed. – user3262532 – 2017-06-06T15:17:23.840
Can you please update your question with the latest command you've been using (including the
itsoffset
parameter) and its full command output? – slhck – 2017-06-06T15:56:55.607Are these all connected to one hardware device (one card/usb interface with 3 inputs), or are you aggregating from 3 hardware devices (3 cards/usb interfaces, 1 input each)? – Yorik – 2017-06-06T18:45:58.510
The 3 microphones are 3 usb microphones. So there are connected to 3 usb inputs – user3262532 – 2017-06-06T18:52:26.940
The delay could go up to 30ms between the microphones – user3262532 – 2017-06-06T19:14:40.203
I just try on Windows. The delay between my two microphones is even more important, up to 70ms. – user3262532 – 2017-06-07T06:39:40.797