जवाबों:
मैं फ़ायरफ़ॉक्सfestival पर डिफ़ॉल्ट रूप में आवाज का उपयोग करने में कामयाब रहा ।
ऐसा करने के लिए, हमें फ़ाइल पर कुछ कॉन्फ़िगरेशन बदलने की आवश्यकता है /etc/speech-dispatcher/speechd.conf। लेकिन सबसे पहले, मुझे मूल विचार की व्याख्या करने की आवश्यकता है कि यह कैसे काम करता है। हम हमेशा देख सकते हैं कि speech-dispatcherकमांड का उपयोग करके कौन सी आवाज डिफ़ॉल्ट है spd-say:
spd-say "Hello. How are you?"
ऑन Ubuntu, डिफॉल्ट टेक्स्टो टू स्पीच (टीटीएस) आवाज जो आती है, speech-dispatcherवह जासूसी है । जब हम इस दूसरी कमांड का उपयोग करते हैं तो हम ठीक वैसी ही आवाज सुनते हैं:
espeak "Hello. How are you?"
ऐसा इसलिए होता है क्योंकि आउटपुट के रूप spd-sayमें सिर्फ espeakआवाजों का उपयोग किया जाता है। और अच्छी तरह से, फ़ायरफ़ॉक्स ऐसा ही करता है, यह रीडर व्यू मोड ( ) speech-dispatcherमें वेब पेज पढ़ने के लिए आउटपुट के रूप में जो भी आवाज कॉन्फ़िगर की जाती है, उसका उपयोग करता है ।Ctrl+Alt+R
इसलिए, हमें यहाँ क्या करना है, spd-sayकमांड में आउटपुट के रूप में आने वाली आवाज़ को बदलना है और, एक बार जब हम ऐसा करते हैं, तो फ़ायरफ़ॉक्सTTS voice डिफ़ॉल्ट रूप में भी एक अलग उपयोग करने जा रहा है । मैं इसे festivalआवाज के साथ काम करने की प्रक्रिया का वर्णन करने जा रहा हूं , लेकिन मेरा मानना है कि प्रक्रिया एक ही है यदि आप एक अलग चलाना चाहते हैं TTS voice। सबसे पहले, हमें त्योहार स्थापित करने की आवश्यकता है :
sudo apt-get install festival
हम टाइप करके कमांड लाइन में इसकी आवाज का परीक्षण कर सकते हैं:
echo "Hello. How are you?" | festival --tts
अब हमें फ़ाइल बदलने की आवश्यकता है speechd.conf। तो हम sudo vi /etc/speech-dispatcher/speechd.confटर्मिनल पर टाइप करते हैं और लाइन 205 के आसपास हम निम्न टिप्पणी वाले विन्यास देखेंगे।
#AddModule "espeak" "sd_espeak" "espeak.conf"
AddModule "festival" "sd_festival" "festival.conf"
#AddModule "flite" "sd_flite" "flite.conf"
#AddModule "ivona" "sd_ivona" "ivona.conf"
#AddModule "pico" "sd_pico" "pico.conf"
#AddModule "espeak-generic" "sd_generic" "espeak-generic.conf"
#AddModule "espeak-mbrola-generic" "sd_generic" "espeak-mbrola-generic.conf"
#AddModule "swift-generic" "sd_generic" "swift-generic.conf"
#AddModule "epos-generic" "sd_generic" "epos-generic.conf"
#AddModule "dtk-generic" "sd_generic" "dtk-generic.conf"
#AddModule "pico-generic" "sd_generic" "pico-generic.conf"
#AddModule "ibmtts" "sd_ibmtts" "ibmtts.conf"
#AddModule "cicero" "sd_cicero" "cicero.conf"
# DO NOT REMOVE the following line unless you have
# a specific reason -- this is the fallback output module
# that is only used when no other modules are in use
#AddModule "dummy" "sd_dummy" ""
# The output module testing doesn't actually connect to anything. It
# outputs the requested commands to standard output and reads
# responses from stdandard input. This way, Speech Dispatcher's
# communication with output modules can be tested easily.
# AddModule "testing"
# The DefaultModule selects which output module is the default. You
# must use one of the names of the modules loaded with AddModule.
#DefaultModule espeak
DefaultModule festival
यहां दो बदलाव करना आवश्यक है:
AddModule "festival" "sd_festival" "festival.conf"DefaultModule festivalहमें इसे डिफ़ॉल्ट के रूप में उपयोग festivalकरने के लिए सर्वर के रूप में चलाने की आवश्यकता है speech-dispatcher। हम कमांड का उपयोग करते समय खुलने वाली फ़ाइल के अंत में निम्न पंक्ति जोड़कर ऐसा कर सकते हैं sudo crontab -e:
@reboot /usr/bin/festival --server
अब तो हो गया !! सिस्टम फ़ायरफ़ॉक्स को रिबूट करने के बाद और आउटपुट के रूप में वॉयस का उपयोग करेगा ।spd-sayfestival
मेरा मानना है कि नई आवाज़ें बनाने की प्रक्रिया Firefoxहमेशा एक जैसी रहेगी:
नई टीटीएस आवाज का मॉड्यूल जो हमने स्थापित किया है, उसे हटा दें /etc/speech-dispatcher/speechd.conf।
हम चाहते हैं कि टीटीएस आवाज के लिए एक नई डिफ़ॉल्ट लाइन सेट करें ( /etc/speech-dispatcher/speechd.conf)।
फ़ोल्डर के अंदर फ़ाइलों पर निर्दिष्ट पोर्ट पर एक सर्वर चलाएं /etc/speech-dispatcher/modules/।
उस पर मेरा ध्यान क्या कहा जाता है कि वहां इवोना आवाज़ों के लिए एक मॉड्यूल है । इवोना एक मालिकाना उत्पाद है और आज इसे इस्तेमाल करने का एकमात्र तरीका (जहाँ तक मुझे पता है) पे- ए -यू-गो सेवा के रूप में है AWS, लेकिन इसकी आवाजें वास्तव में अच्छी हैं और वे बहुत स्वाभाविक लगती हैं।
फ़ाइल /etc/speech-dispatcher/modules/ivona.confको पोर्ट 9123 पर एक सर्वर को सुनने के लिए कॉन्फ़िगर किया गया है। मुझे लगता है कि शायद एक स्थानीय सर्वर को चलाने का एक तरीका है जो कि इवोना की आवाज़ों का उपयोग करता है जो मेरा उपयोग कर AWS APIsरहा है (मुझे यकीन नहीं है, लेकिन शायद इस Node.js ऐप के एक हिस्से का उपयोग करके। यह पहले से ही विकसित है) ... और यदि यह संभव है, तो इसका मतलब है कि सिस्टम की डिफ़ॉल्ट आवाज के रूप में उबंटू पर इवोना को चलाना भी संभव है और इसके परिणामस्वरूप फ़ायरफ़ॉक्सreader view mode पर इसका उपयोग करें । हालांकि मुझे नहीं पता कि अब इसे कैसे करना है, यह एक दिलचस्प संभावना की तरह दिखता है।
फ़ायरफ़ॉक्स रीडर मोड के नैरेट फ़ंक्शन द्वारा उपयोग की जाने वाली आवाज़ें उस प्लेटफ़ॉर्म पर निर्भर करती हैं जिस पर आप इसे चलाते हैं। लिनक्स पर, फायरफॉक्स speech-dispatcherपाठ को कृत्रिम भाषण देने के लिए उपयोग करेगा ।
इसलिए आपने अपने भाषण-डिस्पैचर सेटिंग्स ( /etc/speech-dispatcher/speechd.conf) में जो कुछ भी कॉन्फ़िगर किया है उसे उठाया जाना चाहिए और फ़ायरफ़ॉक्स द्वारा उपयोग किया जाना चाहिए। भाषण-डिस्पैचर के लिए विभिन्न इंजन और आवाजें उपलब्ध हैं, जिनमें से कुछ को उबंटू पैकेज, जैसे speech-dispatcher-espeak-ngया के माध्यम से स्थापित किया जा सकता है speech-dispatcher-festival।
फ़ायरफ़ॉक्स रीडर जीयूआई के भीतर से आवाज़ों / भाषाओं को चुनने के लिए सीमित समर्थन है, लेकिन अधिकांश सेटिंग्स को ओएस की ओर से बनाया जाना है, जो कि speechd.confलिनक्स पर है।
about:configयदि आप "नैरेट" खोजते हैं तो कुछ सेटिंग्स संवाद के माध्यम से उपलब्ध हैं :
मैंने दोनों में अलग-अलग सेटिंग्स के साथ काफी प्रयोग किया, about:configऔर speechd.conf, लेकिन काम करने के लिए कुछ भी नहीं मिला, लेकिन डिफ़ॉल्ट जो उबंटू के साथ आता है। मुझे लग रहा है कि फ़ायरफ़ॉक्स और भाषण-डिस्पैचर के बीच का इंटरफ़ेस बहुत स्थिर नहीं है, लेकिन शायद आप अधिक भाग्यशाली प्रयोग कर रहे हैं।
इस आदमी: https://bbs.archlinux.org/viewtopic.php?id=217411 को लगता है कि आर्चलिनक्स को त्यौहार को आउटपुट के रूप में इस्तेमाल करने के लिए चीजों को कॉन्फ़िगर करने में अधिक सफलता मिली। मैंने Ubuntu 18.04 पर इसे पुन: पेश करने की कोशिश की, लेकिन इसके साथ चलने के लिए कभी भी फ़ायरफ़ॉक्स नहीं मिल सका।
मुझे किकस्टार्ट करने के लिए जवाब देने के लिए राफेल म्युनार्स्क को धन्यवाद । मैंने जो किया था यह रहा
apt install festival speech-dispatcher-festival festvox-{rablpc16k,kallpc16k,kdlpc16k} sox
festvox-{rablpc16k,kallpc16k,kdlpc16k} अंग्रेजी के लिए आवाज भाषाएं हैंsox, इसके बिना केवल पाठ का कुछ भाग जहाँ पढ़ा जाता हैsudo vim /etc/speech-dispatcher/speechd.conf
espeak-संबंधित विन्यास अक्षम करें और festivalएक को सक्षम करें
#AddModule "espeak-ng" "sd_espeak-ng" "espeak-ng.conf"
AddModule "festival" "sd_festival" "festival.conf"
#DefaultModule espeak-ng
DefaultModule festival
festivalसर्वर प्रारंभ करेंइसके बिना मुझे केवल कुछ वाक्य मिले।
/usr/bin/festival --server
फिर रीडर व्यू मोड पर जाएं और इसे आजमाएं।