| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 3
|
hi, für ein online-radio-projekt (play-fm) versuche ich grad einen flash-player zu basteln, der direkt einen shoutcast-stream wiedergibt. prinzipiell funkt. das ja auch perfekt (.loadSound (url, true), jedoch nur im standalone-flash-player, im mozilla, opera, aber NICHT im internet explorer (zumind. nicht bei jedem, dürfte von der flash-version bzw. ob flash als active-x control läuft abhängen). nach ausgiebigem googlen bin ich draufgekommen, dass es scheinbar daran liegt, dass der shoutcast "falsche" http-header sendet... ein workarounnd hab ich auch schon gefunden, und zwar mittels einem PHP-skript, das quasi als "proxy" agiert, die shoutcast-daten entgegennimmt, mit korrekten headern versieht und an den flash-client sendet. habe folgenden code ausprobiert, jedoch leider auch ohne erfolg: $streamname = "64.236.34.97"; // put in whatever stream you want to play $port = "80"; // put in the port of the stream $path = "/stream/1018"; // put in any extra path, this is usually just a / header("Content-type: audio/mpeg"); $sock = fsockopen($streamname,$port); fputs($sock, "GET $path HTTP/1.0\r\n"); fputs($sock, "Host: $streamname\r\n"); fputs($sock, "User-Agent: WinampMPEG/2.8\r\n"); fputs($sock, "Accept: */*\r\n"); fputs($sock, "Icy-MetaData:1\r\n"); fputs($sock, "Connection: close\r\n\r\n"); fpassthru($sock); fclose($sock); tja also meine frage: hat jemand schon geschafft per flash einen shoutcast-stream abzuspielen, mit oder ohne diesem workaround? danke im vorhineine f. alle antworten, dieses problem macht mir echt schon seit tagen zu schaffen :-( lg, michi ps: habe hier im forum auch einige andere threads mit ähnlichen problemen gefunden, jedoch leider keine lösungen... |
| | |
| | #2 (permalink) |
| Banned Registriert seit: Sep 2003
Beiträge: 2.071
|
Ja hab ich schon geschafft .. ohne probleme das problem ist das die .pls listen anders gesplittet sind falls du diese ausliest.... (ich hoffe du tust dieses denn schoutcast verweist ausschlisselich auf .pls playlisten) allerdings was nicht geht verate ich dir auch direkt die verzeichnisse von shoucast auszulesen also dir ne webseite auslesen zu lassen und dann alles .pls anzeigen zu lassen die drauf sind um dann aus denen auszuwählen.... ansonsten noch ein tip .... im browser egal welchem wirst du das niemals zum laufen bekommen ...such mal nach "domain security" domainübertgreifender zugriff ist auch bei streaming in flash nur im projektor möglich.(wobei ich sagen muss das ich alles ohne php gemacht habe und mich zu einen projektor entschlossen habe) nächstes problem was auf dich zukommen wird... der stream läuft und läuft und läuft und...runtime error...warum....cach bzw. temp iss voll und verurschat einen runtime error ... also musst du kurzfristig den stream unterbrechen vorab jedoch einen anderen sound mit volume 0 laden die beiden soundobjecte in einer function switschen .. wenn dus ordentlich machst hörst du keinen sprung oder unterbrechung...(ich mache das nach 400.000 ms also 6 mins 40 sekunden... denn länger als 8 minuten ist der stream bei mir noch NIE ohne runtime error oder unterbrechung gelaufen! und habs weiss gott oft genug getestet(waren 3 wochen arbeit alles in allem)( sogar vor und rückspulen in dem teil des streams der sich gerasd im cach befindet istz möglich aber nicht ratsam weil beim nächsten wechseln des streams.. ein klarer spruung zu hören sein wird) gruss sascha Geändert von projecktx (24-04-2004 um 05:23 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Apr 2004
Beiträge: 3
|
danke mal für die antwort! zum stichwort "domain-security" hab ich mich mittlerweile schon eingelesen. soweit ich verstanden habe, müsste am shoutcast-server gleichzeitig ein webserver laufen, der im root-verzeichnis ein crossdomain.xml-file liegen hat, indem die entsprechenden cross-site-domains eingetragen sein müssten. versteh ich das soweit richrtig? trotzdem: im mozilla funkt. es tartsächlich per flash einen shoutcast-stream zu spielen siehe link einfach auf "Click" und der flash-player müsste einen stream abspielen -> funkt. bei mir unter mozilla & opera. lg, michi |
| | |
| | #6 (permalink) |
| Banned Registriert seit: Sep 2003
Beiträge: 2.071
|
hmmm nicht unbedingt ....aber vielleicht gehst du auch anders an die sache ran.... einerseits redest du von shoutcast andererseits vom stream... shoutcast stellt ja nur (wenn auch recht komische) .pls playlisten bereit.... ich habe es damals so gemacht das ich diese playlisten ausgelesen habe via loadXML und dann darus die url für den eigentlichen stream extrahiert habe... und diesen dann wiederum per loadSound in flash geladen habe... zum einen sollte es mit flash (als swf) nicht möglich sein diese pls datei auszulesen solange sie nicht auf dem selben server (selbe domain) liegt... zum zweiten dürfte flash(als swf) nicht in der lage sein daten von einem anderen server (anderer domain) per load sound zu laden... und cross domain funzt eher so das du ein flash hast das auf dem selben server wie der stream liegt und damm in diesem den zugriff auf selbiges erlaubst... das wird normalerweise genutzt um den zugriff auf variablen von einem server zum anderen server zu ermöglichen du bräuchtest also 2 swf dateien... nur wie das mit loadsound aussieht ... da du aber nicht über load sound gehst sondern eine socket... ist das wieder etwas anderes.... wo ich momentan selber überfragt bin ... sorry... aber ich mach mir mal weitere gedanken da mich das auch interessiert.gruss Sascha ps... bei mir funktioniert es leider nicht... Windows98se, IE 6.0.2800.1106IS, flashplayer7 pps... mach doch mal 2 textfelder mit dynamischem text in den player... und lass dir dort den streampfad ausgeben sowie in dem anderen die mysound.duration(natürlich in einem onenterframe oder einem intervall aktulisiert) dann kann man evtl eher erkennen ob geladen wird.... Geändert von projecktx (02-05-2004 um 00:41 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |