2013-12-13 2 views
4

누군가가이 문제를 해결할 수 있기를 바랍니다.Motorola Moto G (또는 Moto X)로 스테레오 오디오 녹음

얼마 전에 스마트 폰에 프론트 마이크와 후면 마이크에서 포착 한 사운드를 동시에 녹음하기 위해 애플리케이션을 개발했습니다. 기본적 걸 이런 다음 개체 :

가지 audiorecord 가지 audiorecord = 새로운 가지 audiorecord (MediaRecorder.AudioSource.CAMCORDER, 주파수, AudioFormat.CHANNEL_IN_STEREO, 오디오 인코딩, 버퍼 크기를) ;

Sony Xperia Neo V에서는 완벽하게 작동했지만 Motorola Moto G (또는 Moto X I 추측)에서는 정상적으로 작동하지 않았습니다. 문서에서 살펴보면 나는 캠코더 플래그 다음을 보았다 : 가능한 경우, 주요 장치의 마이크 그렇지 않으면 카메라와 같은 방향으로

마이크 오디오 소스.

모토로라 모토 G 상단에있는 카메라 마이크하지만 하나가되지 않습니다 (소니 엑스 페리아는 다시 나 카메라 마이크 하나 개의 마이크가 있습니다). 사실, Moto G의 경우, 프론트 마이크로 포착 된 신호와 동일한 신호가 두 번 나오는데, 이는 설명서에 따라 정확합니다.

아무도 도와 줄 수 있습니까?

답변

2

나는 동일한 문제가있어서 48000 Hz의 샘플 속도를 사용하여 작동하도록했습니다. 나는 기본 카메라 응용 프로그램으로 만든 비디오 녹화가 스테레오로 작동하고이 샘플링 속도를 가졌기 때문에 작동 할 것이라고 생각했습니다. 이 빈도는 getMinBufferSize() 함수를 사용할 때 고려해야합니다. 내가 설치 킷캣과 모토 G를 사용하고

recorder = new AudioRecord(MediaRecorder.AudioSource.CAMCORDER, 
              RECORDER_SAMPLERATE, RECORDER_CHANNELS,RECORDER_AUDIO_ENCODING, bufferSize); 

: 나는 함께 가지 audiorecord 객체를 생성

private static final int RECORDER_BPP = 16; 
private static final int RECORDER_SAMPLERATE = 48000; 
private static final int RECORDER_CHANNELS = AudioFormat.CHANNEL_IN_STEREO; 
private static final int RECORDER_AUDIO_ENCODING = AudioFormat.ENCODING_PCM_16BIT; 

후 : 여기

내 설정입니다.

관련 문제