15 lines
780 B
Bash
Executable file
15 lines
780 B
Bash
Executable file
#!/usr/bin/env bash
|
|
shopt -s nullglob
|
|
let playlist_duration_ms=0
|
|
for song_file in *.{mp3,ogg,m4a,flac,wav}; do
|
|
playlist_duration_ms=$(expr $playlist_duration_ms + $(mediainfo --Inform="Audio;%Duration%" "$song_file"))
|
|
done
|
|
shopt -u nullglob
|
|
|
|
let playlist_duration_secs=$(expr $playlist_duration_ms / 1000)
|
|
let playlist_duration_mins=$(expr $playlist_duration_ms / 60000)
|
|
let playlist_duration_remaining_secs=$(expr $playlist_duration_secs - $(expr $playlist_duration_mins \* 60))
|
|
let playlist_duration_hours=$(expr $playlist_duration_mins / 60)
|
|
let playlist_duration_remaining_mins=$(expr $playlist_duration_mins - $(expr $playlist_duration_hours \* 60))
|
|
|
|
echo $playlist_duration_hours hours, $playlist_duration_remaining_mins minutes, $playlist_duration_remaining_secs seconds
|