2011-08-29 10 views
8

Rozumiem, że to X-SAMPA XML sample, podobnie jak inne próbki here, a nawet here & here, ma zabrzmieć coś.Jaka jest prawidłowa składnia atrybutu fonemów w tekście XML systemu Android?

String text = "<speak xml:lang=\"en-US\"> <phoneme alphabet=\"xsampa\" ph=\"faIv\"/>.</speak>"; 
mTts.speak(text, TextToSpeech.QUEUE_ADD, null); 

Jednak z jakiegoś dziwnego powodu nic nie mówi (całkowita cisza).

Czego mi brakuje?

Dla wyjaśnienia: Moja próbka TTS aplikacja jest konfiguracja OK: Jeśli zmienię że . wcześniej </speak> tag dowolny słowo, Android TTS po prostu mówi, że słowo w porządku. Mój jedyny problem polega na tym, że nie jestem w stanie w żaden sposób wykorzystać <phoneme alphabet=\"xsampa\" ph=\"faIv\"/>.

Rozumiem, że . ma być cichy, ale potem, zgodnie z plakatami tych próbek, ma brzmieć fonemy XSAMPA w XML. czego mi brakuje?

Odpowiedz

1

Poprawna składnia tego, co próbujesz zrobić, jest dokładnie tak, jak napisałeś w swoim pytaniu. Jeśli Twój telefon jest skonfigurowany do używania domyślnego Pico TTS, to znaczy.

Pod Settings > Voice input & output > Text-to-speech settings > Default Engine upewnij się, że wybrano Pico TTS i wypróbuj ten sam kod teraz.

+0

Wow! To było to. Ten problem doprowadza mnie do szału przez bardzo długi czas, nawet nie podejrzewając, że inny silnik TTS może nie obsługiwać XSAMPA. Po wybraniu Pico, powyższa składnia działa zgodnie z oczekiwaniami. Dzięki! – an00b

1

Poprawną składnię dla phoneme element udokumentowano w dokumentacji W3C Speech Synthesis Markup Language.

Jak wspomniano w odpowiedzi Stack Overflow question 3648239 nie wszystkie elementy są poprawnie przetwarzane.

Istnieje dalsze wyjaśnienie błędu analizowania w tym google groups forum post, jednak wydaje się, że te błędy można zignorować.

Możesz znaleźć więcej informacji w TTS-for-android site w grupach Google, zamieszczając tam swoje pytanie.

Nie mogę odczytać próbek, ponieważ witryna nie działa. Nie jestem pewien, czy jest to tymczasowy problem. W późniejszym terminie sprawdzę, czy mogę je znaleźć.

+0

Dzięki +1 za badania. W moich desperackich poszukiwaniach możliwych wyjaśnień natknąłem się na wszystkie linki, które opublikowałeś, ale to nie pomogło rozwiązać zagadki. Zobacz akceptowaną odpowiedź powyżej. – an00b

Powiązane problemy