3

내 iPhone 게임에서 나오는 오디오 (음악 + 음향 효과)를 캡처하고 싶습니다. AVCaptureSession에는 오디오 소스로만 마이크가있는 것 같습니다. 오디오를 캡처하고 CMSampleBufferRef에 넣고 AVAssetWriterInput에 추가하고 싶습니다.iPhone 게임 오디오 캡처

현재 오디오 대기열을 살펴보고 있습니다. 다른 아이디어?

답변

4

게임에서 모든 효과음과 음악을 직접 캡처하는 API는 없습니다.

가장 일반적인 해결책은 앱이 오디오 출력을 위해 한 번, PCM 샘플의 두 번째 동일한 복사본을 두 번 반복하여 DSP 또는 오디오 장치 믹서에 공급하는 모든 사운드를 두 번 생성하는 것입니다. 그런 다음 믹서 출력을 AVAssetWriter 나 다른 파일 출력으로 보내십시오. 이 기술은 앱에서 생성 된 모든 사운드가 Audio Queue 또는 RemoteIO Audio Unit API를 통해 재생되는 원시 PCM 오디오 형식으로되어있어 음악 및 게임 사운드 코드를 상당 부분 다시 작성해야하는 경우 구현하기가 훨씬 쉽습니다.

+0

흥미 롭습니다. 호기심에서 벗어나 RemoteIO Audio Unit API를 사용하여 출력 하드웨어로 전송하기 전에 "오디오 데이터"를 캡처 할 수 있습니까? – MrDatabase

+1

MrDatabase - 앱이 모든 오디오 샘플을 생성하는 경우 파일에 쓸 수 있으며 RemoteIO로 보내지 않을 수 있습니다. 또는 1 시간 후에 오디오로 보낼 수 있습니다. – hotpaw2

+0

앱에는 두 가지 형식의 오디오가 있습니다. 압축 된 mp3는 AVAudioPlayer에서, 압축되지 않은 wav는 사운드 엔진에서 재생합니다. – MrDatabase