| |||||||
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 2007
Beiträge: 6
| Streamen von Sound stoppen
Hallo Ihr! Ganz bestimmt wisst ihr weiter, vielleicht meldet sich ja jemand. Also, ich habe einen recht simplen mp3-Player nach einem Tutorial gebastelt, mit Pause, Stop, Vor und Zurück-button. Prinzip ist, dass in einem audio-objekt nach Bedarf der jeweilige Titel geladen wird, welcher das ist, wird mit einer Funktion definiert. Der Titel soll durchlaufen, habe den Clip deswegen Lauf_mc genannt. Die Titel hab ich mal mit Buchstaben ersetzt. // Songtitel zur Ausgabe im Textfeld var titel:Array = ["a", "b", "c", "d", "e", "f", "g", "h"]; // Dateinamen var dateien:Array = ["audio/a.mp3", "audio/b.mp3", "audio/c.mp3", "audio/d.mp3", "audio/e.mp3", "audio/f.mp3", "audio/g.mp3", "audio/h.mp3"]; // Welches Stueck aus Array zuerst (0= erstes Stueck) var songNr:Number = 0; //Audio-Objekt erstellen var musikBox:Sound = new Sound(); function spieleAudio() { if (songNr>=dateien.length) { //Song-Nummer zu hoch -> von vorne beginnen songNr = 0; } else if (songNr<0) { /* Song-Nummer zu niedrig -> letztes Element nehmen*/ songNr = dateien.length-1; } //MP3 laden musikBox.loadSound(dateien[songNr], true); //Titel anzeigen Lauf_mc.Titel_txt.text = titel[songNr]; } musikBox.onSoundComplete = function() { //Variable um 1 erhoehen songNr++; //Funktionsaufruf spieleAudio() }; Next_btn.onRelease = function() { songNr++; spieleAudio(); }; Back_btn.onRelease = function() { songNr--; spieleAudio(); }; Stopp_btn.onRelease = function() { musikBox.stop(); Lauf_mc.Titel_txt.text = ""; }; Start_btn.onRelease = function() { spieleAudio(); }; Jetzt ist mir in der Downloadsimulation aufgefallen, dass nach einem Klick auf den Next-Button zwar das nächste Lied gestreamt wird, aber eben auch das vorherige weiter. Klickt man also ungeduldig durch den Player, hat man so dann mal 8 oder mehr Songs gleichzeitig am Streamen, was einfach zu lang dauert. Kann man also das Streamen eines Songs unterbrechen? Oder bevor etwas neues in das Soundobjekt geladen wird dieses vielleicht leeren oder so? Eine andere Sache wäre noch, dass der Player so wie er jetzt programmiert ist auch schon einmal vollständig geladene Titel wieder neu lädt. Kann man das umgehen, also schon mal Geladenes "konservieren"?? Vielen Danke für Hilfe! Daniel |
| | |
| | #2 (permalink) |
| brand new user Registriert seit: May 2002 Ort: Laimbach 6 1/2
Beiträge: 16.884
|
Vielleicht lehne ich mich jetzt zuweit aus dem Fenster!! Einen angekickten Sound, kannst Du nicht stopen!! Der lädt bis er da ist ![]() Allerdings kann man prüfen, ob ein Titel schon geladen ist, das dürfte Deine Probleme lösen!!
__________________ Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake! "Wer tanzen will, muß erst gehen lernen" Geändert von RustyCake (24-04-2007 um 22:27 Uhr) |
| | |
| | #3 (permalink) |
| ontheoutsidelookingin Registriert seit: Jun 2001 Ort: Dortmund
Beiträge: 5.897
|
das problem hatte ich auch schonmal. geholfen hat nur das laden einer nicht existenten sounddatei (soweit ich mich erinnere): ActionScript:
__________________ 33rpm |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Apr 2007
Beiträge: 6
|
Ne, das funktioniert leider auch nicht. Ich mein, dann ist es doch um einiges effizienter, pro Titel ein Soundobjekt zu vergeben, auf die Playeroberfläche zu verzichten, pro Titel eben einen Playbutton zu vergeben, der dann das jeweilige Soundobjekt anspricht. So wird zumindest das immer wieder erneute Laden vermieden. Hmmm ... |
| | |
| | #5 (permalink) |
| ontheoutsidelookingin Registriert seit: Jun 2001 Ort: Dortmund
Beiträge: 5.897
|
gab es nicht schon mal einen bug im flashplayer 6, der ähnliches verursacht hat? ich dachte, das wäre mittlerweile alles gelöst. scheint ja doch nicht der fall zu sein hast du schonmal versucht, dein sound-object vor jedem laden zu löschen? sollte das nicht funktionieren, auch mal den target_clip entfernen. (new Sound([target:Object]) Erstellt ein neues Sound-Objekt für den angegebenen Movieclip target)
__________________ 33rpm |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Apr 2007
Beiträge: 6
|
Hatte schon mal die Idee, dass man das Objekt immer wieder leeren müsste, bevor man was Neues lädt, wusste aber nicht wie das geht. Ich probiers mal .. Hmm .. komme da nicht weiter, habe jetzt auch mal das Laden des Soundobjekts auf jeden Knopf separat gelegt, also nicht einfach oben drüber, aber auch dann lädt er einfach weiter. Wird sich wohl nicht ändern lassen. Geändert von Waschmaschinexy (25-04-2007 um 15:39 Uhr) |
| | |
| | #7 (permalink) |
| Home Flasher Registriert seit: Apr 2004 Ort: Engelskirchen
Beiträge: 345
|
Hallo, ist eigentlich ganz einfach:
Entscheiden ist das Stoppen und anschließende Löschen des Instanz des Sound-Objektes. Gruß vom Flash Doc
__________________ Erst Flash CS5 und dann Fläsch' Bier !!! |
| | |
| | #8 (permalink) |
| Neuer User Registriert seit: Apr 2007
Beiträge: 6
|
Also .. bin immer noch nicht weiter gekommen. Habe versucht, die Tipps zu befolgen, bin mir aber nicht sicher, ob ich alles richtig gemacht habe. Vielleicht macht sich ja jemand die Mühe, seinen Vorschlag in das Script einzufügen, damit ich gar keine Möglichkeit habe, was falsch zu machen ![]() Lieben Dank! |
| | |
| | #9 (permalink) |
| ontheoutsidelookingin Registriert seit: Jun 2001 Ort: Dortmund
Beiträge: 5.897
|
*bump*, weil ich das problem kürzlich nochmal hatte. die einzige methode, die das problem zuverlässig gelöst hat, war das laden einer sehr kleinen, ein paar byte großen und stillen mp3-datei. die datei muss existieren und es muss eine mp3 datei sein. alles andere hat nicht funktioniert. swf exportiert als flash8.
__________________ 33rpm |
| | |
| | #11 (permalink) |
| ontheoutsidelookingin Registriert seit: Jun 2001 Ort: Dortmund
Beiträge: 5.897
|
jau, vor der eigentlichen datei lädst du dann null.mp3 (so hab ich die genannt). musst natürlich aufpassen, dass dadurch nicht u.u. irgendwelche events des sound-objects ausgelöst werden.
__________________ 33rpm |
| | |
| | #12 (permalink) | |
| Neuer User Registriert seit: Sep 2002 Ort: Basel
Beiträge: 119
| Zitat:
Ist besser als ein kleines MP3 zu laden, da der Event onLoad bei einer ungültigen Datei "false" an die Funktion weiter gibt. Das kann man dann auch sauber "abfangen".
__________________ Möge die Macht mit uns sein! | |
| | |
| | #13 (permalink) | |
| ontheoutsidelookingin Registriert seit: Jun 2001 Ort: Dortmund
Beiträge: 5.897
| Zitat:
Man kann das ja ohne Probleme so anpassen, dass bei onLoad der kleinen Datei nix passiert.
__________________ 33rpm | |
| | |
| | #14 (permalink) | |
| Neuer User Registriert seit: Sep 2002 Ort: Basel
Beiträge: 119
| Zitat:
- Firefox (Player 7, 8 und 9) -> funktioniert - Safari (Player 9) -> funktioniert - Opera (Player 9) -> NICHT FUNKTIONIERT hat paralell das alte weiter geladen - Internet Explorer 7 (Player 9) -> hat funktioniert. Ja da bleibt mir wohl nichts anderes übrig als diesen Workaround mit dem kleinen Audio File zu machen! ![]() Oder gibt es evtl. noch andere Varianten? Ich streame die Audio Files nicht, habe ein Playliste in der man zwischen mehreren MP3 "switchen" kann.
__________________ Möge die Macht mit uns sein! | |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |