Carregar áudio - transmissão em fluxo contínuo
Estou tentando fazer upload de um arquivo linear em http no modo de streaming. A idéia é fazer isso simultaneamente, 1) Thread 1: gravar um arquivo de áudio e armazená-lo em um arquivo temporário 2) Thread 2: Pegue n bytes do arquivo temporário e envie-o para um servidor http.
Como posso escrever um fluxo de http ?, Em CFHTTPStream eu não vi métodos de gravação, apenas ler: s Eu preciso usar soquetes? Obrigado!!!
Meu código atual é
<code> CFWriteStreamRef stream; NSString *strUrl = @"myurl"; NSURL *url = [[[NSURL alloc] initWithString:strUrl] retain]; CFStringRef requestMethod = CFSTR("GET"); CFHTTPMessageRef message= CFHTTPMessageCreateRequest(kCFAllocatorDefault, requestMethod, (CFURLRef)url, kCFHTTPVersion1_1); CFHTTPMessageSetHeaderFieldValue(message, CFSTR("Content-Type"), CFSTR("multipart/form-data")); stream = ?? //CFReadStreamCreateForHTTPRequest(NULL, message); CFRelease(message); //other headers... if (CFWriteStreamSetProperty(stream, kCFStreamPropertyHTTPShouldAutoredirect, kCFBooleanTrue) == false) { NSLog(@"Error"); return NO; } // // Open the stream // if (!CFWriteStreamOpen(stream)) { CFRelease(stream); NSLog(@"Error"); return NO; } CFStreamClientContext context = {0, self, NULL, NULL, NULL}; CFWriteStreamSetClient(stram, kCFStreamEventHasBytesAvailable | kCFStreamEventErrorOccurred | kCFStreamEventEndEncountered, RSWriteStreamCallBack, &context); CFWriteStreamScheduleWithRunLoop(stream, CFRunLoopGetCurrent(), kCFRunLoopCommonModes); </code>