[ffmpeg] コマンドラインを使用して Windows 上で .flac 形式を .wav およびその他の形式にバッチ変換する

コマンドラインを使用して、Windows 上で .flac 形式を .wav およびその他の形式にバッチ変換します。

ffmpeg (オーディオとビデオの処理用) と git (sh ファイルの実行用) をインストールして、スクリプトを実行する必要があります 参考資料は次のとおりです: 1 Windows に
ffmpeg
インストールし、環境変数を設定します
2 [フロントエンドの学習] Gitのインストールと基本的な使い方と環境 変数設定 時間魔王
3 .flac形式を.wavなどの形式に一括変換
1:変換対象の音楽ファイルがあるフォルダに以下のスクリプトファイルを記述して実行する

#!/bin/bash
#folder=."文件夹路径"
folder=.
#临时修改系统识别的分隔符(文件名包含空格时,默认会解析为多个文件名)
MY_SAVEIFS=$IFS
#IFS=$(echo -en "\n\b")
IFS=$'\n'
for file in $(find "$folder" -type f -iname "*.flac")
do
	name=$(basename "$file" .flac)
    dir=$(dirname "$file")
    echo ffmpeg -loglevel panic -y -i "$file" "$dir"/"$name".wav
    ffmpeg -loglevel panic -y -i $file $dir/$name.wav
done
echo convert finished!
IFS=$MY_SAVEIFS

ffmpeg と git をインストールした後、ファイル マネージャーの右クリック メニューが図
ここに画像の説明を挿入
2 に示されています。次のコードをコマンド ラインのパラメーターとともに使用して、検索パスまたは変換するファイル (単一) を指定できます
。 ConvertFlacToWav.sh は以下の通り

#!/bin/bash
folder=.
file=
while getopts "p:f:" arg
	do
		case "$arg" in
			p)
				folder=$OPTARG
				;;
			f)
				file=$OPTARG
				;;
			?)
				echo "没有找到这条命令。。。退出。"
				exit 1
				;;
		esac
	done

echo "查找路径为$folder"
#if 判断路径字符串是否为空
if [[ -n "$file" ]];then
    filname=$(basename "$file" .flac)
	ffmpeg -loglevel panic -y -i $folder/$file $folder/$filname.wav
else
    echo "未指定文件,遍历所有flac文件"
	MY_SAVEIFS=$IFS
	#IFS=$(echo -en "\n\b")
	IFS=$'\n'

	for file in $(find "$folder" -type f -iname "*.flac")
	do
		name=$(basename "$file" .flac)
		dir=$(dirname "$file")
		echo ffmpeg -loglevel panic -y -i "$file" "$dir"/"$name".wav
		ffmpeg -loglevel panic -y -i $file $dir/$name.wav
	done
	echo convert finished!
	IFS=$MY_SAVEIFS
fi

gitbash コマンドラインで次のステートメントを実行します。
ここに画像の説明を挿入

$ ./ConvertFlacToWav.sh -p E:/MUSIC/netdisk
$ ./ConvertFlacToWav.sh -p E:/MUSIC/netdisk -f "1 2 3 4.flac"

Supongo que te gusta

Origin blog.csdn.net/starfire_hit/article/details/128689370
Recomendado
Clasificación