Sot ndaj me ju një skenar shumë të dobishëm për të kthyer tekstin në të folur duke përdorur motorin e të folurit Google. Përparësia kryesore e këtij skenari është se ajo "anashkalon" kufirin prej 100 bajtësh të vendosur nga Google. Në të vërtetë, të them të drejtën, ai respekton këtë kufi por dërgon të gjitha linjat automatikisht, që do të thotë se ky kufizim mbetet pa u vërejtur nga përdoruesi. Megjithatë, ata që kërkojnë më shumë, do të vërejnë se shndërrimi nuk është i të njëjtës cilësi me atë që mund të marrim në Google Translate, kryesisht për shkak të këtij kufiri dhe se nuk është e mundur të kalohet i gjithë teksti në një goditje. Si pikë pozitive, duhet shtuar se ky skenar gjithashtu ju lejon të specifikoni gjuhën e tekstit që do të konvertohet.
Pasi të jemi sqaruar, le të shohim cilat janë hapat që duhet të ndiqni.
hapat
1. - Krijoni një skedar me emrin t2s.sh.
2. - Kopjoni përmbajtjen vijuese:
#! / bin / bash ##########################################> # # TalkToDanF@gmail.com # ################################# INPUT = $ * STRINGNUM = 0 ary = ( $ {INPUT: 2}) echo "---------------------------" jehonë "Skenari i Fjalimit nga Dan Fountain" jehonë "TalkToDanF @ gmail .com "echo" --------------------------- "për çelësin në" $ {! ary [@]} "bëj SHORTTMP [$ STRINGNUM] = "$ {SHORTTMP [$ STRINGNUM]} $ {ary [$ key]}" LENGTH = $ (jehonë $ {# SHORTTMP [$ STRINGNUM]}) #echo "fjala: $ kyç, $ {ary [$ key ]} "#echo" duke shtuar në: $ STRINGNUM "nëse [[" "$ LENGTH" -lt "100"]]; atëherë #echo fillon vijën e re SHORT [$ STRINGNUM] = $ {SHORTTMP [$ STRINGNUM]} tjetër STRINGNUM = $ (($ STRINGNUM + 1)) SHORTTMP [$ STRINGNUM] = "$ {ary [$ key]}" SHKURT [ $ STRINGNUM] = "$ {ary [$ key]}" është bërë për çelësin në rreshtin "$ {! SHORT [@]}" bëj #echo ": çelësi $ është: $ {SHORT [$ key]}" jehonë " Linja e lojës: $ (($ tast + 1)) nga $ (($ STRINGNUM + 1)) "mplayer" http://translate.google.com/translate_tts? dmth = UTF-8 &tl = $ {1} & q = $ {SHORT [$ key]} "i kryer
3. - Jepi ekzekutimin e lejeve për skenarin:
sudo chmod + x t2s.sh
4. - Ekzekutoni skriptin duke kaluar si parametra: a) kodin e gjuhës që i përgjigjet tekstit, b) tekstin që do të konvertohet. Për shembull:
./t2s.sh sq Ky është një tekst shumë interesant për t'u kthyer.
Kjo është gjithçka, shpresoj se do ta shijoni.
Sa bukur, faleminderit shumë
Dhe çfarë zëri të bukur ka vajza, mendoj se u dashurova
Më falni, a mund të më ndihmoni me kinezisht? Nuk zbulon karaktere kineze, vetëm pinyin.
Kjo është mirë si për një skenar që kontrollon postën ose për një alarm të personalizuar që kur zgjoheni ju tregon parashikimin dhe mesazhet në pritje xD
Këtu bëra një video provë https://www.youtube.com/watch?v=O3IeK7PjA_0
Mirë! Faleminderit!
Duket shumë mirë, më duhej të instaloja vetëm mpg123
Unë kisha për të instaluar mpg123 por ishte mirë, kështu që nëse nuk pranon disa fjalë, thotë një letër të saktë etj.
EH EH
Baza e të dhënave të virusit është azhurnuar (?)
azhurnimi i duhur && ./t2.sh sq Baza e të dhënave për virusin është azhurnuar
Hahaha Shkëlqyeshëm, unë tashmë kam disa përdorime për të, zë sensual pa dyshim =), faleminderit për ndarjen.
Si përdorues i Mac OSX, nuk ka qenë e mundur për mua të përdor Script pasi nuk e kam të aktivizuar mpg123, kështu që duke modifikuar Skriptin dhe duke përdorur VLC, mund ta lëmë atë duke punuar si duhet në Mac OS X.
http://pastebin.com/C2Mkp1Qy
çështja është që vlc me siguri qëndron e ndezur dhe nuk mbyllet kur të përfundojë ekzekutimin dhe ju mund të përdorni cvlc për të parandaluar hapjen e ndërfaqes grafike
mund të vihet
cvlc –luaj-dhe-dilni «https://translate.google.com/translate_tts?tl=$$$key]]»
në mënyrë që të mbyllet në fund të riprodhimit
Përshëndetje djema, e kuptoj këtë gabim, le të shohim nëse dikush më tregon se cili është problemi
Linja e lojës: 1 nga 1
Kërkesa HTTP dështoi: 404 Nuk u gjet
[mpg123.c: 610] gabim: Hyrja në burimin http http://translate.google.com/translate_tts?tl=hola&q= të dështuarit.
[kodi] Linja e lojës: 1 nga 1
Kërkesa HTTP dështoi: 404 Nuk u gjet
[mpg123.c: 610] gabim: Hyrja në burimin http http://translate.google.com/translate_tts?tl=hola&q= të dështuarit. [/ kodi]
Problemi është se po e përdorni skriptin gabim.
Kur e ekzekutoni, duhet të kaloni gjuhën e tekstit si parametrin e parë, siç tregohet në shembullin në postim.
Unë ju jap një shembull tjetër:
./t2s.sh në Ky është një shembull i thjeshtë.
Vini re që pas ts2.sh ndjek "en" (që do të thotë "anglisht", domethënë anglisht). Për Spanjisht, përdorni "es" dhe pastaj frazën në atë gjuhë që dëshironi të konvertoni.
Perqafo! Paul.
ju e dini urdhrin flasin jo? hehe
espeak -v është-«përshëndetja»
Po por jo e njëjta gjë. Ky zë është shumë më i mirë. 🙂
ne jemi dakord!
Përshëndetje!
Për ata që kanë probleme me mpg123 -q ose nuk ju pëlqen, mund të kaloni në mplayer
mpg123 -q "http://translate.google.com/translate_tts?tl=$$1-lex.europa.eu&q=$(SHORT^$keykey]]"
mplayer «http://translate.google.com/translate_tts?tl=$$1 + XNUMX]
Më mirë "mplayer - vërtet-i qetë", kështu që nuk mbush rezultatet me tekst
Një ide e shkëlqyeshme për të përdorur google për aplikacionet e mia më përshtatet si një dorezë.
http://github.com/alfa30/t2v
Edhe një pyetje; A mund të më tregojë dikush se si të regjistroj audion e daljes ???
Unë ju përgjigjem vetë, sepse sapo e kuptova. Duke përdorur mpg123, unë kam modifikuar rreshtin 38 të skenarit, dukej kështu:
mpg123 -q -w audio.wav «http://translate.google.com/translate_tts?tl=$$1-lex.europa.eu&q=$(SHORT] []]]» »
Unë kam shtuar -w audio.wav. Kjo krijon një skedar wav me audion e frazës, por siç e kam lënë, nuk dëgjohet. Nëse edhe ju doni të dëgjoni frazën, do të duhet të shtoni një rresht tjetër. Të dy do të dukeshit kështu:
mpg123 -q -w audio.wav «http://translate.google.com/translate_tts?tl=$^1 XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX
mpg123 -q "http://translate.google.com/translate_tts?tl=$$1-lex.europa.eu&q=$(SHORT^$keykey]]"
Me siguri që mund të bëhet në një mënyrë tjetër më efikase dhe të pastër, por të paktën funksionon për mua.
José GDF i shkëlqyeshëm, provova metodën tuaj me rezultate shumë të mira, përshëndetje.
Për të kursyer trafik në ekzekutimin e dytë mund të riprodhoni .wav që keni gjeneruar në të parën
Po, duke përdorur një lojtar që kemi instaluar. Për shembull, me VLC Player do të ishte:
audio vlc.wav
Epo, kush thotë vlc, thotë çdo lojtar tjetër, duke përfshirë edhe ata që punojnë me terminal.
Dhe për të shmangur mbishkrimin e skedarit sa herë që përdoret skenari, duhet të përdoret një variabël për emrin. Emri që përdoruesi do të vendoste (lexo komandën) përpara se të fillonte ... Por kjo do të ishte shufër curl
Unë e bëra atë në PHP (për të krijuar audiot për një sistem telefonik Asterisk *)
<?php
$ url = 'http://translate.google.com/translate_tts?ie=UTF-8&q={pyetje}% 0A & tl = është & prev = input ';
nëse (numëroni ($ argv) <= 1) {
$ name = emri kryesor ($ argv [0]);
vdes ($ name. 'use:'. $ name. ')
}
array_shift ($ argv);
$ query = implode ('', $ argv);
$ filename = str_replace (vargu ('', ',', '.'), '-', $ pyetës);
$ filename = str_replace ('-', '-', $ filename);
$ url = str_replace ('{pyetje}', kod i papërpunuar ($ pyetje), $ url);
$ ch = curl_init ();
curl_setopt ($ ch, CURLOPT_URL, $ url);
curl_setopt ($ ch, CURLOPT_HEADER, 0);
curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, e vërtetë);
$ rezultat = curl_exec ($ ch);
curl_close ($ ch);
$ path = getcwd (). '/'. $ emri i skedarit;
file_put_contents ($ path. '. mp3', $ rezultat);
@exec ("sox {$ path} .mp3 -b 16 -r 8000 -t wavpcm {$ path} .wav");
@unlink ($ path. '. mp3');
Po sikur unë tashmë kam arritur të regjistroj audion e daljes me këtë komandë:
arecord ~ / zhongwen.mp3 & ./t2s.sh zh ni hao; fg
dhe në fund ctrl + c për të ndaluar regjistrimin.
Unë kurrë nuk kisha përdorur php
Por kur vraponi:
php5 teksti në të folur.php është Përshëndetje
konsola pret këtë:
formatet sox FAIL: nuk ka mbajtës për zgjerimin e skedarit `mp3
Çdo kontribut është shumë i vlerësuar, unë do të provoj përsëri më vonë.
2 aplikacione për përkthyesin e gjuhës google + përkthim teksti në fjalim:
http://www.linuxhispano.net/2014/05/29/traductor-de-google-voz/
Unë mendoj se është mënyra më e mirë për të kthyer, zëri nuk është aq i keq sa opsionet e tjera për Linux> _
A ka ndonjë mënyrë për ta bërë atë të lexojë një skedar teksti të thjeshtë?
Do të ishte shumë e dobishme të shndërroni libra të tërë në audio
Epo, nuk funksionon për mua, nuk e di pse, kjo del:
xxxxx: ~ / Documents / Linux $ ./t2s.sh është përshëndetje
---------
Skenari i Fjalimit nga Dan Fountain
TalkToDanF@gmail.com
---------
Linja e lojës: 1 nga 1
http_apen: HTTP / 1.0 400 Kërkesë e keqe
http://translate.google.com: Asnjë skedar apo direktori e tillë
Unë kam të instaluar mpg123 dhe kam bërë pak teste dhe asgjë. Faleminderit paraprakisht
Hej, ky skenar më ka shërbyer shumë mirë, si për të dëgjuar tingullin ashtu edhe për të regjistruar fjalët e përkthyesit.
Në fakt, unë e kam modifikuar skenarin për ta përshtatur me një nevojë që kam: Transformoj një listë fjalësh në tekst (lemario) në të folur; ruaj zërin tim në wav, kthehu në ogg dhe emërtoji ata sipas fjalës së lexuar.
E bëra këtë në KDE duke përdorur Kdialog për të specifikuar shtegun ku është skedari me listën e fjalëve dhe direktorinë ku unë dua të ruhet audio zëri.
Kur të përfundojë konvertimi WAV në OGG, ai krijon dy dosje për mua ku ruhen wav në njërën anë dhe ogg në anën tjetër.
Në fillim kjo më zemëroi sepse nuk i lexonte fjalët me theks të saktë, por gjeta se duhet të shtoni "es & ie = UTF8" në kod. Për një moment harrova kodimin e karakterit.
Unë ju lë kodin e skenarit që bëra në rast se ju ndihmon:
############################################################################ #######################
#! / bin / bash
####################################
# Leksion nga teksti në të folur #
# Përshtati nga Ignacio Cruz Martínez #
# posta është sekrete xD #
####################################
#KDE kutia e dialogut për të specifikuar rrugën dhe emrin e lemmary
soyunarchivo = $ (kdialog –inputbox «Vendos rrugën dhe emrin e skedarit (me një shtrirje nëse e ka një të tillë):»)
#KDE kutia e dialogut për të specifikuar dosjen e destinacionit për skedarët zanorë
shtegu = $ (kdialog –inbox) «Fut rrugën për të ruajtur audion me zë:»)
# përmes maces lexohen të gjitha rreshtat e skedarit të tekstit, secila rresht përbëhet nga një fjalë e vetme
për unë në $ (mace $ soyunfile)
do
jehonë $ i
# duke u kthyer në fjalim duke përdorur Google translate, mos harroni kodifikimin në mënyrë që të lexojë thekse
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"
# duke përdorur ffmpeg për të kthyer skedarët wav në ogg
ffmpeg -i "$ path" $ i.wav -acodec libvorbis "$ path" $ i.ogg
e bërë
# me këto rreshta dosjet krijohen për të organizuar skedarët zanorë në WAV ose OGG
mkdir "$ path" WAV
mv "$ path" *. wav "$ path" WAV
mkdir "$ path" OGG
mv "$ path" *. ogg "$ path" OGG
#KDE kutia e dialogut për të treguar se puna ka mbaruar
kdialog –msgbox 'Procesi përfundoi'
##############################################################################> ####################
Tani, a ka ndonjë prej jush njohuri në lidhje me licencën për të përdorur skedarët e gjeneruar të zërit?
Kufizimi për të drejtat e autorit dhe gjërat e ngjashme. Kjo më intereson sepse kam në plan të përdor disa nga këto skedarë zëri për të mbështetur njerëzit që do të bëhen të shkolluar, në thelb është një projekt jo-fitimprurës.
Dhe është se ky mjet ka intonacionin më të mirë për gjuhën spanjolle, për fat të keq në Linux nuk ka asgjë të ngjashme. Mbrola më ka dhënë shumë telashe për tu vendosur së bashku me Gespeaker.
Faleminderit dhe shihemi.
Asnjë ide ... nuk do të duhej të shikoja licencat e Google Translator.
Skenari nuk ka punuar për mua, me sa duket është një problem që lidhet me URL-në, për ata që janë të interesuar kjo është URL e saktë:
http://translate.google.com/translate_tts?tl=es&q=Hola
Përshëndetje! Unë kam qenë duke bërë teste me skenarin tuaj dhe kur e ekzekutova atë, më tha që nuk mund ta gjente audion, kështu që unë kam futur URL-në dhe duket se z. Google ka vendosur një kapje ...
azhurnoni skenarin