Zurück   Flashforum > Software > Sound

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-03-2005, 22:57   #1 (permalink)
Style Freak
 
Registriert seit: Nov 2004
Ort: Radolfzell
Beiträge: 615
musikplayer mit swf anstatt mp3

es gibt hier im forum viele tutorials die mir zeigen wie ich mir einen mp3 player basteln kann.
nur da ich nen kostenlosen webspace anbieter besitze sind mp3s dort verboten.
jetzt hab ich mir gedacht die mp3s in einer swf zu speichern was ja auch den vorteil hat das sie kleiner und daher auch platzspahrender sind.
da ich jetzt das ganze so programieren möchte das ich über eine xml die swf in einen player laden will wollte ich fragen was ich in dem folgenden script ändern muss.
PHP-Code:
stop();//film anhalten
songliste = new XML();//neues XML Objekt
songliste.ignoreWhite=true;//Leerzeichen ignorieren
songliste.onLoad = function (success) {//onLoad function (wird ausgeführt, wenn die daten geladen werden)
    
if(success) {//wenn das laden erfolgreich war
        //arrays erstellen
        
_global.songnamen = [];
        
_global.songfiles = [];
        for (var 
i=0i<songliste.firstChild.childNodes.lengthi++) {//für alle Elemente in der XMLfile
            //Die attribute auslesen und in die Arrays packen
            
_global.songnamen[i] = songliste.firstChild.childNodes[i].attributes.name;
            
_global.songfiles[i] = songliste.firstChild.childNodes[i].attributes.file;
            
trace(songnamen[i]+"  "+songfiles[i]);//überprüfen, ob wirklich die Daten richtig übergeben wurden
        
}
        
_root.createEmptyMovieClip("sound_mc",1);
        
_root.sound_mc.sound_obj = new Sound();
        
_global.song_nr random(songfiles.length); // per Zufall einen Song auswählen
        
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]); // song, der grade per Zufall ausgewählt wurde starten
    
} else {anz.text="Fehler beim Laden der XML datei"}//falls ein Fehler auftritt beim Laden
}

MovieClip.prototype.song_starten = function (filename) {
    
this.sound_obj.loadSound(file,true)//true steht hier für streaming=an
    
this.onEnterFrame = function () {//das onEnterFrame Ereignis 
        
if(this.sound_obj.position>0) {//wenn der Sound startet
            
delete this.onEnterFrame// das onEnterFrame Ereignis löschen
            
this._parent.anz.text=name//name wurde als parameter it übergeben
        
} else {
            
this._parent.anz.text="loading..." //this._parent heißt soviel wie: dieser_mc_hier.die_übergeordnete_instanz dort liegt nämlich das textfeld.
        
}
    }
    
this.sound_obj.onSoundComplete = function () {//wenn der sound fertig abgespielt wurde
        
(song_nr==songfiles.length-1)? _global.song_nr=_global.song_nr++;//nächsten Song auswählen (-1 da song_nr bei 0 anfäng)
        
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);//nächsten Song starten
    
}
}

btn_play.onRelease = function () {
    
this._parent.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);//aktuell ausgewählten Song starten
}
btn_stop.onRelease = function() {
    
this._parent.sound_mc.sound_obj.stop(); //Wiedergabe stoppen
    
this._parent.anz.text="Wiedergabe gestoppt";
}
btn_next.onRelease = function () {
    (
song_nr==songfiles.length-1)? _global.song_nr=_global.song_nr++;//nächsten Song auswählen (-1 da song_nr bei 0 anfäng)
    
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);//nächsten Song starten
}
btn_prev.onRelease = function () {
    (
song_nr==0)? _global.song_nr=songfiles.length-_global.song_nr--;//vorherigen Song auswählen(song_nr--) es seiden der erste wurde grade abgespielt.. dann wieder hinten anfangen
    
_root.sound_mc.song_starten(songfiles[song_nr],songnamen[song_nr]);//vorherigen Song starten
}

songliste.load("songlist.xml");//Liste laden 
die xml datei sieht so aus:
PHP-Code:
<?xml version='1.0' encoding='utf-8'?>
<songs>
  <song name="Lied1" file="sound1.swf" />
  <song name="Lied2" file="sound2.swf" />
</songs>
und die swf in der die mp3 gespeichert ist ist so aufgebaut das im ersten frame der ton sofort abgespielt wird.
fals mir jemand dabei helfen kann währe ich echt dankbar.
eins muss ich dazu sagen ich bin anfänger in flash (programiere seit ca. 3 monate unregelmäsig so als hobby)
__________________
Mit dieser Signatur hast du eben mal so unnötige 4Kb herrunter geladen!
ciberjoerg ist offline   Mit Zitat antworten
Alt 23-03-2005, 18:24   #2 (permalink)
Neuer User
 
Registriert seit: Sep 2004
Beiträge: 632
Prinzipiell werden die Songdateien nicht kleiner, wenn du sie als swf-Dateien abspeicherst, weil Flash für die Sound-Komprimierung auch MP3 oder ein anderes von den auswählbaren Formaten benutzt.

Zu deiner Frage: Sag vielleicht erstmal, was an den bisherigen Scripten nicht funktioniert bzw, was du haben willst.
kugelfunk 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 17:03 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele