Mercurial > hg > audiodb
view bindings/as3/examples/simpletest/src/Example.as @ 770:c54bc2ffbf92 tip
update tags
author | convert-repo |
---|---|
date | Fri, 16 Dec 2011 11:34:01 +0000 |
parents | 18974af682cf |
children |
line wrap: on
line source
package { import org.omras2.audiodb.Bridge; import org.omras2.audiodb.SearchEvent; import org.omras2.audiodb.SoundEvent; import org.omras2.audiodb.model.SearchResult; import flash.display.Sprite; import flash.media.Sound; /** * @author mikej */ public class Example extends Sprite { private var _bridge : Bridge; private var _sounds : Array; public function Example() { this._bridge = new Bridge("http://0.0.0.0:8080"); this._sounds = []; // Find the tracks similar to AWAL1000 _bridge.addEventListener(SearchEvent.COMPLETE, this.handleSearchComplete); _bridge.search("AWAL1000"); } private function handleSearchComplete(event : SearchEvent) : void { // Now grab the first 20s of the first result _bridge.addEventListener(SoundEvent.COMPLETE, this.handleSoundLoaded); var query : SearchResult = (event.results[0] as SearchResult); _bridge.getSound(query.uid, query.ipos, 5); var closestMatch : SearchResult = event.results[1] as SearchResult; _bridge.getSound(closestMatch.uid, closestMatch.ipos , 5); } private function handleSoundLoaded(event : SoundEvent) : void { _sounds.push(event.sound); if(_sounds.length == 2) { for each(var sound : Sound in _sounds) { sound.play(); } } } } }