2012-02-29 21 views
8

iOSを使用してオーディオを録音するにはどうすればよいですか?マイクからの入力録音ではなく、アプリ内で現在再生中のオーディオをキャプチャ/録音できますか?録音オーディオiOS

です。私は録音セッションを開始し、私のアプリ内で再生するサウンドのみをファイルに記録したいのですか?

私はこれに関する研究を行っていますが、オーディオフレームワークのミキシングが問題を引き起こす可能性があるため、使用するものと混同していますか?

アプリケーション内で再生されるオーディオをキャプチャして保存できるようにしたいだけです。

+0

あなたのアプリ内でどのようにオーディオを再生しますか? – sbooth

+0

オーディオユニットを使用します。レコーダーそのものはユニットですか? – jarryd

+0

ちょうど明確にするために、(マイクではなく)あなたのアプリの中で再生されているサウンドを録音したいと言うときは、サウンドカードから直接録音したいということですか?だから、誰かがヘッドホンをヘッドホンに入れても、彼らが聞いていることは何でも録音することができます。 – luca590

答えて

4

あなたのアプリが作り出すオーディオを録音するだけの場合、これは非常に可能です。

スピーカーから出力されるすべての音声を録音することはできません。 (編集:他のアプリケーションで作成されたオーディオ出力を録音する方法がないことを明確にしたいだけです。

アプリのオーディオ出力を記録する場合は、リモートioオーディオユニット(http://atastypixel.com/blog/using-remoteio-audio-unit/)を使用する必要があります。

あなたが本当にやる必要があるのは、再生バッファを書き込んだ後にコピーすることだけです。

EX)

memcpy(void *dest, ioData->mBuffers[0].mData, int amount_of_bytes); 
1

iOSアプリからのすべての一般的な音声出力をキャプチャまたは録音するパブリックAPIはありません。

1

アップルからMixerHostAudioサンプルアプリケーションをチェックしてください。オーディオユニットの学習を始めるには最適な方法です。一度それを理解すれば、録音を追加する方法についてオンラインで多くのチュートリアルがあります。

2

これは、ラッパークラスのため、この質問で私の回答を参照してくださいCAAudioUnitOutputCapturer http://developer.apple.com/library/mac/#samplecode/CoreAudioUtilityClasses/Introduction/Intro.html

をCore Audioの公益ファイルをラップすることによって可能です。 Properly use Objective C++

+0

他のアプリからオーディオを録音することも可能ですか?例えばSpotifyが作成している純粋なオーディオを録音できますか? –

+0

@PiotrDabkowski iOSはサンドボックスを作成するため、オーディオはおそらくアプリ自体のネイティブです。アプリ間オーディオのようなものがあります。あなたのケースでSpotifyはオーディオを受信できるようにサポートする必要があります。 – lppier

関連する問題