Transformar eBook em Audiobook
Publicado por Rafael Fini (última atualização em 12/09/2011)
[ Hits: 14.598 ]
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
Configurar o Ubuntu para instalar drivers NVIDIA
Monitorando tentativas de conexões
Script para atualizar o Debian 13
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Assisti Avatar 3: Fogo e Cinzas (3)
Conky, alerta de temperatura alta (8)
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (42)









