Ich entwickle eine App, in der ich Live-TV-Streaming implementieren muss. Meine Google-Suche hat mich zu der Annahme geführt, dass Live-Streaming nicht möglich ist, bis 2.1 Android.
Ist das richtig?
Ich erhalte den Code für das Streaming von Musik von mediaplayer und kann ihn durch die Einstellung der untenstehenden Methode verwenden:
mp.setAudioStreamType(2)
;
Aber ich möchte wissen, ist es ausreichend für Streaming nur Code wie das und speichern Datei wie unten Methode:
private void setDataSource(String path) throws IOException {
if (!URLUtil.isNetworkUrl(path)) {
mp.setDataSource(path);
} else {
Log.i("enter the setdata","enter the setdata");
URL url = new URL(path);
URLConnection cn = url.openConnection();
cn.connect();
InputStream stream = cn.getInputStream();
if (stream == null)
throw new RuntimeException("stream is null");
File temp = File.createTempFile("mediaplayertmp", "dat");
String tempPath = temp.getAbsolutePath();
FileOutputStream out = new FileOutputStream(temp);
byte buf[] = new byte[128];
do {
int numread = stream.read(buf);
if (numread <= 0)
break;
out.write(buf, 0, numread);
} while (true);
mp.setDataSource(tempPath);
try {
stream.close();
Log.i("exit the setdata","exit the setdata");
}
catch (IOException ex) {
Log.e(TAG, "error: " + ex.getMessage(), ex);
}
}
}
Sind für das Live-TV-Streaming zusätzliche Funktionen erforderlich?