请原谅我,如果已经回答,我做了搜索,但我不熟悉iOS上的流媒体和音频。
我需要在我的应用中发送和接收音频文件。为了提高性能并保持开放连接,我希望能够传输这些数据。
我根据问题的答案查看了HTTP Live Streaming和AudioStreamer等内容。但是,这些似乎是连续流式传输,1路(读取)。而我发送一个有限的音频文件(> 10秒),然后接收一个。
我熟悉NSURLConnection,并对此answer进行了审核。但同样,这使用连续,单向流。
我很感激建筑的任何建议,以帮助我开始实现上述目标。
答案 0 :(得分:2)
通常,AVAudioPlayer
使用音乐播放。但是,此框架不支持流式传输。因此,可以使用AVPlayer
流式传输。通常,开发人员AVPlayer
目的只知道可以播放视频,但也可以播放音乐。
我看一下以下Apple的示例代码是推荐的。这是使用AVPlayer
我上传到myServer Tested,.mp3也完美
3G,在两种环境中测试wifi。虽然示例代码,但令人惊讶的是完美无缺。 mp3文件上传你的服务器。立即尝试测试。会运作良好。
如果您想在后台播放,以下代码不会忘记:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
AVAudioSession* audio = [[AVAudioSession alloc] init];
[audio setCategory: AVAudioSessionCategoryPlayback error: nil];
[audio setActive: YES error: nil];
return YES;
}
答案 1 :(得分:1)
从服务器回放我的Audjustable项目(https://github.com/tumtumtum/audjustable)修复了原始AudioStreamer项目中的大部分问题,包括无间隙播放和解耦音频数据源,以便进行错误恢复,加密等操作。开源...
如果您想将音频数据上传到服务器,您可以采用多种方式,但NSURLConnection似乎是最简单的方法。
答案 2 :(得分:0)
是的,AudioStreamer到现在为止我已经使用并搜索过了。
但是使用AudioStreamer时,尝试在后台进行流式传输时需要进行某些更改,当您创建2个实例时,还需要更多......
https://github.com/mattgallagher/AudioStreamer/
您也可以在我的个人资料中找到2-3个相同的问题......
答案 3 :(得分:0)
我认为您要做的是上传和下载文件到服务器而不是流媒体。要下载,您可以使用NSURLConnection / NSURLRequest。要上传,您可以使用HTTP POST方法。还有一个名为ASIHTTPRequest的旧第三方库。互联网上有很多关于这些主题的样本。