텍스트 음성 변환 인터페이스 (MaryTTS)에서 오디오 스트림을 가져 와서 Peers를 사용하여 SIP RTP 세션에서 스트리밍하려고합니다.오디오 스트림을 PCM으로 변환
피어
public interface SoundSource {
byte[] readData();
}
정의하는 인터페이스 인하는 SoundSource
오디오 스트리밍하려고하고 MaryTTS는 AudioInputStream
에 String
을 synthesises. 나는 단순히
MaryInterface tts = new LocalMaryInterface();
AudioInputStream audio = tts.generateAudio("This is a test.");
SoundSource soundSource = new SoundSource() {
@Override
public byte[] readData() {
try {
byte[] buffer = new byte[1024];
audio.read(buffer);
return buffer;
} catch (IOException e) {
return null;
}
}
};
// issue call with soundSource using Peers
전화 반지의 라인, 스트림을 읽고 SoundSource
를 구현 동료에 그것을 밖으로 버퍼링을 시도, 나는 대신에 합성 된 음성의 속도가 느린, 낮은 시끄러운 소리를들을 수 있습니다. 나는 그것이 SIP RTP 세션이 기대하는 오디오 포맷으로 뭔가있을 수 있다고 생각한다. Peers 문서 상태 이후
음원은 선형 PCM 8kHz, 16 비트 서명, 모노 채널, 리틀 엔디안.
AudioInputStream
을 이러한 요구 사항을 충족 시키려면 어떻게 변환합니까? 내가 아는