Voor mijn eerste full-flash-website ben ik zelf een klein mediaplayertje aan het bouwen. De bedoeling hiervan is dat hij 5 mp3 samples laat horen.
Ik heb dit vaker gedaan en kom dan altijd uit op een werkende player, met n play/pauze, stop en next knop. Het enige wat ik niet voor elkaar kan krijgen is dat de player automatisch doorgaat naar het volgende sample zodra het sample ervoor is afgelopen.
Mijn player zit als volgt in elkaar:
Layer 1, frame 1: Start sample a.mp3
Layer 2, frame 10: Start sample b.mp3
Layer 3, frame 20: Start sample c.mp3
etc.
De knop stop heeft een stopallsounds() command en schiet hierbij terug naar het begin-frame van het sample wat dan speelt, de next knop skipped naar het frame waar een nieuw sample begint.
De samples zijn op de server geupload en worden op het aanroep-frame gestart met de AS code:
Ik denk dat ik wat kan doen met een timerfuntie, dit wordt dan echter niet dynamisch, dan moet ik de lengte van het sample omrekenen in (ik geloof dat flash met milliseconden werkt) ms en vervolgens handmatig b.v. 'na x ms door naar frame 10' programmeren. Hier heb ik niet zoveel informatie over gevonden en ik zoek eigelijk meer naar een functie die kijkt naar het mp3 bestand zelf en zodra deze afgelopen is doorgaat naar het volgende sample.
(Ik geloof er niks van dat ik de meest geavanceerde en programmeer technisch correcte opbouw heb toegepast in mijn player maar daarvoor doe ik het niet, iedereen kan een script van internet halen maar ik wil graag de globale achterliggende werking begrijpen en in staat zijn zelf zoiets, in simpele vorm, te bouwen.)
Ik heb dit vaker gedaan en kom dan altijd uit op een werkende player, met n play/pauze, stop en next knop. Het enige wat ik niet voor elkaar kan krijgen is dat de player automatisch doorgaat naar het volgende sample zodra het sample ervoor is afgelopen.
Mijn player zit als volgt in elkaar:
Layer 1, frame 1: Start sample a.mp3
Layer 2, frame 10: Start sample b.mp3
Layer 3, frame 20: Start sample c.mp3
etc.
De knop stop heeft een stopallsounds() command en schiet hierbij terug naar het begin-frame van het sample wat dan speelt, de next knop skipped naar het frame waar een nieuw sample begint.
De samples zijn op de server geupload en worden op het aanroep-frame gestart met de AS code:
code:
1
2
3
4
5
6
7
8
9
10
11
| //Load Streaming mp3 behavior
if(_global.Behaviors == null)_global.Behaviors = {};
if(_global.Behaviors.Sound == null)_global.Behaviors.Sound = {};
if(typeof this.createEmptyMovieClip == 'undefined'){
this._parent.createEmptyMovieClip('BS_loco',new Date().getTime()-(Math.floor((new Date().getTime()) /10000)*10000) );
_global.Behaviors.Sound.loco = new Sound(this._parent.BS_loco);
} else {
this.createEmptyMovieClip('_loco_',new Date().getTime()-(Math.floor((new Date().getTime()) /10000)*10000) );
_global.Behaviors.Sound.loco = new Sound(this.BS_loco);
}
_global.Behaviors.Sound.loco.loadSound("http://www.hierstaatde.nl/file.mp3",true); |
Ik denk dat ik wat kan doen met een timerfuntie, dit wordt dan echter niet dynamisch, dan moet ik de lengte van het sample omrekenen in (ik geloof dat flash met milliseconden werkt) ms en vervolgens handmatig b.v. 'na x ms door naar frame 10' programmeren. Hier heb ik niet zoveel informatie over gevonden en ik zoek eigelijk meer naar een functie die kijkt naar het mp3 bestand zelf en zodra deze afgelopen is doorgaat naar het volgende sample.
(Ik geloof er niks van dat ik de meest geavanceerde en programmeer technisch correcte opbouw heb toegepast in mijn player maar daarvoor doe ik het niet, iedereen kan een script van internet halen maar ik wil graag de globale achterliggende werking begrijpen en in staat zijn zelf zoiets, in simpele vorm, te bouwen.)
[ Voor 20% gewijzigd door Verwijderd op 03-07-2007 11:58 ]