Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 20-11-2004, 16:15   #1 (permalink)
Neuer User
 
Benutzerbild von saftbraten
 
Registriert seit: Nov 2004
Beiträge: 148
Streaming MP3?

ich hab dieses script gefunden zum streamen von externen mp3`s!

mySound=new Sound();
mySound.loadSound('sound.mp3',true);
playing=false;
onEnterFrame=function() {
if ((mySound.getBytesLoaded>=(mySound.getBytesTotal() *0.1)) &&
(!playing)) {
mySound.start();
}
}


das script ist voll nachvollziehbar... nur startet es mein mp3 nicht!

kann mir da jemand helfen?
saftbraten ist offline   Mit Zitat antworten
Alt 21-11-2004, 12:59   #2 (permalink)
tracer
 
Benutzerbild von andretti
 
Registriert seit: Jun 2004
Beiträge: 4.415
mySound.loadSound('sound.mp3',true);
probier's mal mit "
mySound.loadSound("sound.mp3",true);

und dies:
if ((mySound.getBytesLoaded>=(mySound.getBytesTotal() *0.1))

if (mySound.getBytesLoaded >= mySound.getBytesTotal()*0.1)

desweiteren:
(!playing))

!=playing
warum doppelklammer?

was bewirkt das *0,1?

so würd ich den code schreiben, sollte er funzen:

PHP-Code:
mySound=new Sound();
mySound.loadSound("sound.mp3",true); 
playing=true;
onEnterFrame=function() {
if (
mySound.getBytesLoaded>=mySound.getBytesTotal()*0.1&& !=playing)// oder playing != true{
mySound.start();
}
}; 
lass mich gerne eines besseren belehren
__________________
Viola per Sempre
Alle Angaben ohne Gewehr!
trace your open mind in variables !
andretti
ActionScript Dictionary
andretti ist offline   Mit Zitat antworten
Alt 21-11-2004, 15:00   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2004
Ort: hessen
Beiträge: 9
hallo,
also das o,1 bewirkt, dass der sound nach dem laden von 10 % der daten gestartet werden SOLL!!

cu andi
Phaser ist offline   Mit Zitat antworten
Alt 23-11-2004, 12:01   #4 (permalink)
Neuer User
 
Benutzerbild von saftbraten
 
Registriert seit: Nov 2004
Beiträge: 148
genau das 0.1 bewirkt dass das mp3 nach 10% laden gestartet werden soll!

also ich hab mein script immer noch nicht zum laufen gebracht!

hat jemand eine ander variante zum streamen und laden von externen mp3? oder was ist eigentlich eure bevorzugte technik zum laden von grossen sound-files (z.B. backgroundsounds)?

besten dank für jede anregung
saftbraten ist offline   Mit Zitat antworten
Alt 23-11-2004, 13:45   #5 (permalink)
pensionist
 
Benutzerbild von troner
 
Registriert seit: Jan 2003
Ort: Thalheim b. Wels
Beiträge: 568
Cool

hab mir da mal was geschrieben bin aber überzeugt davon das es nicht das gelbe von EI ist aber besser kann ichs nicht!
habs dir mit kommentaren versehen zum besseren verständniss!

PHP-Code:
//function
function playSound(file) {
    
//Stream Flag (false)
    
gestartet false;
    
//Soundobj erstellen
    
track = new Sound();    
    
//Sound zuladen (file)
    
track.loadSound(filetrue);
    
//Sound stoppen
    
track.stop();    
    
//prelaod function call
    
disPreload();                                                        
}    

//function
function disPreload() {
    
//hier den preload-balken angeben
    
this displayMc.p_mc;
    
//onenterframe
    
this.onEnterFrame = function() {
        
//bytes total
        
sGesamt track.getBytesTotal();
        
//bytes loaded
        
sGeladen track.getBytesLoaded();
        
//prozent rechnung
        
sProzent Math.round((sGeladen/sGesamt)*100);
        
//preload-balken verändern
        
this._width sProzent*2;
        
//if 10% geladen Sound starten
        
if(sProzent >= 10 && !gestartet) {
            
//trace
            
trace("Sound wird gestartet");
            
//sound starten
            
track.start();
            
//Stream Flag (true)
            
gestartet true;                                            
        }
        
//if 100%
        
if(sProzent == 100) {
            
//trace
            
trace("onEnterFrame entfernt");
            
//onenterframe löschen
            
delete this.onEnterFrame;                                    
        }
    }
}

//function call(file)
playSound("dein.mp3"); 
hoffe das hilft dir weiter!

mfg

Geändert von troner (23-11-2004 um 13:53 Uhr)
troner ist offline   Mit Zitat antworten
Alt 08-12-2004, 21:31   #6 (permalink)
subfiler
 
Registriert seit: Jul 2004
Beiträge: 175
funktioniert dieses nachgepostete script den überhaupt? ich habe bei mir das problem, das wenn ich ein mp3 als stream einlade, dieses nicht mit sound.start
(); gestartet werden kann - es startet von alleine, aber mehr nicht.

auch würde ich gerne wissen, ob ich bei einem streaming mp3 auch sound.start(secs); den parameter secs benutzen kann. wäre echt prima zu wissen.
hakre ist offline   Mit Zitat antworten
Alt 09-12-2004, 19:56   #7 (permalink)
Aushilfsflasher
 
Registriert seit: Aug 2004
Beiträge: 123
Also an dieser Stelle bin ich gerade

Habe genau das Problem dass meine extern geladene mp3 direkt nach dem Laden mit Song.start() losläuft, später aber nicht mehr

Sobald ich den Sound mit stop() unterbreche und an selbiger Stelle mit start(secs,0) weiter abspielen möchte kommt nix mehr...

Jemand ne Idee???

Wenn ich die Datei über Play() erneut lade und auf start() setze geht es!

Gruß und Danke schon mal,

X-Hale

Nachtrag: Hm... Also an dem Song.start(secs,0) liegt es nicht. Habe es gerade in Song.start(secs,1) umgeändert und es tut sich trotzdem nichts

Geändert von djx-hale (09-12-2004 um 21:17 Uhr)
djx-hale ist offline   Mit Zitat antworten
Alt 10-12-2004, 00:43   #8 (permalink)
subfiler
 
Registriert seit: Jul 2004
Beiträge: 175
falls .start(); nicht mehr nach .stop() bei einem streaming sound funktioniert muss der flash player geupdated werden. zum testen probiere einfach mit dieser swf: sound.check() testplayer das ding hat für mich alle fragen geklärt.
hakre ist offline   Mit Zitat antworten
Alt 10-12-2004, 09:44   #9 (permalink)
Aushilfsflasher
 
Registriert seit: Aug 2004
Beiträge: 123
Ist ja schön und gut... Nur leider weiß ich immer noch nicht wie man da macht. Und dieses .swf hilft mir da nicht wirklich weiter. Eine .fla wäre schon viel viel hilfreicher

Gruß,

X-Hale
djx-hale ist offline   Mit Zitat antworten
Alt 10-12-2004, 13:45   #10 (permalink)
subfiler
 
Registriert seit: Jul 2004
Beiträge: 175
zur besseren erläuterung und dokumentation schreibe ich einfach mal nieder, was genau die .swf macht, weil der code in der .fla grösstenteils einfach nur aus den knöpfen besteht, die immer nur einen oder 2 befehle des sound objektes ausführen:

zuerst wird ein sound objekt instanziert:
mySound = new Sound();

auf dieses objekt werden dann die einzelnen befehle angewandt (auf knopfdruck sozusagen). varurl ist dabei die adresse, die oben in der textbox eingetragen wurde.

knöpfe
[knopf] aktionen

[event] mySound.loadSound(varurl, false);
[event+start] wie [event], danach wird direkt mySound.start(); ausgeführt

[stream] mySound.loadSound(varurl, true);
[stream + stop] wie [stream], danach wird direkt mySound.stop(); ausgeführt
[stream + start] wie [stream], danach wird direkt mySound.start(); ausgeführt

[clear obj] ist eine nicht ganz saubere implementierung, um Sound in die gleiche Variable erneut zu instanzieren. geht sicherlich auch anders, habs auf die schnelle halt so realisiert:
Code:
mySound.loadSound("error.errorfile");
mySound = "teststring";
mySound = new Sound();
[start] mySound.start();
[stop] mySound.stop();
[start at] mySound.start(varstartpos); wobei varstartpos einfach der wert aus dem textfeld auf dem knopf ist.

das war es im grossen und ganzen. die ID3 tags werden nur auf knopfdruck ausgelsen, dies geschieht mit folgender routine:
Code:
function id3Display() {
	t = "";
	for( var prop in mySound.id3 ){
		t = t + prop + " : "+ mySound.id3[prop]+"\n"; 
	}
	varid3 = t;
}
varid3 ist einfach eine variable die mit dem ID3 textfeld verknüpft ist.

die preload bar
die preload bar arbeitet einfach mit den funktionen getBytesTotal(); und mySound.getBytesLoaded(); sie werden miteinander verrechnet und mit 400 multipliziert um auf die gesamtbreite von 400 für den türkisen ladebalken zu kommen. diese berechnung wird alle 100 milisekunden ausgeführt, damit die darstellung aktualisiert wird. loadbar ist dabei der instanzname des türkisen balkens welcher sich einfach auf _level0 befindet (wie alles andere auch in der .swf).

Code:
	bt = mySound.getBytesTotal();
	bl = mySound.getBytesLoaded();
	varloadbytestotal  = bt;
	varloadbytes = bl;
	if (bl==0) {
		loadbar._visible = false;
	} else {
		per = bl/bt * 400;
		loadbar._width = per;
		loadbar._visible = true;
	}
der playstatus
zeigt einfach an an welcher stelle das sound objekt gerade abspielt und wie lang insgesamt die audiospur ist (in millisekunden). falls da 0 steht bei dem einen oder anderen wert, so unterstützt der flashplayer diese eigenschaften nicht. der code wird ebenfalls alle 100 millisekunden aufgerufen:
Code:
	varplayduration = mySound.duration;
	varplaypos = mysound.position;
wie man also sehen kann, alles keine grosse kunst. aber das genau ist ja der sinn der sache um die einzelnen funktionen auszutesten.
hakre ist offline   Mit Zitat antworten
Alt 10-12-2004, 15:17   #11 (permalink)
Aushilfsflasher
 
Registriert seit: Aug 2004
Beiträge: 123
hm.... OK Danke! Also ich hab jetzt gerade nochmal rumprobiert und muss sagen, dass bei mir Song.start() generell nicht funktioniert. Lief nur durch loadsound los. Jetzt stoppe ich den Sound vorher und er lässt sich einfach nicht mehr starten :-(

Gruß,

X-Hale
djx-hale ist offline   Mit Zitat antworten
Alt 10-12-2004, 22:19   #12 (permalink)
subfiler
 
Registriert seit: Jul 2004
Beiträge: 175
dann sage dochmal was oben rechts nach player: für zahlen stehen. wenn du den 6er player hast update den am besten auf die höchste version. den download gibt es bei macromedia. danach sollte es mit start und stop beliebig oft bei dem stream klappen:
flash player 6 update WINDOWS (revision 79; inkl. des test-players in flash selber)

weitere downloads: http://www.macromedia.com/support/fl...downloads.html
hakre ist offline   Mit Zitat antworten
Alt 10-12-2004, 23:02   #13 (permalink)
Aushilfsflasher
 
Registriert seit: Aug 2004
Beiträge: 123
Ja aber heißt das nicht dass alle Leute die mit dem Player 6.0 drauf gehen diesen Bug haben?!? Is doch ******e :-(

Habe übrigens schon den Player 7.0 soweit ich weiß und es geht trotzdem net... Arbeite mit Flash MX...

Gruß,

X-Hale

Anhang: OK hatte doch den Flash Play 6.0 Mal sehen ob es mit dem neuen klappt...
djx-hale ist offline   Mit Zitat antworten
Alt 10-12-2004, 23:27   #14 (permalink)
Aushilfsflasher
 
Registriert seit: Aug 2004
Beiträge: 123
Yeah... Vielen Dank für den Tipp!!! Funzt jetzt... Muss dann halt auf der Startseite angeben dass der MP3-Player nur AB Player 6.x funzt

Wird schon irgendwie gehen

Danke soweit, melde mich bei weiteren Komplikationen... HeHe

Gruß,

X-Hale
djx-hale ist offline   Mit Zitat antworten
Alt 11-12-2004, 18:09   #15 (permalink)
subfiler
 
Registriert seit: Jul 2004
Beiträge: 175
jo, fein. es bedeuted natürlich, das alle die das "falsche" plugin haben, das das nicht richtig haben - es hilft nur eine abfrage der $version variable um da mal auf nummer sicher zu gehen.

ich stosse auch schon wieder auf die nächsten probs, dafür gibts aber direkt einen neuen thread.
hakre ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 08:36 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele