InputStream cachen

windl

Bekanntes Mitglied
Hallo,

ich habe folgendes Problem! Ein Bekannter hat sich den Subsonic Server installiert. Nun hat er mir Zugriff via Internet auf diesen Server eingeräumt (Die Musik die dort liegt ist rechtlich ok).
Jetzt habe ich eine Java-Anwendung geschrieben (Subsonic » Free Music Streamer), um Lieder von dort abzuspielen.
Auf jeden Fall, bestimme ich den Stream-Header mit dem tritonus_share.jar. Dort gibt es eine Funktion
Java:
 try
         {
           audioInputStream = getAudioInputStream(inputStream, lFileLengthInBytes);
         }
         catch (UnsupportedAudioFileException e)
         {
           inputStream.close();
           throw e;
         }

Wenn die Funktion
Java:
getAudioInputStream
aufgerufen wird kommt der Stream nicht mehr zurück - wirft keinen Fehler - ist einfach tot.
Mein Verdacht ist nun, dass der Stream abreisst und daher nicht zurück kommt.

Jetzt zu meinem Lösungsvorschlag: Ich würde den Stream cachen. D.h. ich würde erst einmal 1 MB in einen internen Stream schreiben und dann diesen Stream zum Abspielen bringen.

Hat jemand eine Idee bzw. hat jemand schon einmal einen InputStream gechached?

Danke
Uwe
 

Bernd Hohmann

Top Contributor
Mein Verdacht ist nun, dass der Stream abreisst und daher nicht zurück kommt.

Jetzt zu meinem Lösungsvorschlag: Ich würde den Stream cachen. D.h. ich würde erst einmal 1 MB in einen internen Stream schreiben und dann diesen Stream zum Abspielen bringen.

Ich gehe mal davon aus, dass die Lib intern auch schon einen Cache hat. Du wirst Dir wohl die Sourcen besorgen müssen und dann mit einem Debugger tracen wo er hängt.

Ich tippe irgendwo auf einen Protokollfehler in Deiner Implementierung, denn einfach so im Stream zu hängen wäre entweder doof implementiert oder die Implementation wartet auf etwas, was nicht kommt.

Wenn Du irgendwo Zugriff auf den genutzten TCP/IP Socket hast, setze mal das Socket Timeout runter (vielleicht gibt es da einen Schalter in der von Dir genutzten API).

Bernd
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Socket Wie kann man in Java die Anzahl der Objekte in einem InputStream sehen ohne ihn durchgehen zu müssen Netzwerkprogrammierung 1
S Socket String InputStream in hex umwandeln Netzwerkprogrammierung 1
D GZIP InputStream lesen ohne zu encoden Netzwerkprogrammierung 1
F Java Server Scanner oder InputStream kann nicht gelsesen werden! Netzwerkprogrammierung 6
R Socket InputStream readObject > Connection Reset Netzwerkprogrammierung 3
K Socket InputStream wird nicht erzeugt Netzwerkprogrammierung 4
M Socket InputStream liest nicht vollständig Netzwerkprogrammierung 7
M Was macht Thread, wenn er aus einem "leeren" Inputstream liest ? Netzwerkprogrammierung 5
K Byte für Byte aus InputStream lesen Netzwerkprogrammierung 5
F JSch - inputstream is closed Netzwerkprogrammierung 13
M Socket InputStream sendet ausgaben von OutputStream zurück Netzwerkprogrammierung 2
D Inputstream to Outputstream Netzwerkprogrammierung 3
M InputStream and ObjectInputStream zur gleichen Zeit Netzwerkprogrammierung 11
T Inputstream -> verschiedene Objekte lesen Netzwerkprogrammierung 3
MQue Inputstream Timeout Netzwerkprogrammierung 2
S Servlet InputStream leer?! Netzwerkprogrammierung 14
G HTTP-Request InputStream-Problem Netzwerkprogrammierung 5
P Inputstream "verfügbar" Netzwerkprogrammierung 4
G JPG im InputStream Netzwerkprogrammierung 2
A InputStream liest immer komplettes PHP-Script Netzwerkprogrammierung 6
A InputStream ließt nur 65536 Zeichen anstatt ganzer Puffer Netzwerkprogrammierung 8
A inputstream teilen? Netzwerkprogrammierung 4
D InputStream (Socket) mit BufferedInputStream puffern Netzwerkprogrammierung 2
M Sockets und InputStream Netzwerkprogrammierung 8
R Client nimmt den Inputstream nicht an Netzwerkprogrammierung 5
S Mail anhang in InputStream packen Netzwerkprogrammierung 5
M InputStream - Bytes gehen verloren? Netzwerkprogrammierung 3
E Problem bei Sockets/InputStream über externe Klasse Netzwerkprogrammierung 5
André B. In einen InputStream schreiben? Netzwerkprogrammierung 6
G inputstream hat plötzlich weniger inhalt Netzwerkprogrammierung 8
Z ProgressBar auf BufferedOutput- & -InputStream Netzwerkprogrammierung 2

Ähnliche Java Themen


Oben