【问题标题】:Icecast: pause in the beginning of streaming on AndroidIcecast:在 Android 上流式传输开始时暂停
【发布时间】:2016-01-12 14:34:07
【问题描述】:

我有一个服务器 Icecast 与 Liquidsoap 一起工作以流式传输互联网广播,我注意到在某些 Android 设备(例如三星 Galaxy 选项卡)上接收音乐时出现问题 - 在播放音乐缓冲几秒钟后音乐开始大约一秒钟,然后突然停止,然后再沉默几秒钟,然后才开始正常播放。在其他一些 Android 设备上,如 HTC 的愿望 - 没有这样的事情发生 - 音乐在缓冲后开始正常播放。 以下是相关流的示例:http://rdsradio.ru:8000/4th.mp3

当我在 Android 设备上的浏览器 (Google Chrome) 中打开链接时会发生这种情况。同样的结果,我使用 android.media.MediaPlayer 类从我目前开发的 Android 应用程序连接到 Icecast 流:mediaPlayer.setDataSource("http://rdsradio.ru:8000/4th.mp3");

此外,即使在那些有问题的设备上,我也可以正常连接并收听其他 Icecast 无线电源的流,例如 http://dancewave.hopto.org:9990/dance.mp3 - 这就是为什么我认为我的 Icecast + Liquidsoap 设置可能有问题 - 是什么让音乐一开始就停止播放。

<burst-on-connect>1</burst-on-connect>
<burst-size>64000</burst-size>

我尝试更改 /etc/icecast2/icecast.xml 中的这些参数,例如将 burst-size 增加到 10-20 倍或将 burst-on-connect 设置为 0,但根本没有注意到任何差异(我修改参数后运行/etc/init.d/icecast2 reload重新加载配置)。

任何想法 - 如何解决这种行为?

更新:我尝试在 Android 上的 VLC 播放器中打开流,并且没有问题,因此使用 android.media.MediaPlayer 似乎存在问题(可能 Google Chrome 中的内置 HTML5 音频播放器使用同一个图书馆)。我会尝试在应用中使用不同的媒体播放器。

【问题讨论】:

  • 您在 Android 上使用的是哪个播放器?您似乎没有指定。
  • @TBR 在帖子中添加了注释。谢谢!

标签: android icecast internet-radio liquidsoap


【解决方案1】:

实际上,解决方案很简单。 icecast.xml 中的burst-size 设置为500000 解决了这个问题。早些时候我在更改 icecast.xml 后使用了/etc/init.d/icecast2 reload,出于某种原因,我认为在 Icecast 中的突发大小也会以类似的方式发生变化,但它没有发生。只有重新启动 icecast 实际上改变了该设置。

【讨论】:

  • 我们也有同样的问题,我们会根据您的建议进行测试。你使用的 值是多少?
  • @Francesco 600000, 500000
猜你喜欢
  • 2011-09-25
  • 2016-04-29
  • 1970-01-01
  • 1970-01-01
  • 2015-10-26
  • 2019-05-19
  • 1970-01-01
  • 1970-01-01
  • 2020-05-01
相关资源
最近更新 更多