web-dev-qa-db-ja.com

MacOSXテキスト読み上げバッチ

300個の英語のテキストファイルをmp3ファイルにして、いつでも聞くことができます。

MacがMacOSXで利用可能な無料の音声から回転する音声を使用してファイルをmp3に音声合成するためにテキストをバッチ処理するために使用できる方法はありますか?

3
pommy

次のようなシェルコマンドを使用できます。

_for f in *.txt;do say -f "$f" -o "${f%txt}aif";done
_

ランダムな英語の声:

IFS=$'\n';a=($(say -v\?|sed -E $'s/ {2,}/\t/'|awk -F$'\t' '$2~/^en_/{print $1}'));for f in *.txt;do say -v "${a[$((RANDOM%${#a[@]}))]}" -f "$f" -o "${f%txt}aif";done

リストからのランダムな声:

IFS=, read -a a<<<'Daniel,Fiona,Moira,Emily,Serena,Tessa';for f in *.txt;do say -v "${a[$((RANDOM%${#a[@]}))]}" -f "$f" -o "${f%txt}aif";done

Ffmpegを使用して、ファイルをmp3に変換できます。

_for f in *.aif;do ffmpeg -i "$f" -aq 2 "${f%aif}mp3";done
_

_-aq 2_は、lameの_-V2_に対応します。インストール後に_brew install ffmpeg_でffmpegをインストールできます Homebrew

3
Lri