【问题标题】:Android Studio: how to use streamscraper, to get shoutcast metadataAndroid Studio:如何使用streamscraper,获取广播元数据
【发布时间】:2017-03-20 11:50:32
【问题描述】:

我是 Android 开发的新手。我想从 Shoutcast Server 获取元数据,发现 streamscraper 是最容易使用的。但我的问题是,我不知道如何使用它。主页本身仅显示如何使用它:

import java.net.URI;
import java.util.List;
import net.moraleboost.streamscraper.Stream;
import net.moraleboost.streamscraper.Scraper;
import net.moraleboost.streamscraper.scraper.IceCastScraper;

    public class Harvester {
     public static void main(String[] args) throws Exception {
      Scraper scraper = new IceCastScraper();
      List streams = scraper.scrape(new URI("http://host:port/"));
      for (Stream stream: streams) {
       System.out.println("Song Title: " + stream.getCurrentSong());
       System.out.println("URI: " + stream.getUri());
      }
     }
    }

在任何地方搜索,没有找到如何使用它的项目示例。我希望你们中的一个可以发布如何使用它的代码,或者为它制作一个教程。

【问题讨论】:

    标签: android audio-streaming shoutcast icecast internet-radio


    【解决方案1】:

    无需使用外部库。以下页面为您提供:

    Current song:     http://yourstream:port/currentsong?sid=#
    Last 20 songs:    http://yourstream:port/played.html?sid#
    Next songs:       http://yourstream:port/nextsongs?sid=#
    

    一个打印当前歌曲的Android java类:

    import java.io.BufferedReader;
    import java.io.InputStreamReader;    
    import java.net.URL;
    
    public class NowPlaying {
    
        public void CurrentSong() {
    
            try
            {
                URL url = new URL("http://www.mofosounds.com:8000/currentsong?sid=#");
                BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
    
                String inputLine;
    
                while ((inputLine = in.readLine()) != null)
                    System.out.println(inputLine);
    
                in.close();
            }
            catch(Exception e)
            {
                System.out.println(e.toString());
            }
        }
    }
    

    注意:nextsongs?sid=#feature 必须被流的播放器支持。

    【讨论】:

    • @downvoter,解释一下?这是一个完美的工作示例。
    • 这不适用于所有流媒体服务器。大多数服务器都没有实现这些端点,包括大多数部署的 SHOUTcast 版本。
    猜你喜欢
    • 2014-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    • 1970-01-01
    相关资源
    最近更新 更多