Yanıtlar:
festival
Sesi Firefox'ta varsayılan olarak kullanmayı başardım .
Bunu yapmak için dosyadaki bazı yapılandırmaları değiştirmemiz gerekiyor /etc/speech-dispatcher/speechd.conf
. Ama önce, nasıl çalıştığına dair temel fikri açıklamam gerekiyor. speech-dispatcher
Komutu kullanarak varsayılan olarak hangi sesin kullanıldığını her zaman görebiliriz spd-say
:
spd-say "Hello. How are you?"
Açık Ubuntu
, birlikte sağlanan varsayılan Texto Konuşma (TTS) sesli speech-dispatcher
olduğunu espeak . Bu yüzden bu diğer komutu kullandığımızda aynı sesi duyuyoruz:
espeak "Hello. How are you?"
Bunun nedeni seslerin çıktı olarak spd-say
kullanılmasıdır espeak
. Firefox da aynısını yapar, speech-dispatcher
web sayfalarını okuyucu görüntüleme modunda okumak için çıktı olarak yapılandırılan her sesi kullanır ( Ctrl+Alt+R
).
Yani, burada yapmamız gereken, spd-say
komutta çıkış olarak gelen sesi değiştirmek ve bunu yaptığımızda, FirefoxTTS voice
varsayılan olarak farklı bir ses kullanacak . festival
Sesle çalışmasını sağlamak için süreci açıklayacağım , ancak farklı bir çalıştırmak istiyorsanız prosedürün aynı olduğuna inanıyorum TTS voice
. İlk olarak, festivali kurmamız gerekiyor :
sudo apt-get install festival
Sesini komut satırında yazarak test edebiliriz:
echo "Hello. How are you?" | festival --tts
Şimdi dosyayı değiştirmemiz gerekiyor speechd.conf
. Bu yüzden sudo vi /etc/speech-dispatcher/speechd.conf
terminali yazıyoruz ve 205 hattının çevresine aşağıdaki yorum yapılan konfigürasyonları göreceğiz:
#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
Burada iki değişiklik yapmak gerekiyor:
AddModule "festival" "sd_festival" "festival.conf"
DefaultModule festival
Varsayılan olarak kullanmak için festival
sunucu olarak çalışmamız gerekir speech-dispatcher
. Komutu kullandığımızda açık olan dosyanın sonuna aşağıdaki satırı ekleyerek bunu yapabiliriz sudo crontab -e
:
@reboot /usr/bin/festival --server
Şimdi bitti !! Sistem yeniden başlatıldıktan sonra Firefox ve ses çıkışı spd-say
olarak kullanılacaktır festival
.
Yeni seslerin çalışması için prosedürün Firefox
her zaman aynı olacağına inanıyorum:
Yüklediğimiz yeni TTS sesinin modülünü açın ( /etc/speech-dispatcher/speechd.conf
).
İstediğimiz TTS sesi için yeni bir varsayılan satır ayarlayın ( /etc/speech-dispatcher/speechd.conf
).
Klasörün içindeki dosyalarda belirtilen bağlantı noktasında bir sunucu çalıştırın /etc/speech-dispatcher/modules/
.
Dikkatimi çeken şey, orada Ivona sesleri için bir modül olması . Ivona tescilli ürün ve bugün (aynı bildiğim kadarıyla) kullanmak için tek yol bir şekilde yapılır öde-you-go hizmet üzerinde AWS
, ama onun sesler gerçekten iyi ve çok doğal geliyor.
Dosya /etc/speech-dispatcher/modules/ivona.conf
belki Ivona benim kullanarak dile alır yerel sunucuyu çalıştırmak için bir yol var port 9123. üzerindeki bir sunucuya dinlemek üzere yapılandırılır AWS APIs
(Emin, ama belki bir kısmını kullanmıyorum bu node.js app ve bu mümkün ise, Ivona'yı Ubuntu üzerinde sistemin varsayılan sesi olarak çalıştırmak ve sonuç reader view mode
olarak Firefox'ta kullanmak da mümkün . Şimdi nasıl yapacağımı bilmesem de, ilginç bir olasılık gibi görünüyor.
Firefox okuyucu modunun anlatı işlevi tarafından kullanılan sesler, çalıştırdığınız platforma bağlıdır. Linux'ta, firefox speech-dispatcher
metni yapay konuşmaya dönüştürmek için kullanacak .
Dolayısıyla, konuşma dağıtıcı ayarlarınızda ( /etc/speech-dispatcher/speechd.conf
) yapılandırdığınız her şey firefox tarafından alınmalı ve kullanılmalıdır. Ubuntu paketleri, örneğin yoluyla kurulabilir bazıları konuşma memuru için çeşitli motorları ve sesler vardır speech-dispatcher-espeak-ng
ya speech-dispatcher-festival
.
Firefox okuyucu GUI'sinden seslerin / dillerin seçilmesi için sınırlı destek vardır, ancak çoğu ayarın linux'daki OS tarafında yapılması gerekir speechd.conf
.
about:config
"Anlat" için arama yaparsanız , bazı ayarlar iletişim kutusundan kullanılabilir :
Her ikisi de farklı ayarlarla biraz tecrübe, about:config
ve speechd.conf
, ama işin bir şey ama Ubuntu ile birlikte gelen varsayılan alamadım. Anladığım şey, firefox ve konuşma dağıtıcı arasındaki arayüzün çok kararlı olmadığı, ancak belki de daha şanslı bir deney yapıyorsunuz.
Bu adam: https://bbs.archlinux.org/viewtopic.php?id=217411 , Archlinux'u festivali çıktı olarak kullanmak için yapılandırma konusunda daha başarılı olmuş gibi görünüyor. Ben Ubuntu 18.04 üzerinde bu çoğaltmak çalıştı ama asla onunla çalıştırmak için firefox alamadım.
Rafael Muynarsk'a beni tekmelediği için cevap verdiği için teşekkürler . İşte yaptığım şey
apt install festival speech-dispatcher-festival festvox-{rablpc16k,kallpc16k,kdlpc16k} sox
festvox-{rablpc16k,kallpc16k,kdlpc16k}
ingilizce için sesli dillerdirsox
, onsuz metnin sadece bir kısmı okundusudo vim /etc/speech-dispatcher/speechd.conf
İlgili espeak
yapılandırmayı devre dışı bırak ve festival
birini etkinleştir
#AddModule "espeak-ng" "sd_espeak-ng" "espeak-ng.conf"
AddModule "festival" "sd_festival" "festival.conf"
#DefaultModule espeak-ng
DefaultModule festival
festival
Sunucuyu başlatOnsuz sadece bazı syntences var.
/usr/bin/festival --server
Ardından okuyucu görüntüleme moduna gidin ve deneyin.