Transformar eBook em Audiobook
Publicado por Rafael Fini (última atualização em 12/09/2011)
[ Hits: 14.355 ]
Olá
Resolvi fazer esse scritp para aproveitar meu tempo no trânsito e "ler" alguma coisa enquanto dirijo.
Este shellscript transforma livro em audio. Usa a "API" do Google Translate. Espero que o Google nao fique bravo com isso : )
Primeiramente é necessário obter o livro em formato TXT, portanto, se você possui um arquivo pdf, transforme-o.
Eu utilizei esta ferramenta aqui -> http://www.convertpdftotext.net .
O tipo do arquivo recebido já está previsto no script, e as modificações necessárias já estão implementadas.
O script leva em consideração que todas as linhas possuem menos de 100 caracteres.
Aproveitem!
Abraço,
Rafael
#/bin/bash # # by Rafael Fini # v: 1.0 # if [ -z $1 ] then echo "Modo de uso ./TTSBook [livro.txt]" exit 0 else # Escolhe a lingua que será falada: en, pt, fr... lang=pt # Duração dos arquivos em minutos length=05 filename=`echo $1 | sed -e 's/^.*\///' | sed 's/\..*$//'` cp $1 temp # Transforma codificação do arquivo para utf-8 #cat temp | iconv -f iso8859-15 -t UTF-8 -o temp2 #mv temp2 temp # Transforma arquivo para terminação de linha UNIX tr -d '\r' < temp > temp2 mv temp2 temp # Formata palavras com continuação na outra linha (Evita a palavra travessão no TTS) sed 's/\ \([^ \t\n\r\f\v]*-$\)/\n\1/' temp | sed '/-$/ N ; s/-\n//' > temp2 mv temp2 temp # Apaga as linhas em branco sed '/^$/d' temp > temp2 mv temp2 temp #--------------------------------------------------------------------------------------------------------- nlinhas=`sed -n '$=' temp` touch $filename.mp3 for it in `seq -w 1 $nlinhas`; do echo -ne "Convertendo: $it de $nlinhas linhas."\\r linha=`sed "$it !d" temp` wget -q -U Mozilla -O $it.mp3 "http://translate.google.com/translate_tts?ie=UTF-8&tl=$lang&q=$linha" cat $filename.mp3 $it.mp3 > tempfalado mv tempfalado $filename.mp3 rm $it.mp3 done rm temp mp3splt $filename.mp3 -Q -n -x -o @f-@m -t $length.00 echo "Feito. " fi exit 0
Automatizar a criação de domínios, sites e usuários de FTP
Somatório de valores do comando ps
Ajustando resolução do monitor
Conciliando ZRAM Swap com Swap em arquivo ou partição
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Dicas para encontrar games Indies diferentes e criativos
Proteja seu Linux Mint com o Timeshift: Restaure o sistema mesmo que ele não inicie!
Instalar driver Nvidia no Debian 13
Redimensionando, espelhando, convertendo e rotacionando imagens com script
Ajuda com o Debian 13 - Video hibrido geforce 940 mx Wayland OFF (2)
Problema com impressoras de rede (1)
Rust é o "C da nossa geração"? (10)