InputStream eines Musik-Streams abspielen

PissPain

Aktives Mitglied
Hallo, hier mein Code:
Java:
package main;

import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

import sun.audio.AudioPlayer;
import sun.audio.AudioStream;

public class Main {
	public static void main(String[] args) {
		try(InputStream inputStream = new URL((Url des Musik-Streams)).openStream()) {
			AudioStream audioStream = new AudioStream(inputStream);
			AudioPlayer.player.start(audioStream);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

Kann mir jemand helfen? 🙂, versuche schon lange irgendwie etwas mit meinem InputStream zu machen, funktioniert nichts. Ich will den Stream einfach nur simpel abspielen lassen!
Und noch etwas: Wenn ich die bytes des InputStreams ein wenig in eine Datei schreibe, kann ich sie mit Windows Media Player öffnen und abspielen, wenn ich diese Datei aber mit dem Beispiel oben einlese, bekomme ich eine unsupportedaudiofileexception.
Vllt. kann mir da jemand auch was zu sagen.

Vielen Dank 🙂
 
Zuletzt bearbeitet:
Ich schreibe den Stream als .wav in eine Datei:
Java:
public static void main(String[] args) {
		try(InputStream inputStream = new URL((Url zum Stream)).openStream(); OutputStream outputStream = new FileOutputStream("C:\\Users\\user\\Desktop\\stream.wav")) {
			
			int b = 0;
			while((b = inputStream.read()) != -1)
				outputStream.write(b);
			
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
(Ich lasse das Programm nur kurz laufen, um keine zu große Datei zu generieren)
Diese Datei kann ich mit Windows Media Player öffnen und abspielen.
Warum bekommt dies nicht auch Java hin?

Hier der Code zum Einlesen und 'Abspielen' der Datei:
Java:
public static void main(String[] args) {
		try(InputStream inputStream = Main.class.getClassLoader().getResourceAsStream("C:\\Users\\user\\Desktop\\stream.wav")) {
			
			AudioStream audioStream = new AudioStream(inputStream);
			AudioPlayer.player.start(audioStream);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

Mein Problem ist, dass ich keine Ahnung habe, was diese Klassen von mir erwarten. (Auch nicht, wenn ich mir die API anschaue)

Hoffe ihr könnt mir helfen 🙂
 

Zurück
Oben