IT이야기

코르도바/자바스크립트 오디오 녹음

cyworld 2022. 5. 18. 21:59
반응형

코르도바/자바스크립트 오디오 녹음

코도바, 부에즈, 온센 UI(부이에스용)를 이용한 새로운 앱에 대해 조금 작업을 해왔는데, 이제는 안드로이드나 iOS 기기에서 마이크를 사용하여 오디오를 녹음하여 구글 스피치 투 텍스트 API로 전송하는 것을 구현하고 싶다.

API로 데이터를 어떻게 보낼지는 알 수 있지만, 나의 주된 문제는 모바일 장치에서 데이터를 어떻게 기록하여 사용하는가이다(네트워크 연결이 없는 한 일시적으로 장치 자체에 저장하지 않고, 데이터를 저장해야 하며, API에 대한 요청은 안정적인 네트워크 연결이 있을 때까지 대기해야 한다).

구현해야 할 몇 가지 사항이 있다: - 선택 가능한 비트 전송률 - 최대 기록 길이(있기 좋은)를 계산할 수 있는 장치에 남아 있는 공간 탐지 - 기록 시간(기본적으로 공간이 있는 경우) 길거나(단순하게) 여러 조각으로 자르는 방법이 없는 경우 제한) - 사용자 지정 UI 구현 가능

몇 가지 방법을 찾아봤지만 대부분의 튜토리얼/가이드/문서들은 구식이거나 기능이 더 이상 사용되지 않거나 UI가 정해져 있다.

코도바 플러그인은 내가 추천한 것 중 가장 많이 사용해 본 적이 있는데, UI는 정해진 것 밖에 없고, 내가 작업하는 앱에는 사용자 지정 UI가 필요하다.또한 내가 시도했던 것들의 목록에는getUserMedia()정의되지 않은 상태로 반환된 Safari 개발 도구를 사용하여 iPhone에서 직접 .

내가 틀려서 놀라운 네이티브 기능이나 npm 패키지/코드바 플러그인이 누락된 경우 수정하십시오.

어떠한 제안이나 링크도 환영한다!

편집: 요약하자면, 나는 오디오를 녹음하고, 필요할 경우 일시적으로 저장하고, API로 전송하는 것과 같은 작업을 수행하는 메인스트림 방식(두 플랫폼의 경우, 가급적 같은 코드 사용)을 찾고 있다.

편집 2: 고객이 방금 몇 가지 새로운 요청을 했는데, 앱의 범위가 상당히 바뀌었어.요청된 변경 사항 중 하나(그리고 클라이언트에 대해서는 이것이 가장 중요한 기능)는 사용자가 녹음한 오디오 파일을 저장하여 언제든지 재생할 수 있도록 한다는 것이다.기기 간 동기화는 적용되지 않는다.그 질문은 여전히 거의 동일하지만 녹음된 오디오를 저장해야 한다.

매우 간단한 용도를 위해 표준 플러그인을 사용해 본 적이 있는가? 당신이 이미 몇 가지 플러그인을 테스트했다고 말한 것을 알고 있지만, 나는 오래된 애완동물 프로젝트에 사용했고 그것이 효과가 있었기 때문에 아마도 플러그 인을 호출하는 데 문제가 있을 것이다.

https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-media/index.html#mediastartrecord

이것은 매우 간단하다. 만약 네가 더 많은 통제가 필요하다면 나는 네가 네이티브 코드를 사용하여 사용자 지정 플러그인을 만들어야 할 것 같아.우리는 안드로이드 이퀄라이저와 다른 기능들에 접근하기 위해 그와 같은 일을 했다.

참조URL: https://stackoverflow.com/questions/53973065/cordova-javascript-audio-recording

반응형