2012-08-30 12 views
7

Core Audio'yu kullanarak aynı anda çalmalı ve kaydetmeliyim. Bir müzik uygulaması yaptığım ve herhangi bir gecikme sorununu çözemediğim için bunu yapmak için AVFoundation API (AVAudioPlayer + AVAudioRecorder) kullanmak istemiyorum.iOS'ta Core Audio'yu kullanarak aynı anda Oynatma ve Kaydetme

Ben Apple şu kaynak koduna baktım:
aurioTouch
MixerHost

Zaten şu yayınlarda içine baktım:
iOS: Sample code for simultaneous record and playback
Record and play audio Simultaneously

Hala değilim Çekirdek Ses kullanarak aynı şeyi nasıl yürütebildiğimi ve aynı şeyi nasıl kaydedebileceğimi açıklığa kavuştum. Bunu nasıl başarabileceğime dair herhangi bir işaret çok büyük olacaktır. Herhangi bir örnek kaynak koduna herhangi bir işaretçi de büyük yardımı olacaktır.

+0

Sorun, aynı şeyi yapan uygulamamı size gönderirseniz size yardımcı olmaz çünkü çok karmaşık bir şeydir ve bunu anlamak için iş akışını kendiniz analiz etmeniz gerekir. – holex

+0

Bu arada, ** [bu örnek proje] analiz ettim (http://developer.apple.com/library/ios/#samplecode/SpeakHere/Introduction/Intro.html#//apple_ref/doc/uid/ DTS40007802) ** süreci anlamak için. benim için 2 ya da 3 gün sürdü, onu analiz etmek benim için fazlasıyla yeterliydi ama ben bir deha değilim. Tabii ki tam olarak okudum ** [Sesli Oturum Programlama Rehberi] (http://developer.apple.com/library/ios/#documentation/Audio/Conceptual/AudioSessionProgrammingGuide/Introduction/Introduction.html#//apple_ref/ doc/uid/TP40007875-CH1-SW1) ** de. – holex

cevap

4

RemoteIO Ses Ünitesi, aynı anda kayıt ve oynatma için kullanılabilir. RemoteIO (aurioTouch) kullanarak ve RemoteIO kullanarak çalmaya ilişkin çok sayıda örnek vardır. Sadece ünite girişini ve ünite çıkışını etkinleştirin ve her iki arabellek geri çağrılarını da ele alın. Bir örneğe bakın: here

+0

aurioTouch için kaynak kodum var. Bana nerede bakabileceğimi söyler misin, böylece bir fikrim olabilir. Şimdilik, sadece playSound: 'gibi bir yöntemi uygulamak istiyorum ve bunu kaydedebiliyorum. –

+0

bana örnek aurioTouch'ı verebilir misiniz? Şimdiden teşekkürler – RSM