【问题标题】:Upload Ogg File to audio streaming in Android将 Ogg 文件上传到 Android 中的音频流
【发布时间】:2014-04-15 19:04:42
【问题描述】:

我是网络广播应用程序的菜鸟。我为此音频流使用icecast,所以首先在我的android应用程序中,我在ogg文件中捕获了音频字节,所以我想发送这个文件用于音频流。

我的问题我将如何发送完整的 *.ogg 文件或其他格式?请帮忙

这是我与正在运行的 icecast 的连接

Socket s = new Socket("101.57.116.17", 8000);
Socket s = new Socket("101.57.116.17", 8000);
Log.d("VS", "Socket Created");
OutputStream out = s.getOutputStream();
Log.d("VS", "Output Stream Established");
PrintWriter output = new PrintWriter(out);
Log.d("VS", "Send Header");
output.println("SOURCE /app ICE/2.3.3");
output.println("content-type: audio/mpeg");
output.println("Authorization: Basic c291cmNlOmhhY2ttZQ==");
output.println("ice-name: Server");
output.println("ice-genre: Rock");
output.println("ice-bitrate: 128");
output.println("ice-private: 0");
output.println("ice-public: 1");
output.println("ice-audio-info: ice-samplerate=44100;ice-bitrate=128;ice-channels=2");
output.println("");
output.flush();
Log.d("VS", "Header sent");
BufferedReader reader = new BufferedReader(new InputStreamReader(
        s.getInputStream()));
String response = reader.readLine();
Log.v(LOG_TAG, response);

HttpClient client = new DefaultHttpClient();

HttpGet httpGET = new HttpGet(
        "http://101.57.116.17:8000/admin/metadata?pass=hackme&mode=updinfo&mount=/app&song=akon");
httpGET.setHeader("Authorization", "Basic c291cmNlOmhhY2ttZQ==");
httpGET.setHeader("User-Agent", "(Mozilla Compatible)");

HttpResponse metaDataResponse = client.execute(httpGET);

System.out.println("Response Code : "
        + metaDataResponse.getStatusLine().getStatusCode());

BufferedReader rd = new BufferedReader(new InputStreamReader(
        metaDataResponse.getEntity().getContent()));

StringBuffer result = new StringBuffer();
String line = "";
while ((line = rd.readLine()) != null) {
    result.append(line);
}

【问题讨论】:

    标签: android audio shoutcast icecast


    【解决方案1】:

    连接到 Icecast 服务器并获得授权后,只需开始通过同一连接发送流数据。

    请注意,您需要以播放发生的速率执行此操作。否则,您将超出缓冲区,客户端的音频要么根本无法工作,要么会跳过。

    【讨论】:

    • 所以我有 OGG 文件,所以我需要读取代码中的文件字节并使用相同的连接将这些字节发送到服务器吗??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-14
    • 2015-08-18
    • 1970-01-01
    • 2013-05-07
    • 1970-01-01
    • 2022-12-18
    • 2013-07-12
    相关资源
    最近更新 更多