Ich versuche, einen leichtgewichtigen HTTP
Server in meiner app zu feed
dynamisch generierte MP3
Daten des eingebauten in Android
MediaPlayer
zu schreiben. Ich bin nicht berechtigt, meine Inhalte auf der SD card
zu speichern.Streaming auf Android Mediaplayer
Meine Eingabedaten sind im Wesentlichen unendlich lang. Ich sage MediaPlayer
, dass seine Datenquelle im Grunde so etwas wie "http://localhost/myfile.mp3"
sein sollte. Ich habe einen einfachen Server eingerichtet, der auf MediaPlayer
wartet, um diese Anfrage zu stellen. MediaPlayer
ist jedoch nicht sehr kooperativ. Zuerst macht es eine HTTP GET
und versucht, die ganze Datei zu greifen. Wenn wir versuchen, Daten einfach in die socket
zu schreiben, versuchen wir es mit dem HTTP
Range-Header, um Daten in Chunks zu schreiben. MediaPlayer
mag dies nicht und fordert nicht die nachfolgenden Chunks an.
Hat jemand Erfolg gehabt Streaming-Daten direkt in MediaPlayer
? Muss ich stattdessen einen RTSP
oder Shoutcast
Server implementieren? Fehle ich einfach eine kritische HTTP header
? Welche Strategie soll ich hier verwenden?
Haben Sie diesen Ansatz auch für die Wiedergabe von Videodateien verwendet? Hat es dasselbe wie Audiodateien ausgeführt? –
Hey Rob hast du einen Workaround für das Problem? können Sie Beispielcode freigeben? –
ich weiß es spät. aber das ist für diejenigen, die hier in der Zukunft landen. Dieser [** Link **] (http://stackoverflow.com/questions/5343730/mediaplayer-stutters-at-start-of-mp3-playback/5432091#5432091) hat Code, mit dem zu beginnen. – Samuel