गूगल स्पीच इंजिनचा वापर करुन मजकूराला भाषणामध्ये रूपांतरित करण्यासाठी आज मी आपल्याबरोबर एक अतिशय उपयुक्त स्क्रिप्ट सामायिक करतो. या स्क्रिप्टचा मुख्य फायदा असा आहे की तो Google द्वारे लागू केलेली 100-बाइट मर्यादा "फेटाळतो". वास्तविक, खरं सांगायचं तर ते या मर्यादेचा आदर करते परंतु सर्व ओळी आपोआप पाठवते, याचा अर्थ असा होतो की वापरकर्त्याने ही मर्यादा लक्षात घेत नाही. मुख्यतः या मर्यादेमुळे आणि आम्ही Google भाषांतरात प्राप्त करू शकू तितकेच दर्जेदार रुपांतर बहुतेक डिमांडर्सच्या लक्षात येईल आणि संपूर्ण मजकूर एकाच वेळी पास करणे शक्य नाही. एक सकारात्मक बिंदू म्हणून, हे जोडले पाहिजे की ही स्क्रिप्ट आपल्याला मजकूराची रूपांतरित करण्याची भाषा निर्दिष्ट करण्याची परवानगी देखील देते.
स्पष्टीकरण दिल्यानंतर, आपण पुढील पाय steps्या काय आहेत ते पाहूया.
अनुसरण करण्यासाठी पायऱ्या
९.- T2s.sh नावाने एक फाईल तयार करा.
९.- पुढील सामग्री कॉपी करा:
#! / बिन / बॅश #################################### # डॅन फाउंटेन द्वारा लिखित भाषण स्क्रिप्ट # # UsemosLinux द्वारे सुधारित # # TalkToDanF@gmail.com # ################################# इनपुट = $ * STRINGNUM = 0 ary = ($ {इनपुट: 2}) प्रतिध्वनी "---------------------------" प्रतिध्वनी स्क्रिप्ट डॅन फाउंटेन द्वारा "प्रतिध्वनी" टॉकटोडॅनएफ @ gmail.com "प्रतिध्वनी" --------------------------- "" $ {! ary [@]} "do SHORTTMP [मधील की साठी $ STRINGNUM] = "$ OR SHORTTMP [$ STRINGNUM]} $ {ary [$ की]}" LENGTH = $ (प्रतिध्वनी $ {# शॉर्टटीएमपी [$ STRINGNUM]}) #echo "शब्द: $ की, $ {ary [$ की] # "#echo" यात जोडत आहे: $ STRINGNUM "जर [[" $ LENGTH "-lt" 100 "]]; नंतर # नवीन नवीन रेखांकन प्रारंभ करीत आहे शॉर्ट [$ STRINGNUM] = $ OR शॉर्टटीएमपी [$ STRINGNUM] STRING अन्य STRINGNUM = $ (($ STRINGNUM + 1)) शॉर्टटीएमपी [$ STRINGNUM] = "$ {अॅरी [$ की] SH" शॉर्ट [ $ STRINGNUM] = "$ {ary [$ key]}" "$ {! शॉर्ट [@]}" do #echo "लाइनमध्ये की साठी फाय केले: $ की आहे: $ OR शॉर्ट [$ की] e" प्रतिध्वनी " प्ले करणारी रेखा: m (($ STRINGNUM + 1)) "mplayer" http://translate.google.com/translate_tts पैकी late (($ की +1))? म्हणजे = यूटीएफ -8 आणिtl = $ {1} & q = $ OR लहान [$ की] done "पूर्ण
९.- स्क्रिप्टला अंमलात आणण्यास परवानगी द्या:
sudo chmod + x t2s.sh
९.- पॅरामीटर्स म्हणून पास होणारी स्क्रिप्ट कार्यान्वित करा: अ) मजकुराशी संबंधित भाषा कोड, ब) मजकूर रूपांतरित करा. उदाहरणार्थ:
./t2s.sh en रूपांतरित करण्यासाठी हा एक अतिशय मनोरंजक मजकूर आहे.
तेच आहे, आशा आहे की आपण याचा आनंद घ्याल.
किती छान, आभारी आहे 😉
आणि मुलगी किती सुंदर आवाज करते, मला वाटते मी प्रेमात पडलो 😛
माफ करा, आपण मला चीनी सह मदत करू शकता? ते चीनी वर्ण ओळखत नाही, फक्त पिनयिन.
मेलची तपासणी करणार्या स्क्रिप्टसाठी किंवा वैयक्तिकृत गजरासाठी जसे की जागे झाल्यावर आपल्याला अंदाज आणि प्रलंबित संदेश एक्सडी सांगेल हे चांगले आहे
येथे मी चाचणी व्हिडिओ बनविला 😛 https://www.youtube.com/watch?v=O3IeK7PjA_0
चांगले! धन्यवाद!
हे छान वाटले, मला फक्त mpg123 install स्थापित करावे लागले
मला mpg123 स्थापित करावे लागले परंतु ते छान होते, म्हणून जर ते काही शब्द स्वीकारत नसेल तर ते योग्य टिक लेटर इ. लिहिते.
EH EH
व्हायरस डेटाबेस अद्यतनित केला गेला (?)
apt update && ./t2.sh en व्हायरस डेटाबेस अद्यतनित केला गेला आहे
हाहाहा उत्कृष्ट, माझ्याकडे आधीपासूनच यासाठी काही उपयोग आहेत, विषयासक्त आवाज नाही शंका =), सामायिकरण केल्याबद्दल धन्यवाद
मॅक ओएसएक्स वापरकर्ता म्हणून, माझ्याकडे एमपीजी १२123 चालू नसल्यामुळे स्क्रिप्ट वापरणे मला शक्य झाले नाही, म्हणून स्क्रिप्टमध्ये बदल करून व व्हीएलसीचा वापर करून आम्ही ते मॅक ओएस एक्स वर योग्यरित्या कार्य करू शकतो.
http://pastebin.com/C2Mkp1Qy
मुद्दा असा आहे की व्हीएलसी नक्कीच चालू राहते आणि कार्यवाही पूर्ण केल्यावर ती बंद होत नाही आणि ग्राफिकल इंटरफेस उघडण्यापासून रोखण्यासाठी तुम्ही सीव्हीएलसी वापरू शकता.
ते ठेवले जाऊ शकते
cvlc –play-and -स्थान «https://translate.google.com/translate_tts?tl=$sel$key]}»
जेणेकरून ते पुनरुत्पादनाच्या शेवटी बंद होते
नमस्कार मित्रांनो, मला ही चूक झाली, समस्या काय आहे हे कोणी मला सांगितले की ते पाहू
खेळण्याची ओळ: 1 पैकी 1
HTTP विनंती अयशस्वी: 404 आढळले नाही
[mpg123.c: 610] त्रुटी: HTTP स्त्रोतावर प्रवेश http://translate.google.com/translate_tts?tl=hola&q= अयशस्वी.
[कोड] रेखा खेळणे: 1 पैकी 1
HTTP विनंती अयशस्वी: 404 आढळले नाही
[mpg123.c: 610] त्रुटी: HTTP स्त्रोतावर प्रवेश http://translate.google.com/translate_tts?tl=hola&q= अयशस्वी. [/ कोड]
समस्या अशी आहे की आपण स्क्रिप्ट चुकीचे वापरत आहात.
जेव्हा आपण हे चालवता, तेव्हा आपल्याला पोस्टमधील उदाहरणाप्रमाणे मजकूराची भाषा प्रथम पॅरामीटर म्हणून पाठवावी लागेल.
मी तुम्हाला आणखी एक उदाहरण देतो:
./t2s.sh मधील हे एक साधे उदाहरण आहे.
लक्षात घ्या की ts2.sh नंतर हे "en" (ज्याचा अर्थ "इंग्रजी", म्हणजे इंग्रजी) आहे. स्पॅनिशसाठी, "ईएस" आणि नंतर आपण रूपांतरित करू इच्छित त्या भाषेतील वाक्यांश वापरा.
मिठी! पॉल.
तुम्हाला स्पोकन कमांड नंबर माहित आहे का? हे
espeak -v आहे «हॅलो»
होय पण समान नाही. हा आवाज खूपच चांगला आहे. 🙂
आम्ही सहमत आहोत!
धन्यवाद!
ज्यांना mpg123 -q सह समस्या आहे किंवा ते आवडत नाहीत त्यांच्यासाठी आपण mplayer वर स्विच करू शकता
mpg123 -q "http://translate.google.com/translate_tts?tl=$ পরিবার 1-lex.europa.eu&q=$eSHORT পরিবার$key]}"
mplayer «http://translate.google.com/translate_tts?tl=$ পরিবার 1 तास&q=$selSHORT পরিবার$key])
चांगले "एमप्लेअर वास्तविक-शांत" आहे जेणेकरून ते मजकूरासह आउटपुट भरत नाही
माझ्या अनुप्रयोगांसाठी Google वापरण्याची एक चांगली कल्पना मला एक हातमोजा सारखी सूट करते.
http://github.com/alfa30/t2v
आणखी एक प्रश्न; कोणी मला आउटपुट ऑडिओ रेकॉर्ड कसे करावे हे सांगू शकेल ???
मी स्वतः उत्तर देतो, कारण मला नुकतेच ते मिळाले. Mpg123 वापरुन, मी स्क्रिप्टची ओळ 38 सुधारित केली आहे, हे दिसत आहे.
mpg123 -q -w Audio.wav «http://translate.google.com/translate_tts?tl=$ পরিবার1-lex.europa.eu&q=$selSHORT পরিবার$key]}
मी -w ऑडिओ.वॅव्ह जोडले आहे. हे वाक्यांशाच्या ऑडिओसह एक wav फाईल तयार करते, परंतु जसे मी ते सोडले आहे, तसे ऐकले जात नाही. आपल्यालासुद्धा हा वाक्य ऐकायचा असेल तर आपल्याला आणखी एक ओळ जोडावी लागेल. आपण दोघेही यासारखे दिसाल:
mpg123 -q -w ऑडिओ.वॅव्ह «http://translate.google.com/translate_tts?tl=$ পরিবার 1 तास &q=$selSHORT পরিবার}key]}» &
mpg123 -q "http://translate.google.com/translate_tts?tl=$ পরিবার 1-lex.europa.eu&q=$eSHORT পরিবার$key]}"
नक्कीच हे दुसर्या कार्यक्षम आणि स्वच्छ मार्गाने केले जाऊ शकते, परंतु ते किमान माझ्यासाठी कार्य करते.
उत्कृष्ट जोसे जीडीएफ, मी तुमची पद्धत खूप चांगले निकाल, अभिवादन देऊन वापरली.
दुसर्या अंमलबजावणीत रहदारी वाचविण्यासाठी आपण प्रथम तयार केलेल्या .wav चे पुनरुत्पादन करू शकता
ठीक आहे, आम्ही स्थापित केलेला प्लेअर वापरत आहे. उदाहरणार्थ, व्हीएलसी प्लेयरसह असे होईलः
vlc Audio.wav
तसेच, जो व्हीएलसी म्हणतो, टर्मिनलद्वारे कार्य करणार्या इतर कोणत्याही प्लेयरला म्हणतो.
आणि प्रत्येक वेळी स्क्रिप्ट वापरली जात असताना फाइल ओव्हरराईट करणे टाळण्यासाठी व्हेरिएबल नावासाठी वापरावे. असे नाव द्या की वापरकर्त्याने सुरू करण्यापूर्वी (कमांड वाचण्यासाठी) ठेवले असेल ... परंतु ते कर्ल कर्लिंग होईल
मी ते पीएचपीमध्ये केले (तारांकित फोन सिस्टमसाठी ऑडिओ तयार करण्यासाठी *)
<?php
$ url = 'http://translate.google.com/translate_tts?ie=UTF-8&q={क्वेरी}% 0 ए & टीएल = आहे & अधि = इनपुट ';
जर (गणना ($ argv) <= 1)
$ नाव = बेसनाव (g आर्गेव्ह [0]);
मर ($ नाव. 'वापर:'. $ नाव. '
}
अॅरे_शिफ्ट (g आर्जीव्ही);
$ क्वेरी = implode ('', g argv);
$ फाइलनाव = str_replace (अॅरे ('', ',', ','. '),' - ', $ क्वेरी);
$ फाइलनाव = str_replace ('-', '-', $ फाइलनाव);
; url = str_replace ('{क्वेरी}', कच्चेरलेन्कोड ($ क्वेरी), $ url);
$ सीएच = कर्ल_इनिट ();
curl_setopt ($ ch, CURLOPT_URL, $ url);
curl_setopt ($ ch, CURLOPT_HEADER, 0);
curl_setopt ($ ch, CURLOPT_REmittedTRANSFER, खरे);
$ परिणाम = curl_exec ($ ch);
curl_close ($ ch);
$ मार्ग = getcwd (). '/'. $ फाईलनाव;
file_put_contents ($ पथ. '. mp3', $ परिणाम);
@exec ("sox {$ path} .mp3 -b 16 -r 8000 -t wavpcm {$ पथ} .wav");
@ युनिलिंक ($ पथ. '. mp3');
या आज्ञेसह मी आऊटपुट ऑडिओ रेकॉर्ड करण्यापूर्वी कसे केलेः
arecord ~ / zhongwen.mp3 & ./t2s.sh zh ni hao; fg
आणि शेवटी रेकॉर्डिंग थांबविण्यासाठी ctrl + c.
मी कधीही php वापरला नव्हता
पण चालू असताना:
php5 टेक्स्ट-टू-स्पीच.पीपीपी हॅलो आहे
कोन्सोला हे होस्ट करते:
sox अयशस्वी स्वरूपने: फाईल विस्तारासाठी कोणतेही हँडलर `mp3 ′
कोणत्याही योगदानाचे कौतुक केले जाते, मी नंतर पुन्हा प्रयत्न करेन.
गूगल भाषा अनुवादकांसाठी 2 अॅप्स + मजकूरापासून ते भाषांतरः
http://www.linuxhispano.net/2014/05/29/traductor-de-google-voz/
मला वाटते की रूपांतर करण्याचा हा एक चांगला मार्ग आहे, लिनक्स> _ साठी इतर पर्यायांइतका आवाज तितकासा वाईट नाही
साध्या मजकूर फाईल वाचण्याचा कोणताही मार्ग आहे?
संपूर्ण पुस्तके ऑडिओमध्ये रूपांतरित करणे खूप उपयुक्त ठरेल
बरं, हे माझ्यासाठी कार्य करत नाही, हे का माहित नाही, हे का उद्भवते:
xxxxx: ~ / दस्तऐवज / लिनक्स $ ./t2s.sh हॅलो आहे
---------
डॅन फाउंटेन यांचे भाषण स्क्रिप्ट
TalkToDanF@gmail.com
---------
खेळण्याची ओळ: 1 पैकी 1
HTTP_open: HTTP / 1.0 400 वाईट विनंती
http://translate.google.com: अशी कोणतीही फाईल किंवा निर्देशिका नाही
मी mpg123 स्थापित केले आहे आणि मी थोडे चाचण्या केल्या आहेत आणि काहीही नाही…. आगाऊ धन्यवाद
नमस्कार, आवाज ऐकण्यासाठी आणि अनुवादकाचे शब्द रेकॉर्ड करण्यासाठी या स्क्रिप्टने माझी चांगली सेवा केली आहे.
खरं तर, मी स्क्रिप्टमध्ये माझ्या आवश्यकतेनुसार ती बदलण्यासाठी सुधारित केली आहे: मजकूरातील शब्दांची यादी (लेमरिओ) भाषणात रूपांतरित करा; माझा आवाज wav मध्ये सेव्ह करा, ogg मध्ये रूपांतरित करा आणि त्यांना वाचलेल्या शब्दानुसार नाव द्या.
शब्द सूचीसह फाईल जेथे आहे तेथे मार्ग व व्हॉईस ऑडिओ सेव्ह करायचा असा मार्ग दाखवण्यासाठी केडीअलॉगचा उपयोग केला.
जेव्हा डब्ल्यूएव्ही ते ओजीजी रूपांतरण समाप्त होते, तेव्हा ते दोन फोल्डर्स तयार करते जिथे एका बाजूला वाव आणि दुसर्या ओग संग्रहीत असतात.
प्रारंभी मला राग आला कारण त्याने उच्चारणांसह शब्द योग्यरित्या वाचले नाहीत, परंतु मला असे आढळले की कोडमध्ये आपल्याला "es & ie = UTF8" जोडावे लागेल. क्षणभर मी वर्ण एन्कोडिंग विसरलो.
मी आपल्यास तयार केलेल्या स्क्रिप्टचा कोड सोडतो जे यामुळे आपल्याला मदत करते:
######################################################################################################## #######################################################################
#! / बिन / बॅश
##########################################################################################
# मजकूर ते भाषण भाषण #
# इग्नासिओ क्रूझ मार्टिनेज # रुपांतर
# मेल गुप्त आहे एक्सडी #
##########################################################################################
कर्करोगाचा पथ आणि नाव निर्दिष्ट करण्यासाठी # केडीई संवाद बॉक्स
soyunarchivo = $ (kdialog putinputbox «फाईलचा मार्ग आणि नाव प्रविष्ट करा (त्या असल्यास विस्तारासह):»)
व्हॉईस फायलींसाठी गंतव्य फोल्डर निर्दिष्ट करण्यासाठी # केडीई संवाद बॉक्स
पथ = $ (केडीअलॉग इनपुटबॉक्स voice व्हॉइस ऑडिओ जतन करण्यासाठी पथ प्रविष्ट करा: »)
मांजरीद्वारे # मजकूर फाईलच्या सर्व ओळी वाचल्या जातात, प्रत्येक ओळीत एकच शब्द असतो
मी in (मांजरी $ सोयूनफाइल) मध्ये
do
प्रतिध्वनी
# गूगल ट्रान्सलेशन वापरून भाषणात रूपांतरित करणे, एन्कोडिंग विसरू नका जेणेकरून ते उच्चारण वाचतील
mpg123 -q -w "$ पथ" $ 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"
# ffmpeg वापरुन wav फाईल्सना og मध्ये रुपांतरित करा
ffmpeg -i "$ पथ". i.wav -acodec libvorbis "$ पथ" $ i.ogg
पूर्ण झाले
# या ओळींद्वारे डब्ल्यूएव्ही किंवा ओजीजीमध्ये व्हॉईस फायली संयोजित करण्यासाठी फोल्डर्स तयार केल्या आहेत
mkdir "$ पथ" डब्ल्यूएव्ही
mv "$ पथ" *. wav "$ पथ" WAV
mkdir "$ पथ" OGG
mv "$ पथ" *. ogg "$ पथ" OGG
जॉब दर्शविण्यासाठी # केडीई डायलॉग बॉक्स संपला आहे
kdialog gmsgbox 'प्रक्रिया समाप्त'
######################################################################################################## #############################################################
आता, आपल्यापैकी कोणास व्युत्पन्न केलेल्या व्हॉइस फायली वापरण्याच्या परवान्याबद्दल माहिती आहे?
कॉपीराइट आणि संबंधित गोष्टींसाठी मर्यादा. मला हे आवडते कारण मी यापैकी काही व्हॉईस फायली साक्षर होण्याच्या लोकांना आधार देण्यासाठी वापरण्याची योजना आखली आहे, मुळात हा एक नफा प्रकल्प आहे.
आणि हे असे आहे की स्पॅनिश भाषेसाठी या साधनाची उत्कृष्ट ओळख आहे, दुर्दैवाने लिनक्समध्ये असे काहीही नाही. गेस्पेकरबरोबर एकत्र येण्यास एमब्रोलाने मला खूप त्रास दिला आहे.
धन्यवाद आणि भेटू.
कल्पना नाही ... Google Translator परवान्याकडे पहावे लागेल.
स्क्रिप्ट माझ्यासाठी कार्य करीत नाही, वरवर पाहता ही URL शी संबंधित एक समस्या आहे ज्यांना रस आहे त्यांना ही योग्य URL आहे:
http://translate.google.com/translate_tts?tl=es&q=Hola
नमस्कार! मी आपल्या स्क्रिप्टसह चाचण्या करीत आहे आणि ते अंमलात आणताना मला सांगितले की मला ऑडिओ सापडला नाही, म्हणून मी यूआरएल प्रविष्ट केली आहे आणि असे दिसते आहे की श्री गूगलने कॅप्चा लावला आहे ...
स्क्रिप्ट अद्यतनित करा