Moin!
Ich muss auf unserer Homepage einige Sounddateien einbinden, die leider nicht downloadbar sein duerfen (nicht mein Fehler - ich hasse sowas).
Wie du dir sicher denken kannst, gibts sowas nicht. Denn wenn die Daten auf irgendeine Weise zum Rechner gelangen, kann dieser die Daten speichern - und nichts anderes ist ein Download.
Auch der Versuch, die Musik als Streaming anzubieten, ist nichts anderes als "Senden von Daten zum Rechner", was grundsätzlich auch gespeichert werden kann.
Wenn man sich etwas besser auskennt (daß man dumme Besucher "reinlegen" kann, ist ja klar), dann kriegt man derartige Soundfiles eigentlich immer:
Flash besteht aus SWF-Dateien. Auch wenn man aus denen keine WAV- oder MP3-Datei konvertieren kann, so kann man die SWF-Datei immer noch speichern (z.B. auch dem Cache fischen oder einfach einen Browser nehmen, der kein Plugin hat, und die Adresse der Datei aus dem Quelltext fischen, aufrufen und speichern.)
Streaming-Player müssen auch irgendwie die Adresse der Sounddatei erhalten. Meist werden dazu ganz kurze Meta-Dateien eingebunden, in denen die Adresse des eigentlichen Sound steht. Man muß also in zwei Dateien nachsehen, wo es den Sound gibt: Zuerst im HTML-Quelltext die Adresse des Metafiles finden (z.B. .asx oder .ram), und dann im Quelltext dieses Files die Adresse des Medienstreamings. Wenn für das Streaming HTTP benutzt wird, gelingt der Download mit dem Browser. Wenn (z.B. für RealMedia) RTSP benutzt wird, kann man vielleicht stattdessen HTTP benutzen. Es gab allerdings auch mal einen Client, der RTSP konnte, sich als RealPlayer ausgab, und trotzdem das Speichern erlaubte.
Wer auf solche Suchspielchen keinen Bock hat, läßt den Sound einfach genau wie vorgesehen abspielen und nimmt mit seiner Supa-Dupa-Soundkarte die unvermeidbare Soundausgabe direkt digital wieder auf und speichert auf Festplatte. Es gibt auch "Soundkartentreiber" wie TotalRecord, welche jegliche Soundausgabe zuerst mal auf Festplatte speichern, und vielleicht auch noch zur echten Soundkarte durchschleifen, damit man was hört. Die letzte, garantiert unvermeidliche Lösung ist, den Ton einfach analog abzugreifen, sei es per Line-Ausgang (und dann einspielen in einen zweiten Rechner), oder mit einem Mikrofon vor dem Lautsprecher.
Ich will nun also einen Player einbinden, bei dem man auf Knopfdruck verschiedene Lieder abspielen lassen kann. Sollte ich dazu am besten Flash benutzen, oder reicht auch n bisserl Javascript und HTML?
Nachdem du nun ausführlich weißt, daß man Musik im Internet nicht schützen kann, darfst du dir aussuchen, was du willst, um Musik anzubieten. Der Aufwand, die Songs zu speichern, steigt möglicherweise, wenn man RTSP und RealPlayer oder gar Flash nimmt, aber gerade bei Flash gibt es doch nichts schöneres, als den ordentlich designten Player gleich mitgeliefert zu bekommen. SWF-Datei starten, Player geht.
Und wenn die Musik nachgeladen wird: Das kann man feststellen, dann greifen wieder die Methoden, irgendwie die Adresse der externen Datei festzustellen und diese zu speichern.
- Sven Rautenberg