Czytanie plików napisanych przez program przez np. IVONĘ

1

Przyszło mi do głowy zrobić pewien program. Program ten zapisywałby pewne dane do pliku (ściągnięte ze strony, to umiem) i potem te pliki czytałby syntezator Ivona.

Najchętniej zrobiłbym to w Pythonie, znalazłem nawet to: http://developer.ivona.com/ivona-tts-saas/saas-tutoriad-net/saas-net-2-streaming-audio-in-real-time ale nie ma tam strony dotyczącej polskiego języka :// może coś innego ktoś zaproponuje ? Ewentualnie mogę javy jeszcze użyć ;)

0

Jeszcze jedno pytanie - czy dałoby radę (w Pythonie) wykorzystać program, który jest już zainstalowany na komputerze? To by było nawet lepsze rozwiązanie:) proszę o jakieś podpowiedzi

1

Możesz w Pythonie tylko że pewnie mi osobiście było by to o wiele łatwiej zrobić w Delphi, jako że tylo taki język znam w stoniu wystarczającym. Do pobierania ze strony użył bym Synapse (szczególnie będzie łatwiej jeżeli strona jest po HTTPS) lub Simple Tcp (tylko wtedy trzeba ręcznie "rzeźbić" w nagłowkach pakietów). Następnie do komunikacji z Ivoną (ją używam statego Expressivo z głosem Jacka i to tylko czasami) spokojnie można komunikować się przez DDE co jest w miarę ok udokumentowane w pomocy Expressivo. Za pewne można się komunikować przez DDE Pythonem, ale w Delphi jest to łatwiejsze do zrobienia. Osobiście bawiłem się z tym w WinAPI. Dostosowując sobie kod modułu DdeMain aby działał pod WinAPI. Miało to na celu zrobienie prostego plugina dla AQQ, który sprawiał by że Jacuś czytał by teksty z aktywnego okna rozmowy, które się pojawiały. Źródła raczej nie zapodam, bo nie podaje gotowców. Chyba, że poświęcisz czas i założysz tutaj konto, a będziesz nadal zainteresowany kodem to wyjątkowo mogę podesłać na prywatną wiadomość to sobie byś zobaczył o i jak robię, ewentualnie podaj e-maila. Mogę się chyba czasami wyłamać, wątek nie ma tagów dotyczących Delphi / Lazarusa / Pascala to -123oho może go nie przeczyta i nie spiętnuje mnie ;)

0

Dziękuję, ale niestety Delphi nie znam :( Dlatego napisałem o Pythonie i Javie, ewentualnie. Chodziło mi bardziej o jakieś wskazówki, tutoriale, dokumentację, bo na razie znalazłem niewiele, i nie wiem, czy jest to np. możliwe, napisać program, który uruchamiałby Ivonę/Expressivo (z naciskiem na Ivonę;) zainstalowane u mnie na komputerze i czytający pliki wygenerowane przez mój program?

0

A może C# ? Skoro mówisz, że Java może być, to te języki podobne do siebie. Tutaj trochę informacji: http://msdn.microsoft.com/en-us/library/system.speech.synthesis.speechsynthesizer.aspx Pobieranie danych z internetu tutaj: http://www.centrumxp.pl/dotNet/578,kategoria,Kurs-Visual-Studio-2010-i-C.aspx lekcja 14 chyba jak dobrze pamiętam.

        private void odczytajNagranieSyntezator(string text, string nazwaGlosu)//metoda czytająca słowo
        {
            SpeechSynthesizer synth = new SpeechSynthesizer();
            try
            {
                
                synth.SelectVoice(nazwaGlosu);
                synth.Speak(text);
            }
            catch (Exception)
            {
                MessageBox.Show("Zainstaluj dowolny syntezator mowy.", "Komunikat");
            }
            finally
            {
                synth.Dispose();
            }
        }
 
0

Dużo nie drążyłem tematu, ale jak tylko znajdziesz jakiś czytacz IVONA obsługiwany z linii poleceń, to w Pythonie uruchomisz czytanie bez problemu przez popen.

http://forums.debian.net/viewtopic.php?p=162132:

ivonacl - a command line tool and voice server for Ivona TTS System.     
IVO Software Sp. z o. o. Copyright (c) 2006-2007. All Rights Reserved.   
http://www.ivosoftware.com                                               
                                                                         
Usage:                                                                   
 ivonacl voice [options] wave_file  - run in command line mode           
 ivonacl voice -Dd [options]        - run as a text-to-speech server     
                                                                         
Command line mode:                                                       
 --text, -t          text     - use text given as an argument             
 --file, -f          filename - read text from file, "-" means stdin   
The speech is written into wave_file in PCM wave format, wave_file can   
be "-", which means stdout and RAW format without header.               
                                                                         
Text-to-speech server mode:                                               
 -d                  - run in server mode                                 
 -D                  - run in server mode as a daemon                     
 --port              port - set server port number instead of default 9123
                                                                         
Common options:                                                           
 --load, -l          - load voice from specyfied voice file               
 --otype             fmt - output sample type: riff, raw                 
 --version                                                               
                                                                         
Voice and speech engine options:                                         
 --encoding          - input text encoding: iso8859-2, cp1250             
 --use_devel_enc     { 0, 1 }                                             
 --dur               [ 1, 99 ]  - set duration stretch                   
 --vol               [ 1, 99 ]  - set volume                             
 --read_full_numbers { 0, 1 }                                             
 --spell_capitals    { 0, 1 }                                             
 --read_dates        { 0, 1 }                                             
 --spell_mode        { 0, 1 }                                             
 --lts_spec_char     { 0, 1 }                                             
 --super_spelling    { 0, 1 }                                             
 --pause_break       - set length of pause breaks: 1 - regular, 2 - long 
 --dictionary        - use dictionary file

Tutaj masz małą receptę na Microsoft Speech: http://code.activestate.com/recipes/93025-speech-recognition-in-windows-using-the-ms-speech-/
O ile dobrze pamiętam, to IVONA się integruje jakoś w MS Speech... nie jestem pewien ale wydaje mi się, że można IVONĘ ustawić jako lektora systemowego...

1 użytkowników online, w tym zalogowanych: 0, gości: 1