문제

게임에서 나가는 오디오를 캡처하고 재생할 때 오디오 파일에 기록하고 싶습니다.OpenSL의 프레임 워크 내에서 가능합니까?OutputMix를 AudioRecorder 또는 뭔가에 연결하여

고급 감사.

도움이 되었습니까?

해결책

큐에 콜백을 등록하고 출력을 위해 버퍼 대기열에 대기열에 대기중인 전후에 출력 버퍼를 얻을 수 있습니다.새 버퍼의 각 대기업에 기록되는 WAVBBUFFER (버퍼 크기의 길이)를 가질 수 있습니다.이 버퍼의 내용은 파일에 기록됩니다.

outBuffer = p->outputBuffer[p->currentOutputBuffer];  // obtain float buffer

for ( int i = 0; i < bufferSize; ++i )
    wavBuffer = ( short ) outBuffer[ i ] * 32768; // convert float to short

// now append contents of wavBuffer into a file
.

대기열 콜백에 대한 기본 OpenSL 설정은 이 페이지에서

및 C ++에서 WAV 파일을 만드는 매우 기본적인 방법은 여기 총 WAV 파일의 실제 크기에 대한 꽤 확실한 아이디어가 있어야합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top