Skip to content
Snippets Groups Projects

Main

2 files
+ 7
4
Compare changes
  • Side-by-side
  • Inline

Files

@@ -10,6 +10,9 @@ while [ -n "$1" ]; do
shift
output_dir="$1"
;;
"-y" | "--yes-overwrite")
overwrite="-y"
;;
*)
input_file="$1"
;;
@@ -18,7 +21,7 @@ while [ -n "$1" ]; do
done
if [ -z "$input_file" ]; then
echo "Usage: $0 [-o|--output-dir <dir>] <file>"
echo "Usage: $0 [-y|--yes-overwrite] [-o|--output-dir <dir>] <file>"
exit 1
fi
@@ -30,7 +33,7 @@ streams="$(ffprobe -show_streams $input_file -of json 2>/dev/null | jq -r '.stre
echo "$input_file: found $(wc -l <<<$streams) MP3 streams: $streams"
# Assemble ffmpeg command line by adding '-map' argument and outfile for each stream
cmd="ffmpeg -i $input_file -vn -c:a copy"
cmd="ffmpeg $overwrite -i $input_file -vn -c:a copy"
i=0
while read -r stream_id; do
cmd="$cmd -map 0:$stream_id $output_dir/$(basename "$input_file").$i.mp3"
Loading