Jak mogę przesyłać dźwięk z mikrofonu iPhone'a na komputer Mac/PC? Czy istnieje już na to jakiś framework, czy mogę po prostu przesłać audio przez gniazda. Jestem jednak nowy w gniazdach. Zasadniczo chcę być w stanie mówić do iPhone'a, a komputer otrzyma wejście mikrofonowe iPhone'a jako własne wejście mikrofonowe dla komputerów, które nie mają mikrofonów. Mam już aplikację, która tworzy połączenie bonjour z komputerem Mac, na którym działa bardzo prosty serwer, a iPhone może wysyłać SMS-y do komputera, ale w jaki sposób iPhone może przesyłać dźwięk, dźwięk na żywo z mikrofonu?Jak mogę przesyłać dźwięk z mikrofonu iPhone'a na komputer Mac/PC za pośrednictwem gniazd lub architektury?
8
A
Odpowiedz
4
Do odczytu z mikrofonu potrzebna jest kombinacja AVCaptureSession i AVCaptureDevice - patrz Przewodnik programowania AV Foundation. http://developer.apple.com/library/ios/#DOCUMENTATION/AVFoundation/Reference/AVCaptureAudioDataOutput_Class/Reference/Reference.html#//apple_ref/occ/cl/AVCaptureAudioDataOutput
Dla Link do wykorzystania sokets
@interface Client : NSObject {
NSInputStream *_inputStream;
NSOutputStream *_outputStream;
}
@implementation Client
- (void)initNetworkCommunication {
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)@"localhost", 50000, &readStream, &writeStream);
_inputStream = (__bridge NSInputStream *)readStream;
_outputStream = (__bridge NSOutputStream *)writeStream;
[_inputStream setDelegate:self];
[_outputStream setDelegate:self];
[_inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[_outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[_inputStream open];
[_outputStream open];
}
// send data to server
- (IBAction)onSendButtonTapped:(id)sender {
NSString *command = self.commandField.text;
NSData *data = [[NSData alloc] initWithData:[command dataUsingEncoding:NSUTF8StringEncoding]];
[_outputStream write:[data bytes] maxLength:[data length]];
}