2012-04-17 4 views
5

저는 현재 학교를위한 프로젝트를 만들고 있는데, 아이들을 가르치는 프로그램을 만들 계획입니다. 프로그램에 대한 나의 기본적인 생각은 문장을 만들어 낸 다음 Windows Anna에게 말하도록했다. 제 질문은 Java를 통해 Winodws Anna에 어떻게 액세스 할 수 있습니까? 이렇게하는 더 좋은 방법이 있습니까?자바 음성학 또는 언어 발음

감사

+0

소리에 대해 java api를 의미합니까? http://java.sun.com/products/java-media/speech/index.jsp? – Weeman

+0

사실 거기에 Windows 합성기를 호출하기위한 해결책이 있습니다 [1]. [1] : http://stackoverflow.com/questions/1040655/ms-speech-from-command-line – npe

+0

나는 질문이 수행이 프로그램이 인터넷에 액세스 할 수 있습니까? – Xyene

답변

3

프로그램 액세스 인터넷이 허용되는 경우 iSpeech을 사용할 수 있습니다.

API을 사용할 수 있지만 그 문제는 하루에 200 회 사용으로 제한된다는 것입니다.

iSpeech는 소리가 뚜렷하게 들립니다. 일반적으로 단어를 더 유창하게 발음하기 때문에 나는 피곤한 다른 TTS 엔진보다 윤곽이 더 깁니다. espeak 또는 FreeTTS입니다. 물론, 그것은 공기와 관련된 '바람'을 왜곡과 관련하여 '바람'이라고 발음 할 수도 있지만, 그 외에는 상당히 잘 말합니다.

또한 이전 경험이 없지만 명령 줄을 사용하여 MS 음성에 액세스하는 방법을 보여주는 기사를 발견했습니다 (Java를 통해 분명히 명령 할 수 있음). [ 여기에 좋은 article]입니다). 위치는 here입니다. 명령 줄에서, 당신이 모두 'SayDynamic.exe * 당신이 말을 할 텍스트 "를 입력합니다.

* 또는 SayStatic 페이지에서 사용할 수있는 다른 다운로드합니다.

이 방법은 더 나은 것 같다 인터넷 사용에 의존하지 않고 속도는 그렇지만 iSpeech뿐만 아니라 사물을 확실히 발음하지는 않습니다. 귀하의 프로그램이 온라인 일 때 iSpeech를 사용하고 오프라인 일 때 Say * .exe를 사용하는 것이 가장 이상적이라고 생각합니다.

이 사이트는 프로그램의 소스 코드도 제공하며, Microsoft Anna의 음성은 아니지만 소스에서 지정하고 다시 컴파일 할 수 있습니다.

희망이 있습니다.

+0

예,이 프로그램은 인터넷에 접속할 수 있습니다. –

+0

확인. 내 대답이 도움이 되었습니까? – Xyene

+0

안녕하세요, MS 음성 사용 방법을 보여주는 링크를 열 수 없습니다. –

1

당신은 윈도우에 설치 텍스트 음성 변환 API를 사용하여 명령 줄 utiity NirCmd를 사용할 수 있습니다.

따라서이 유틸리티를 Java 응용 프로그램과 함께 제공하고 적절한 명령 줄을 사용하여 실행하십시오.

+0

이 프로그램은 전체 텍스트를 말하는 것이 아닙니다. 이 대안이 있습니까? –

0

FreeTTS : 자바로 작성된 음성 합성기를 사용해보십시오.

Microsoft Speech API (SAPI)를 호출 할 수는 있지만 Java에서 수행하는 방법을 모르겠습니다.

NirCmd를 어떻게 호출 할 수 있습니까? NirCmd와 비슷하게 C#으로 텍스트를 읽을 수있는 도구를 직접 만들 수 있습니다. 텍스트는 txt 내에있을 수 있으며 도구는 txt에 대한 경로를 인수로 호출합니다. 당신은 쉽게 이와 같은 데모 프로젝트 적응할 수 : http://www.codeproject.com/Articles/19334/Text-to-Speech-using-Windows-SAPI

+0

지연된 응답을 드려 죄송합니다.하지만 Runtime.exec()을 사용하여 NirCmd를 호출했습니다. 대체 방법이 있습니까? –

+0

나는 논쟁에 대해 이야기하고 있습니다. "말하기 파일"인수로 시도하십시오. – Guillaume