Temat: Gadający router - Google TTS (text-to-speech)
Witam,
Instalując i bawiąc się możliwościami MPD (Music Player Daemon - instalacja opisana w: OpenWrt-Audio) pomyślałem, że oprócz odgrywania plików mp3 i strumieni audio, fajnie by był gdyby można odtworzyć komunikaty głosowe (mówione ludzkim głosem). Tylko skąd wziąć pliki mp3 z takimi komunikatami?
Można je samemu utworzyć. Dostępne są programy do czytania tekstu np. IVONA.
Jest jeszcze jeden program, a właściwie usługa - Google TTS (text-to-speech). Wchodzi ona w skład translatora tekstów Google. Na pewno każdy zna tą usługę http://translate.google.pl/#pl|en|Witaj. Pod tekstami znajdują się przyciski umożliwiające odsłuchanie oryginalnego i przetłumaczonego tekstu.
Po naciśnięciu któregoś z nich wysyłane jest zapytanie (z tekstem do zamiany) do serwera. Następnie serwer zwraca strumień audio (mp3 ) tekstu zamienionego na mowę (TTS - text-to-speech).
Np zapytanie TTS w języku polskim: http://translate.google.com/translate_t … mp;q=Witaj
Teraz należy tylko skierować ten strumień audio do mpd. Jednak nie udało się tego zrobić wprost. Serwer wymaga podania User-Agent string w zapytaniu. Komeda dla MPD odtwarzania strumienia (mpc add <audio_stream_url>) nie daje możliwości podania User-Agent (przynajmniej mnie się to nie udało). Trzeba było zapisać strumień do pliku mp3.
wget -U "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" -O /hdd/mpd/music/tts.mp3 "http://translate.google.com/translate_tts?tl=pl&q=Open%20WRT%20Bekfajer%20wersja%2010%200%203"
Zakładając, że w pliku konfiguracyjnym dla MPD (/etc/mpd.conf) zostały podane ustawienia:
music_directory "/hdd/mpd/music"
db_file "/hdd/mpd/database"
strumień audio został zapisany jako plik mp3 w: /hdd/mpd/music/tts.mp3
Wystarczy teraz załadować plik mp3 do MPD:
mpc update # aktualizacja MPD database
mpc clear # wyczyszczenie aktywnej playlisty
mpc add tts.mp3 # załadowanie do aktywnej playlisty pliku tts.mp3
mpc play # uruchomienie odtwarzania
... i mamy gadający router
Myślę, że można zastosować to rozwiązanie do różnych celów. Jakich? Zostawiam to wam. Jeśli ktoś z was znajdzie takie zastosowanie, proszę opiszcie to na tym forum.
Życzę miłej zabawy i pozdrawiam
Jarek