How can you only extract 30 seconds of audio using ffmpeg
35,125
Solution 1
Use the following command:
ffmpeg -ss 0 -t 30 -i file.mp3 file.wav
-ss 0
- Start at 0 seconds-t 30
- Capture 30 seconds (from 0, so 0:00 - 0:30). If you want 1 minute of audio, use-t 60
.file.mp3
- Input filefile.wav
- output file
Solution 2
This command also works perfect. I cropped my music from 0 seconds to 30 seconds. Here test.mp3 is input file and temp.mp3 is output file.
-ss: Indicates the starting point.
-to: Indicates where to stop.
-y : force output file to overwrite.
ffmpeg -i test.mp3 -ss 00:00:00 -to 00:00:30 -c copy -y temp.mp3
Solution 3
Use the -t
parameter:
-t duration
Restrict the transcoded/captured video sequence to the duration specified in seconds. "hh:mm:ss[.xxx]" syntax is also supported.
Author by
Jaggu
Updated on July 09, 2022Comments
-
Jaggu almost 2 years
I am using ffmpeg for audio conversion. I am using this command:
ffmpeg -i file.mp3 file.wav
This works fine. However I only want to my output file to contain maximum 1 minute of audio. How can I do that using ffmpeg?
-
Drew Chapin almost 11 years
-t
is actually an output option. The format should beffmpeg -ss 0 -i file.mp3 -t 30 file.wav
-
H.v.M. over 8 yearsIs there a way to do this without re-encoding? I wrote
ffmpeg -ss 0 -i in.m4a -t 240 out.m4a
and got 128kbps output from 253kbps input. EDIT: I found it, just add-acodec copy
.