CrowdMusic/CrowdMusicProject — pull request #19 by Saytiras (2013-12-04 03:22:40+00:00)
Title: Funktionierendes Streaming

Jo, Streaming soeben vollständig eingebaut.

Kurz ein paar Hinweise zu den Änderungen:

- Alle Audiofiles auf dem Smartphone finden und mit allen relevanten Daten (optimiert für Netzwerkübertragung) in Objekten kapseln (CrowdMusicTrack). Werden dann in einer Liste gespeichert. Zugriff über CrowdMusicClient.

Hier sollte es jetzt in der ClientActivity eine Möglichkeit geben sich diese Tracks in einer Liste anzuschauen und die auszuwählen, die man an den Server schicken will.

Issue: https://github.com/CrowdMusic/CrowdMusicProject/issues/17

- Wenn man in der MainActivity eine laufende CrowdMusicSession anklickt, wird jetzt die ClientActivity gestartet, der die IP des CrowdMusicServers übergeben wird. An diese IP werden später die Submits gesendet.

Das gibt natürlich Probleme, wenn man auf einen Service klickt, der kein CrowdMusicService ist. Also müssen die aus der Liste verschwinden.

Issue: https://github.com/CrowdMusic/CrowdMusicProject/issues/14

- Das Streaming funktioniert über HTTP. Per GET-Request an den Client in der Form "http//:CLIENT_IP:CLIENT_PORT/audio/FILE_ID". Diese Adresse muss einfach als String dem MediaService in der play-Methode übergeben werden um es abzuspielen. Mit dem MediaService kann der Player dann kontrolliert werden (Pause, Stop, ....).

Die Idee ist, in den oben genannten CrowdMusicTracks die IP des Submitters (Client | Muss gespeichert werden, sonst weiß man nicht von wem der Track submittet wurde) und die ID des Audiofiles zu speichern (zusammen mit Title und Artist). Die werden beim Submit mit an den Server übertragen. So kann der Server wenn dieses File an der Reihe ist einfach die URL zusammenbauen und an den MediaService übergeben um mit dem Streamen zu starten.