Mit ffmpeg gibt es keine Möglichkeit, die Länge als Variable zu erhalten, die Sie in einem Skript verwenden können. Aber mp3info tut es.
mp3info -p "%S" sample.mp3 // total time in seconds
ffmpeg
wird alles ausgeben, was es über die Datei weiß, wenn Sie ihm keine anderen Argumente geben. Verwenden Sie grep
um alles außer der "Dauer" zu entfernen:
$ ffmpeg -i foo.mp3 2>&1 | grep Duration
Duration: 01:02:20.20, start: 0.000000, bitrate: 128 kb/s
Sie können auch mplayer
verwenden . Suche nach Zeile "ID_LENGTH=":
$ mplayer -ao null -identify -frames 0 foo.mp3 2>&1 | grep ID_LENGTH
ID_LENGTH=3740.00
Interessanterweise gibt die EXIFTool-Anwendung die MP3-Dauer als letzte Zeile an!
$ exiftool somefile.mp3 ExifTool Version Number : 7.98 File Name : somefile.mp3 Directory : . File Size : 49 MB File Modification Date/Time : 2009:09:10 11:04:54+05:30 File Type : MP3 MIME Type : audio/mpeg MPEG Audio Version : 2.5 Audio Layer : 3 Audio Bitrate : 64000 Sample Rate : 8000 Channel Mode : Single Channel MS Stereo : Off Intensity Stereo : Off Copyright Flag : False Original Media : True Emphasis : None ID3 Size : 26 Genre : Blues Duration : 1:47:46 (approx)