Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/212.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Android设备到shoutcast的流(上行)_Android_Audio_Stream_Datagram_Shoutcast - Fatal编程技术网

从Android设备到shoutcast的流(上行)

从Android设备到shoutcast的流(上行),android,audio,stream,datagram,shoutcast,Android,Audio,Stream,Datagram,Shoutcast,提前感谢大家:) 在你开始阅读之前,我想先说明一下,我想开发一个基于android的应用程序,将android设备用作广播设备,它使用麦克风录制声音,并将声音发送到shoutcast服务器,如下所示: 连接互联网的Android设备->Shoutcast服务器->侦听器。 所以请不要对在android上播放shoutcast流感到困惑,因为我不想开发一个播放器来播放流。如果您正在寻找开发一个播放器,然后从给定的链接下载源代码,这对我来说很好。 源代码 现在回到我的问题,我在过去两周的谷歌搜索了很

提前感谢大家:)

在你开始阅读之前,我想先说明一下,我想开发一个基于android的应用程序,将android设备用作广播设备,它使用麦克风录制声音,并将声音发送到shoutcast服务器,如下所示:

连接互联网的Android设备->Shoutcast服务器->侦听器。

所以请不要对在android上播放shoutcast流感到困惑,因为我不想开发一个播放器来播放流。如果您正在寻找开发一个播放器,然后从给定的链接下载源代码,这对我来说很好。 源代码

现在回到我的问题,我在过去两周的谷歌搜索了很多,找到了一篇文章,这篇文章帮助我使用安卓设备的内置麦克风,并通过本地网络传输数据。人们可以使用VLC收听流

但我想向我的shoutcast服务器发送与使用winamp和DSP插件相同的数据流,问题是:

  • 如果我使用上面链接中的代码,它在本地n/w上可以正常工作,但是当我尝试用我的shoutcast服务器配置它时,它会给出错误:
    ![UnknownHostException]
    在eclipse日志中

  • shoutcast服务器上是否有任何基于url的系统,如果我将向其发送一个流,那么它将获得该流并广播给我的侦听器?e、 g.如果我想收听流(下行),我可以使用
    http://xx.example.com:1234;stream.mp3
    ,我要求上传

  • 如何通过登录/密码与服务器建立连接。我想做类似的DSP插件,如所附图片所示


  • 将代码从

    UnknownHostException ()    
    

     UnknownHostException(hostname)    
    
    其中hostname是internet上服务器的名称。可能是dns或路由问题。将主机名传递给

     getByName    
    
    或者更好

    getAllByName    
    
    ,记录它,并验证它是否为预期的IP地址


    这将为eclipse日志添加更多信息。

    在这种情况下,您链接到的代码不合适。它似乎是用于通过UDP发送原始音频数据,而SHOUTcast根本不使用UDP

    SHOUTcast服务器没有要传输到的HTTP接口。它们使用完全独立的协议,如果需要使用SHOUTcast服务器,则必须使用该协议。(我应该注意到,在过去一年左右的时间里,Icecast刚刚添加了HTTP PUT支持。)

    幸运的是,SHOUTcast源协议非常简单。您只需发送密码,然后换行。如果您从服务器获得了满意的响应,那么发送
    icy-*
    标题,后跟两个换行符,然后是编码的音频数据。几年前,当有人问iOS这个问题时,我已经详细地概述了这一点:当您将Winamp SHOUTcast DSP(或其他SHOUTcast源客户机)连接到服务器时,您可以使用类似的数据包嗅探器并运行它来查看协议


    最后,别忘了使用合适的编解码器。使用SHOUTcast时,最好使用MP3(按原样)或封装在ADT中的AAC流。当我不久前尝试这个项目时,我很难想出如何正确编码音频,因为至少安卓2.1似乎没有办法。我不是Android开发者,所以也许你会找到更好的方法

    我使用了catch(UnknownHostException e){Log.e(“VS”,“UnknownHostException”+e.getMessage());}您能提供准确的代码吗。我是一个新手,只要它转储hostname变量就可以了。要确保它不是空的。根据故障的上下文,可能会有更具体的消息,例如错误的格式—主机名中的空格。您可能希望捕获其他异常,例如NoRouteToHost。我希望这是一个相关的答案。这就是我要找的。我对冰镇有点了解,但不太确定。让我试试。谢谢:)嘿,阿曼,你完成申请了吗?我正在寻找一个像这样的应用程序,但似乎找不到。