quelqu'un peut-il me aider comment analyser et jouer ce fichier .pls dans AndroidParse et jouer un fichier .pls dans Android
[playlist]
NumberOfEntries=1
File1=http://stream.radiosai.net:8002/
quelqu'un peut-il me aider comment analyser et jouer ce fichier .pls dans AndroidParse et jouer un fichier .pls dans Android
[playlist]
NumberOfEntries=1
File1=http://stream.radiosai.net:8002/
Une recherche rapide a donné lieu à cette PlsParser
très basique de l'application NPR que, par l'apparence de celui-ci, simplement analyser le fichier .pls et retourner toutes les URL intégrées dans une liste de chaînes. Vous voudrez probablement jeter un coup d'oeil à cela comme point de départ. Après cela, vous devriez être en mesure de fournir l'URL à un objet MediaPlayer
, bien que je ne sois pas complètement sûr de quels formats/protocoles sont supportés, ou quelles sont les limitations qui peuvent s'appliquer dans le cas du streaming. La séquence des appels du lecteur multimédia ressemblera à ceci.
MediaPlayer mp = new MediaPlayer();
mp.setDataSource("http://stream.radiosai.net:8002/");
mp.setAudioStreamType(AudioManager.STREAM_MUSIC);
mp.prepare(); //also consider mp.prepareAsync().
mp.start();
Mise à jour: Pour autant que je peux dire, vous pouvez prendre presque littéralement le code référencé et mettre votre propre usage. Notez que le code ci-dessous n'est en aucun cas complet ou testé.
public class PlsParser {
private final BufferedReader reader;
public PlsParser(String url) {
URLConnection urlConnection = new URL(url).openConnection();
this.reader = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()));
}
public List<String> getUrls() {
LinkedList<String> urls = new LinkedList<String>();
while (true) {
try {
String line = reader.readLine();
if (line == null) {
break;
}
String url = parseLine(line);
if (url != null && !url.equals("")) {
urls.add(url);
}
} catch (IOException e) {
e.printStackTrace();
}
}
return urls;
}
private String parseLine(String line) {
if (line == null) {
return null;
}
String trimmed = line.trim();
if (trimmed.indexOf("http") >= 0) {
return trimmed.substring(trimmed.indexOf("http"));
}
return "";
}
}
Une fois que vous avez, vous pouvez simplement créer une nouvelle PlsParser
avec l'URL du fichier .pls et appelez getUrls
après. Chaque élément de la liste sera une URL telle que trouvée dans le fichier .pls. Dans votre cas, ce sera juste http://stream.radiosai.net:8002/
. Comme indiqué, vous pouvez ensuite envoyer ceci au MediaPlayer.
@ pouvez-vous me dire comment analyser ce contenu ... n'importe quel code – user1048958
Je ne suis pas sûr de quelle partie vous avez des problèmes avec? J'ai ajouté du code lié à l'analyse réelle pour vous aider à démarrer. Si ce n'est pas ce que vous cherchez, veuillez en dire un peu plus sur ce que vous essayez d'accomplir. –