Mac OSX Lote de Texto para Fala

3

Eu tenho 300 arquivos de texto em inglês que quero transformar em arquivos mp3 para ouvir como e quando.

Existe um método que eu possa usar para que meu Mac envie texto em lote para os arquivos em mp3 usando uma voz rotativa a partir das vozes livres disponíveis no Mac OSX?

    
por pommy 01.02.2014 / 09:10

1 resposta

3

Você pode usar um comando shell como este:

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

Voz inglesa aleatória:

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

Voz aleatória de uma lista:

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

Você pode usar o ffmpeg para converter os arquivos para mp3:

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

-aq 2 corresponde a -V2 em lame . Você pode instalar o ffmpeg com brew install ffmpeg depois de instalar o Homebrew .

    
por 04.02.2014 / 00:01