Jak działa mówienie w przeglądarce

Wyjaśmimy jak to się dzieje, że “Jolka mówi w przeglądarce”

Jest to odpowiedz na pytania, typu “dlaczego w mojej przeglądarce xxx Jolka mówi tak a w przeglądarce yyy inaczej”?

Speech Synthesis API

Do mówienia w przeglądarce stosujemy API przeglądarki:

implementacja i dostęp do tego api zależy od przeglądarki:

https://caniuse.com/#search=Speech%20Synthesis%20API

Kod po stronie Jolki

nasz kod sprowadza się do tych 3 podkreślonych linijek

Test w przeglądarce

na dowolnej stronie w konsoli przeglądarki wystarczy wkleić coś takiego:

var speech = new SpeechSynthesisUtterance("Cześć tu Jolka");
speech.lang = "pl-PL";
window.speechSynthesis.speak(speech);

Podsumowanie

Jeśli efekt mówienia w przeglądarce nie jest zadowalający, to należy to niezwłocznie zgłosić do producenta przeglądarki, bo źle / słabo zaimplementował Speech Synthesis API.
AI-Speaker jeszcze nie dostarcza Speech Synthesis API do przeglądarek Internetowych :wink:

1 polubienie

A jednak się da nawet w Androidzie 4.1.1 zmusić Jolkę do gadania :slight_smile: Chrome trzeba ściągnąć ręcznie gdyż w Google Play nie da się do tak starej wersji.
Maksymalna wersja Chrome obsługująca 4.1.1 to chrome beta w wersji 72.0.3626.14 lub 71.0.3578.99.

https://androidapksfree.com/chrome/com-android-chrome/download-old/chrome-71-0-3578-99-357809900-android-4-1-apk-download/

Żeby Jolka przemówiła po polsku trzeba doinstalować Zamiana tekstu na mowę + głos POLSKI i ustawić w opcjach - Język, klawiatura, głos
Zamiana tekstu na mowę - głos POLSKI

2 polubienia

Czy to jest jakieś ograniczenie przeglądarki (a także aplikacji ais), że dłuższe komunikaty Jolka nie czyta w całości tylko jakieś kilkadziesiąt znaków? Na głośniku czyta w całości.

tak, jest takie ogranicznie - niektóre przeglądarki nie czytają długich tekstów
dlatego obcinamy tekst wysyłany do przeglądarki do 250 znaków

ten kod masz na bramce w pliku
/data/data/pl.sviete.dom/files/usr/lib/python3.9/site-packages/homeassistant/components/ais_ai_service/__init__.py

możesz go zmieniać i sprawdzać jak to działa

jak poprawisz i będzie lepiej to możesz dostarczyć poprawkę dla wszystkich,
tu jest ten kod w github:

https://github.com/sviete/AIS-home-assistant/blob/beta/homeassistant/components/ais_ai_service/init.py#L3672

Tak działa Open Source - to dostęp do kodu źródłowego i wolność/możliwość jego modyfikacji

2 polubienia

dobrze - dziękuję. sprawdzę to. pozdrowienia :slight_smile:

Można by było tę wartość 250 zamienić na zmienną wtedy zmiana w kodzie będzie jeszcze łatwiejsza :slight_smile:

no to śmiało kolego, wiesz gdzie jest kod, jak umiesz coś ulepszyć to jesteśmy otwarci

:thinking: w sumie racja, mogę to zrobić sam ale jak coś popsuję bedzie na mnie :stuck_out_tongue:.
Jak stanę się posiadaczem bramki PRO1 bardziej “zaangażuje sie” w projekt bo coraz bardziej mi sie podoba.

1 polubienie