[FFmpeg-user] How to add padding silence for MP4 container?
Liam Condron-Farnos
23liam at googlemail.com
Sat May 25 15:18:14 CEST 2013
On 25 May 2013 13:45, Tom Horsley <horsley1953 at gmail.com> wrote:
>> So instead of using timestamps with MP4, is there a way to tell ffmpeg to
>> insert 2s of silence at the beginning of the audio?
>
> I don't know about using ffmpeg itself, but I fiddle with audio
> sync problems all the time and I use sox to generate silence
> when I need it. For example:
To generate silence with ffmpeg, use the aevalsrc audio filter
http://ffmpeg.org/ffmpeg-all.html#aevalsrc
Then, you can use either the concat demuxer (for which you'll have to
generate the sound separately, ad then prepend it to your existing
audio in two distinct commands) or the concat filter (requires
re-encoding, but will allow you to work with a single ffmpeg command).
ffmpeg -filter_complex 'aevalsrc=0:d=2' silence.aac
ffmpeg -f concat -i <(for f in silence.aac audio.aac; do echo file
"'$f'"; done) -c copy out-audio.aac
OR:
ffmpeg -i audio.aac -filter_complex
'aevalsrc=0:d=2[slug];[slug][0]concat=n=2:v=0:a=1[out]' -map '[out]'
-c:a libfdk_aac -vbr 3 out-audio.aac
(change depending on the AAC encoder you have)
http://ffmpeg.org/trac/ffmpeg/wiki/How to concatenate (join, merge) media files
More information about the ffmpeg-user
mailing list