我使用下面的代码将音频文件从磁盘上传到服务器。 我想将文件作为流直接从 iphone 麦克风上传到服务器.. 使用speakHere示例,我们可以在录制时动态捕获音频数据包。
我尝试了很多次,也没有任何线索!!
NSString *fullPathToFile = [recordedAudioFilesDir stringByAppendingPathComponent:[NSString stringWithFormat:@"%i%i.wav",1,2 ]];
//..REMARK ,,change ayah froma nd ayah to and SurahID
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat: WEB_SERVICE_ADDRESS] ];
requestGlob = [[ASIHTTPRequest alloc] initWithURL:url] ;
requestGlob.tag=[[NSString stringWithFormat:@"1000%i",1] intValue];
requestGlob.delegate=self;
[requestGlob setTimeOutSeconds:50];
[requestGlob setRequestMethod:@"PUT"];
[requestGlob setShouldContinueWhenAppEntersBackground:YES];
[requestGlob setShouldStreamPostDataFromDisk:NO];
[requestGlob setUseCookiePersistence:NO];
[requestGlob setUseSessionPersistence:NO];
[requestGlob setUseKeychainPersistence:NO];
[requestGlob setUploadProgressDelegate:self];
NSString *userName =@"f@ola.com";
NSLog(@"username is %@",userName);
//hashed md5 password//e10adc3949ba59abbe56e057f20f883e
NSString *passowrd =@"q";
//NSLog(@"password is %@",passowrd);
NSData *authData1 = [userName dataUsingEncoding:NSASCIIStringEncoding];
//encoded username
NSString *encodedUsername = [NSString stringWithString: [authData1 base64Encoding]];
//username + : + password
NSString *combined =[NSString stringWithFormat:@"%@:%@", encodedUsername,passowrd ];
//encoded combined
NSString *encodedEveryThing= [NSString stringWithString:[[combined dataUsingEncoding:NSUTF8StringEncoding] base64Encoding]];
//the most important line since username and password are not arguments and its embedded in the header of the html
[requestGlob addRequestHeader:@"Authorization" value:[NSString stringWithFormat:@"Basic %@",encodedEveryThing]];
[requestGlob appendPostDataFromFile:fullPathToFile];
[requestGlob startAsynchronous];
有什么想法吗?谢谢
最佳答案
关于iphone - 将音频从 iPhone 流式传输到服务器(HTTP 流式传输),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16582450/