如何將音頻編碼爲u-law g.711?然後通過http將該音頻發送到遠程服務器。通過POST命令將音頻從ios流式傳輸到REST服務器
音頻流:發送音頻的連續流至 當前觀看的相機。音頻需要以G711 mu-law編碼,編碼爲 64 kbit/s,以便傳送到牀邊的Axis相機。發送(這 應該在SSL帖子的網址,以連接服務器):POST /transmitaudio ID =內容類型:音頻/基本 的Content-Length:99999(長度會被忽略)
我已搜查在谷歌和這裏,但主要是我發現的方法是從服務器流到我的設備,而不是其他方式。我沒有找到這個帖子(http://stackoverflow.com/questions/7750329/how-to-send-audio-file-through-http-post-to-a-server-from-ios),但它似乎喜歡的答案不是很具描述性,也沒有任何一個被接受。
這是我到目前爲止。
{
NSNumber *formatObject;
switch (self.recordEncoding) {
case (ENC_AAC):
formatObject = [NSNumber numberWithInt: kAudioFormatMPEG4AAC];
break;
case (ENC_ALAC):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleLossless];
break;
case (ENC_IMA4):
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
break;
case (ENC_ILBC):
formatObject = [NSNumber numberWithInt: kAudioFormatiLBC];
break;
case (ENC_ULAW):
formatObject = [NSNumber numberWithInt: kAudioFormatULaw];
break;
default:
formatObject = [NSNumber numberWithInt: kAudioFormatAppleIMA4];
}
[recordSettings setObject:formatObject forKey: AVFormatIDKey];
[recordSettings setObject:[NSNumber numberWithFloat:44100.0] forKey: AVSampleRateKey];
[recordSettings setObject:[NSNumber numberWithInt:2] forKey:AVNumberOfChannelsKey];
[recordSettings setObject:[NSNumber numberWithInt:12800] forKey:AVEncoderBitRateKey];
[recordSettings setObject:[NSNumber numberWithInt:16] forKey:AVLinearPCMBitDepthKey];
[recordSettings setObject:[NSNumber numberWithInt: AVAudioQualityHigh] forKey: AVEncoderAudioQualityKey];
}
這似乎是U法(編碼因此得名),但我什麼都不知道的音頻編解碼器和不知道如果G711μ律甚至有可能在iOS。
如何讓我的音頻以正確的格式編碼?
那麼如何將編碼的音頻發送到服務器?現在我有它去臨時文件的位置,但即使我改變了,我沒有看到如何幫助。我知道這是很多要求,我不想給我一個答案,但我需要一個地方開始,因爲在目前我相當迷茫,如何做到這一點。
此刻試圖AFNetworking後 – 2012-04-16 18:37:35