Skripts: teksts runā (Google) no termināla

Šodien es kopīgoju ar jums ļoti noderīgu skriptu, lai tekstu pārveidotu runā, izmantojot Google runas motoru. Šī skripta galvenā priekšrocība ir tā, ka tas "apiet" Google noteikto 100 baitu ierobežojumu. Patiesībā, godīgi sakot, tas ievēro šo ierobežojumu, bet automātiski nosūta visas rindas, tāpēc lietotājs nepamana šo ierobežojumu. Visprasīgākie pamanīs, ka reklāmguvums nav tik kvalitatīvs, kādu mēs varam iegūt pakalpojumā Google tulkotājs, galvenokārt šī ierobežojuma dēļ un ka visu tekstu nav iespējams nodot vienā rāvienā. Kā pozitīvs aspekts jāpiebilst, ka šis skripts ļauj arī norādīt konvertējamā teksta valodu.

Pēc skaidrības redzēsim, kādas darbības ir jāveic.

Steps

1. - Izveidojiet failu ar nosaukumu t2s.sh.

2. - Kopējiet šādu saturu:

#! / bin / bash ##################################### # Dan Fountain runas skripts # # Modificējis UsemosLinux # # TalkToDanF@gmail.com # ##################################### INPUT = $ * STRINGNUM = 0 ary = ($ {INPUT: 2}) echo "---------------------------" echo "Dan Fountain runas skripts" echo "TalkToDanF @ gmail.com "echo" --------------------------- atslēgai "$ {! ary [@]}" veiciet SHORTTMP [ $ STRINGNUM] = "$ {SHORTTMP [$ STRINGNUM]} $ {ary [$ key]}" LENGTH = $ (echo $ {# SHORTTMP [$ STRINGNUM]}) #echo "vārds: $ key, $ {ary [$ atslēga]} "#echo" pievienošana: $ STRINGNUM ", ja [[" $ LENGTH "-lt" 100 "]]; tad #echo sāk jaunu rindu SHORT [$ STRINGNUM] = $ {SHORTTMP [$ STRINGNUM]} cits STRINGNUM = $ (($ STRINGNUM + 1)) SHORTTMP [$ STRINGNUM] = "$ {ary [$ key]}" SHORT [ $ STRINGNUM] = "$ {ary [$ key]}" fi ir izdarīts atslēgai rindā "$ {! SHORT [@]}" do #echo ": $ key ir: $ {SHORT [$ key]}" atbalss " Spēlēšanas līnija: $ (($ key + 1)) no $ (($ STRINGNUM + 1)) "mplayer" http://translate.google.com/translate_tts? ti = UTF-8 &tl = $ {1} & q = $ {SHORT [$ key]} "izdarīts

3. - Piešķirt izpildes atļaujas skriptam:

sudo chmod + x t2s.sh

4. - Izpildiet skriptu, kas tiek nodots kā parametri: a) valodas kods, kas atbilst tekstam, b) pārveidojamais teksts. Piemēram:

./t2s.sh lv Šis ir ļoti interesants konvertējamais teksts.
Padoms: daži termināļa emulatori ļauj ielīmēt tekstu, vienkārši velkot to. Tātad Firefox ir iespējams atlasīt tekstu un vilkt to uz termināli.

Tas tā, ceru, ka jums patiks.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   yoyo teica

    Cik forši, liels paldies 😉

    Un cik skaista balss ir meitenei, es domāju, ka es iemīlējos 😛

    1.    tumšs teica

      Atvainojiet, vai jūs varat man palīdzēt ķīniešu valodā? Tas neatklāj ķīniešu rakstzīmes, tikai pinyin.

  2.   ēna teica

    Tas ir labi kā skriptam, kas pārbauda pastu, vai personalizētam trauksmei, kas pamostoties stāsta prognozes un gaidošās ziņas xD

  3.   yoyo teica

    Šeit es izveidoju testa video 😛 https://www.youtube.com/watch?v=O3IeK7PjA_0

    1.    izmantosim linux teica

      Labi! Paldies!

  4.   bentrokss teica

    Tas izklausās ļoti labi, man bija jāinstalē tikai mpg123 🙂

  5.   šveicars teica

    Man bija jāinstalē mpg123, bet tas bija forši, tāpēc, ja tas nepieņem dažus vārdus, tas saka pareizo ķeksīša burtu utt.

    EH EH

  6.   Paul honorato teica

    Vīrusa datu bāze ir atjaunināta (?)

    1.    jalbrhcp teica

      apt update && ./t2.sh lv Atjaunināta vīrusu datu bāze

  7.   Alexander teica

    Hahaha Izcili, man jau ir daži izmantošanas veidi, jutekliska balss bez šaubām =), paldies par dalīšanos.

  8.   Horhe Moratilla teica

    Kā Mac OSX lietotājam man nav bijis iespējams izmantot skriptu, jo man nav ieslēgts mpg123, tāpēc, modificējot skriptu un izmantojot VLC, mēs varam atstāt to pareizi darboties Mac OS X.

    http://pastebin.com/C2Mkp1Qy

    1.    rolo teica

      jautājums ir tāds, ka vlc, protams, paliek ieslēgts un neaizveras, kad tas beidz izpildīt, un jūs varētu izmantot cvlc, lai novērstu grafiskā interfeisa atvēršanu

      1.    rolo teica

        to varētu likt
        cvlc –play-and-exit «https://translate.google.com/translate_tts?tl=$[$key]}»
        tā, lai reprodukcijas beigās tas aizvērtos

  9.   neysonv teica

    Sveiki, puiši, man ir šī kļūda, paskatīsimies, vai kāds man saka, kāda ir problēma
    Spēlēšanas līnija: 1 no 1
    HTTP pieprasījums neizdevās: 404 nav atrasts
    [mpg123.c: 610] kļūda: piekļuve http resursam http://translate.google.com/translate_tts?tl=hola&q= neizdevās.

    1.    neysonv teica

      [kods] Spēlēšanas līnija: 1 no 1
      HTTP pieprasījums neizdevās: 404 nav atrasts
      [mpg123.c: 610] kļūda: piekļuve http resursam http://translate.google.com/translate_tts?tl=hola&q= neizdevās. [/ kods]

    2.    izmantosim linux teica

      Problēma ir tā, ka skriptu izmantojat nepareizi.
      Kad jūs to palaižat, jums kā pirmais parametrs ir jānokārto teksta valoda, kā parādīts ziņas piemērā.
      Es jums sniedzu vēl vienu piemēru:
      ./t2s.sh šeit Šis ir vienkāršs piemērs.
      Ievērojiet, ka pēc ts2.sh seko "en" (kas nozīmē "angļu", tas ir, angļu). Spāņu valodā izmantojiet "es" un pēc tam frāzi tajā valodā, kuru vēlaties konvertēt.
      Apskāviens! Pāvils.

  10.   anonīms teica

    jūs zināt runāt komandu nē? hehe

    espeak -v ir-sveiks

    1.    izmantosim linux teica

      Jā, bet ne tas pats. Šī balss ir daudz labāka. 🙂

      1.    anonīma piezīme teica

        mēs piekrītam!
        Sveicieni!

  11.   Sara teica

    Tiem, kam ir problēmas ar mpg123 -q vai tas nepatīk, varat pārslēgties uz mplayer

    mpg123 -q «http://translate.google.com/translate_tts?tl=$[1íritu&q=$SHORT[keykey]}»

    mplayer «http://translate.google.com/translate_tts?tl=$[1[&q=$[SHORT[$ taustiņš]

    1.    Guido teica

      Labāks “mplayer –really-quiet”, lai tas neaizpildītu tekstu ar tekstu

  12.   Jonathan teica

    Ļoti laba ideja izmantot Google savās lietojumprogrammās man der kā cimds.
    http://github.com/alfa30/t2v

  13.   tumšs teica

    Vēl viens jautājums; Vai kāds varētu pateikt, kā ierakstīt izejas audio ???

    1.    Hosē GDF teica

      Es pats jums atbildu, jo es tikko to saņēmu. Izmantojot mpg123, esmu modificējis skripta 38. rindu šādi:

      mpg123 -q -w audio.wav «http://translate.google.com/translate_tts?tl=$[1-lex.europa.eu&q=$[SHORT[$key»} »

      Esmu pievienojis -w audio.wav. Tādējādi tiek izveidots wav fails ar frāzes audio, bet, tā kā esmu to atstājis, tas netiek dzirdēts. Ja arī jūs vēlaties dzirdēt frāzi, jums būs jāpievieno vēl viena rindiņa. Jūs abi izskatītos šādi:

      mpg123 -q -w audio.wav «http://translate.google.com/translate_tts?tl=$[1[&q=$[SHORT[keykey]}» &
      mpg123 -q «http://translate.google.com/translate_tts?tl=$[1íritu&q=$SHORT[keykey]}»

      Protams, to varēja izdarīt citā efektīvākā un tīrākā veidā, bet vismaz tas man strādā.

      1.    tumšs teica

        Izcils Hosē GDF, es izmēģināju tavu metodi ar ļoti labiem rezultātiem, sveicieniem.

      2.    soymmic teica

        Lai ietaupītu datplūsmu otrajā izpildē, jūs varētu reproducēt .wav, kuru izveidojāt pirmajā

      3.    Hosē GDF teica

        Jā, izmantojot atskaņotāju, kuru esam instalējuši. Piemēram, ar VLC Player tas būtu:

        vlc-audio.wav

        Nu, kurš saka vlc, saka jebkurš cits spēlētājs, ieskaitot tos, kas darbojas pēc termināļa.

        Un, lai izvairītos no faila pārrakstīšanas katru reizi, kad tiek izmantots skripts, nosaukumam jāizmanto mainīgais. Nosaukums, ko lietotājs ievieto (izlasiet komandu) pirms sākšanas ... Bet tas būtu čokurošanās čokurošanās 😀

  14.   drako teica

    Es to izdarīju PHP (lai izveidotu audio Asterisk tālruņu sistēmai *)

    <?php
    $ url = 'http://translate.google.com/translate_tts?ie=UTF-8&q={query}% 0A & tl = ir & prev = ievade ';

    ja (skaits ($ argv) <= 1) {
    $ name = basename ($ argv [0]);
    die ($ nosaukums. 'lietojums:'. $ nosaukums. '
    }
    masīva_maiņa ($ argv);
    $ vaicājums = implode ('', $ argv);
    $ filename = str_replace (masīvs ('', ',', '.'), '-', $ vaicājums);
    $ faila nosaukums = str_replace ('-', '-', $ faila nosaukums);

    $ url = str_replace ('{query}', rawurlencode ($ query), $ url);
    $ ch = čokurošanās_init ();
    curl_setopt ($ ch, CURLOPT_URL, $ url);
    curl_setopt ($ ch, CURLOPT_HEADER, 0);
    curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, taisnība);
    $ rezultāts = curl_exec ($ ch);
    curl_close ($ ch);

    $ path = getcwd (). '/'. $ faila nosaukums;
    file_put_contents ($ ceļš. '. mp3', $ rezultāts);
    @exec ("sox {$ path} .mp3 -b 16 -r 8000 -t wavpcm {$ path} .wav");
    @unlink ($ ceļš. '. mp3');

    1.    tumšs teica

      Kā būtu, man jau ir izdevies ierakstīt izejas audio ar šo komandu:
      arecord ~ ​​/ zhongwen.mp3 & ./t2s.sh zh ni hao; fg
      un beigās ctrl + c, lai pārtrauktu ierakstīšanu.

      Es nekad nebiju izmantojis php
      Bet skrienot:
      php5 text-to-speech.php ir Sveiki
      konsola rīko šo:
      sox FAIL formāti: nav faila paplašinājuma “mp3” apstrādātāja

      Jebkurš ieguldījums tiek ļoti novērtēts, es vēlāk mēģināšu vēlreiz.

  15.   kirians teica

    2 lietotnes google valodas tulkotājam + teksta pārveidošana runā:
    http://www.linuxhispano.net/2014/05/29/traductor-de-google-voz/

  16.   José teica

    Es domāju, ka tas ir labākais veids, kā pārveidot, balss nav tik slikta kā citas opcijas Linux> _
    Vai ir veids, kā likt lasīt vienkārša teksta failu?
    Būtu ļoti noderīgi visas grāmatas pārveidot par audio

  17.   čuflas teica

    Nu, tas man neder, es nezinu, kāpēc, tas iznāk:

    xxxxx: ~ / Documents / Linux $ ./t2s.sh ir sveiki

    ---------
    Runas scenārijs, ko veidojis Dens Fountain
    TalkToDanF@gmail.com
    ---------
    Spēlēšanas līnija: 1 no 1
    http_open: HTTP / 1.0 400 nepareizs pieprasījums
    http://translate.google.com: Nav tāda faila vai direktorijas

    Man ir instalēta mpg123, un es esmu veicis maz testu un neko. Paldies jau iepriekš

  18.   Ignacio Cruz Martinez teica

    Labdien, šis scenārijs man ir ļoti labi kalpojis, gan klausoties skaņu, gan ierakstot tulka vārdus.

    Patiesībā es esmu modificējis skriptu, lai pielāgotu to man nepieciešamībai: pārveidot vārdu tekstu tekstā (lemario) par runu; saglabājiet manu balsi wav formātā, pārveidojiet to par ogg un nosauciet tos atbilstoši lasītajam vārdam.

    Es to izdarīju KDE, izmantojot Kdialog, lai norādītu ceļu, kur atrodas fails ar vārdu sarakstu, un direktoriju, kurā vēlos saglabāt balss audio.

    Kad WAV uz OGG konvertēšana ir pabeigta, tas man izveido divas mapes, kurās vienā pusē tiek saglabāts wav un otrs - ogg.

    Sākumā tas mani sadusmoja, jo pareizi nelasīja vārdus ar akcentiem, bet es atklāju, ka kodā jāpievieno "es & ie = UTF8". Uz brīdi es aizmirsu rakstzīmju kodējumu.

    Es jums atstāju izveidotā skripta kodu, ja tas jums palīdzēs:

    ######################################################### #######################

    #! / bin / bash

    #####################################
    # Teksta-runas lekcija #
    # Pielāgojis Ignacio Cruz Martínez #
    # pasts ir slepens xD #
    #####################################

    Dialoglodziņš #KDE, ​​lai norādītu lemmary ceļu un nosaukumu
    soyunarchivo = $ (kdialog –inputbox «Ievadiet faila ceļu un nosaukumu (ar paplašinājumu, ja tāds ir):»)

    Dialoglodziņš #KDE, ​​lai norādītu balss failu mērķa mapi
    path = $ (kdialog –inputbox «Ievadiet ceļu, lai saglabātu balss audio:»)

    # caur kaķi visas teksta faila rindas tiek nolasītas, katra rinda sastāv no viena vārda
    priekš i $ (cat $ soyunfile)
    do
    atbalss $ i

    # konvertēšana uz runu, izmantojot google translate, neaizmirstiet kodējumu, lai tas lasītu akcentus
    mpg123 -q -w "$ path" $ i.wav "http://translate.google.com/translate_tts?tl=es&ie=UTF8&q=$i"
    mpg123 -q "http://translate.google.com/translate_tts?tl=es&ie=UTF8&q=$i"

    # izmantojot ffmpeg, lai konvertētu wav failus uz ogg
    ffmpeg -i "$ path" $ i.wav -acodec libvorbis "$ path" $ i.ogg
    darīts

    # ar šīm rindām mapes tiek izveidotas, lai sakārtotu balss failus WAV vai OGG
    mkdir "$ path" WAV
    mv "$ path" *. wav "$ path" WAV

    mkdir "$ path" OGG
    mv "$ path" *. ogg "$ path" OGG

    #KDE dialoglodziņš, kas norāda, ka darbs ir pabeigts
    kdialog –msgbox 'Process izbeigts'

    ######################################################### ####################

    Vai kādam no jums ir zināšanas par izveidoto balss failu izmantošanas licenci?

    Ierobežojumi autortiesībām un ar tām saistītām lietām. Tas mani interesē, jo es plānoju izmantot dažus no šiem balss failiem, lai atbalstītu cilvēkus, kuri kļūs par lasītprasmi, būtībā tas ir bezpeļņas projekts.

    Un tas ir tas, ka šim rīkam ir vislabākā spāņu valodas intonācija, diemžēl Linux nav nekā līdzīga. Mbrola man sagādāja daudz nepatikšanas, lai izveidotu kopā ar Gespeaker.

    Paldies un tiekamies.

    1.    izmantosim linux teica

      Nav ne jausmas ... būtu jāpaskatās uz Google Translator licencēm.

  19.   Armando teica

    Skripts man nedarbojās, acīmredzot tā ir problēma, kas saistīta ar URL, tiem, kurus interesē, šis ir pareizs URL:
    http://translate.google.com/translate_tts?tl=es&q=Hola

  20.   lol teica

    Sveiki! Esmu veicis testus ar jūsu skriptu, un, izpildot to, man teica, ka tas nevar atrast audio, tāpēc es esmu ievadījis URL un šķiet, ka Google kungs ir ievietojis captcha ...

  21.   ' teica

    atjaunināt skriptu