首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DigitalDJ / AudioStreamer未连接到流服务器

DigitalDJ / AudioStreamer未连接到流服务器
EN

Stack Overflow用户
提问于 2012-03-08 03:42:20
回答 2查看 708关注 0票数 0

我下载了在我正在做的播放器中使用的DigitalDJ / AudioStreamer代码,下面是我下载的项目:https://github.com/DigitalDJ/AudioStreamer

在我决定升级之前已经使用过这个库,它支持多线程,

但是,当我将流服务器http:// thor.nickpack.com:9000的地址更改为我的服务器的地址时,它不会播放音频。

要将viewController中TextField中的服务器路径替换为我的路径,请参阅我的问题。

另一种解决方案是修改支持多线程的旧播放器,我已经尝试了几个代码,但没有成功,那是当我找到DigitalDJ / AudioStreamer时,但我遇到了上面提到的问题。

这是一个没有多线程的示例应用程序的链接:http://www.mediafire.com/?eb7a6a87e8tqcbc

如果有人知道如何在backgorund中实现音频,或者如何解决流媒体服务器的问题,我将不胜感激。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-22 21:53:13

经过很长一段时间,几乎疯狂地试图通过注释这个trexo AudioStreamer.m中的代码来解决这个问题

代码语言:javascript
复制
// hintForMIMEType
//
// Make a more informed guess on the file type based on the MIME type
//
// Parameters:
//    mimeType - the MIME type
//
// returns a file type hint that can be passed to the AudioFileStream
//
/*
+ (AudioFileTypeID)hintForMIMEType:(NSString *)mimeType
{
    AudioFileTypeID fileTypeHint = kAudioFileMP3Type;
    if ([mimeType isEqual:@"audio/mpeg"])
    {
        fileTypeHint = kAudioFileMP3Type;
    }
    else if ([mimeType isEqual:@"audio/x-wav"])
    {
        fileTypeHint = kAudioFileWAVEType;
    }
    else if ([mimeType isEqual:@"audio/x-aiff"])
    {
        fileTypeHint = kAudioFileAIFFType;
    }
    else if ([mimeType isEqual:@"audio/x-m4a"])
    {
        fileTypeHint = kAudioFileM4AType;
    }
        else if ([mimeType isEqual:@"audio/mp4"])
    {
        fileTypeHint = kAudioFileMPEG4Type;
    }
        else if ([mimeType isEqual:@"audio/x-caf"])
    {
        fileTypeHint = kAudioFileCAFType;
    }
        else if ([mimeType isEqual:@"audio/aac"] || [mimeType isEqual:@"audio/aacp"])
    {
        fileTypeHint = kAudioFileAAC_ADTSType;
    }
    return fileTypeHint;
 }*/

注释掉这段代码后,我的服务器上播放的音频没有问题

票数 1
EN

Stack Overflow用户

发布于 2012-05-21 18:21:04

我在使用AudioStreamer连接到MP3 stream时遇到了问题。该示例可以在模拟器上运行,但不能在设备上运行。我想是因为模拟器不是ios设备的精确副本。在模拟器上,它使用安装在mac上的quicktime。

对于本地MP3文件,请使用AVAudioPlayer。

对于远程MP3流,请使用AVPlayer。

上有一个很好的示例项目

代码语言:javascript
复制
https://github.com/valvoline/CPStreamPlayer

通常,远程流需要时间来连接到超时。这个示例显示了它的缓冲。

在Github上搜索AVPlayer有几个例子。

CPStreamPlayer/AVPlayer支持重定向,因此对于我们来说

代码语言:javascript
复制
http://stream.fireplayer.com/greyhound/dyn?action=stream.StreamMix&id=1785

但这被重定向为在亚马逊上生成Mp3文件/流

代码语言:javascript
复制
http://s3.amazonaws.com/fireplayer_mp3/1785.mp3?AWSAccessKeyId=AKIAJAHV5HUV4TVRF5VA&Expires=1337595252&Signature=c%2FH%2FO9AACkovm%2BAhbWyD7E9Hb6A%3D";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9607999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档