마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 스튜디오 tts 관련 질문드립니다

0 추천
한 글자씩 받은 것 들을 배열에 저장하고 마지막에 TextToSpeech 기능을 이용하여 TTS 기능을 사용하는 것인데 현재는 예를 들어 
h, e, l, l, o를 입력하면 이 기능이 작동하질 않고 만약 i, n 을 입력하면 '인' 이라고 읽질 않고 '아이', '엔' 이런 식으로 읽습니다. 그리고 아예 4글자를 넘어가면 
이렇게 한 글자씩도 읽질 못합니다. 제가 원하는 동작은 
한 글짜식 아스키코드를 입력 받고(8비트 배열), 이를 배열에 저장하여 마지막에 speak라는 메소드를 이용하면 이 기계 아나운서가 쭉 읽어주는 
ex) h, e, l, l, o를 입력시 '헬로우' 라고 읽는 기능을 원하고 있습니다. 어떤 부분이 잘못되었는지 알려주시면 감사하겠습니다!

mBtnTTS.setOnClickListener(new Button.OnClickListener() {

    @Override

    public void onClick(View view) {

        tts.setPitch(1.0f);         // 음성 톤은 기본 설정

        tts.setSpeechRate(1.0f);

 

 

        tts.setLanguage(Locale.KOREAN);

 

 

        tts.speak(mTvReceiveData.getText().toString(), TextToSpeech.QUEUE_FLUSH, null);

 

        mTvReceiveData.setText(null);

 

 

    }

});

 

 

mBluetoothHandler = new Handler() {

    public void handleMessage(Message msg) {

        if (msg.what == BT_MESSAGE_READ) {

            String readMessage =null ;

 

            try {

                readMessage = new String((byte[]) msg.obj, "UTF-8");

 

 

                mTvReceiveData.append(readMessage);

 

                } catch (UnsupportedEncodingException e) {

                e.printStackTrace();

            }

             

        }

         

        }

    };

}
zxzx2468 (120 포인트) 님이 2020년 5월 28일 질문

답변 달기

· 글에 소스 코드 보기 좋게 넣는 법
· 질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면 로그인하거나 혹은 가입 하세요.
...