【问题标题】:Trying to read and play live ShoutCast stream with C#尝试使用 C# 阅读和播放实时 ShoutCast 流
【发布时间】:2015-07-20 22:54:36
【问题描述】:

我一直在尝试寻找一种使用 C# 播放现场 ShoutCast 流的方法。我一直在为此研究互联网,到目前为止,我只找到了一些播放固定长度流的方法,但我想播放直播电台。

有人知道怎么做吗?

【问题讨论】:

  • 查看规范并找出它使用哪种流协议并相应地实施。
  • 我知道如何实现连接,我需要有关如何读取连续流 mp3 数据并播放的信息。

标签: c# shoutcast internet-radio


【解决方案1】:

SHOUTcast 流基本上是 HTTP 流,但带有损坏的状态行标头。你得到的是ICY 200 OK,而不是HTTP/1.1 200 OK。从那里,您可以从Content-Type 响应标头(例如audio/mpeg)中检测格式和编解码器,并在数据进入时进行流式播放。

除此之外,还有元数据交错到流中。这是可选的,但可以通过在您的请求中添加以下标头来请求:

Icy-MetaData: 1

然后在响应标头中,您将看到Icy-MetaInt 告诉您每个元数据块之间有多少字节。有关如何处理该元数据的更多信息,请参阅此帖子:https://stackoverflow.com/a/4914538/362536

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    • 2013-05-01
    • 2019-02-09
    • 1970-01-01
    • 2019-11-29
    • 1970-01-01
    相关资源
    最近更新 更多