슈슞
62
2021-02-17 16:06:15
1
115

안드로이드 SpeechRecognizer과 AudioRecord 질문드립니다



안녕하세요~ 웹개발만 하다가 이번에 안드로이드를 처음해보는 초보입니다!


메인 액티비티에서 

1. SpeechRecognizer로 구현한 STT 기능

2. AudioRecord를 사용한 실시간 음성값 파형(시각화)

를 같이 사용하고 싶습니다


두개의 기능을 각자의 일반 class로 모듈화 한 후 액티비티에 객체로 불러와서 사용하는 식으로 진행했는데

하나가 되면 하나가 안되네요 ;; 구글링해봤을때 SpeechRecognizer가 AudioRecord 객체를 포함한대서 같이 사용할 수 있을 줄 알았어요....


아예 진행방법이 잘못된건지, 아니면 가능한데 1, 2 클래스 모두 초기화 후 객체생성을 해서 그런건지

아니면 원래 안 되는것인지... 감이 안잡힙니다 ㅠ_ㅠ . . .


어떤식으로 진행하면 좋을지 의견 부탁드립니다!

바쁘시더라도 답 달아주시면 정말 감사하겠습니다 ㅠ_ㅠ

0
  • 답변 1

  • Willee21
    119
    2021-02-18 10:24:44

    보통 이런 문제는 다음과 같은 병목현상에서 발생합니다.

    음성 입력을 받아서 그걸 바이트   배열이나 파일로 저장한 후에,
    그걸로 STT를 처리하게 됩니다.

    또 파형도 마찬가지죠. 음성입력을 바이트 배열같은 것으로 받아서
    퓨리에 변환을 하고 그걸 파형으로 그립니다.

    두개를 따로 구현해서 같이 쓰려고 하면
    음성입력을 서로 가져오려고 하니까 안되죠.

    가능한 음성입력을 받아서 다음 처리를 하는 구간이 비슷한 샘플을 찾아서
    음성입력을 받아서 바이트 배열로 변환하는 부분까지 소스가 유사하면,

    거기서 파형 그리는 놈으로 Async Taks로 던지고,
    또 Async가 지원되는 STT를 처리하는 것이죠 (Async Taks로 하던지요)

    어떤 오픈소스를 가져다 쓰려면,
    일단은 앞단이 유사한 오픈소스를 선택해야 합니다.

    개념은 일단 그렇습니다.

    good luck 2 u~!

  • 로그인을 하시면 답변을 등록할 수 있습니다.