code_junkie

Latency in playing short sounds in Flash 9, Actionscript 3

Nov 11th, 2011
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.34 KB | None | 0 0
  1. var soundArray:Array = new Array();
  2. loadSound( "click", "sounds/buttondroop4.mp3" );
  3. loadSound( "hover", "sounds/Dink-Public_D-146.mp3" );
  4.  
  5. function loadSound( name:String, url:String ):void
  6. {
  7. var req:URLRequest = new URLRequest( url );
  8. soundArray[ name ] = new Sound( req );
  9. soundArray[ name ].addEventListener( Event.COMPLETE, soundLoaded );
  10. }
  11. function soundLoaded( event:Event ):void
  12. {
  13. for( var name:String in soundArray )
  14. {
  15. if( event.target == soundArray[name] )
  16. {
  17. trace( "Loaded sound [" + name + "]" );
  18. return;
  19. }
  20. }
  21. }
  22. function playSound( name:String ):void
  23. {
  24. for( var nameSrc:String in soundArray )
  25. {
  26. if( name == nameSrc )
  27. {
  28. var channel:SoundChannel = soundArray[ name ].play();
  29. return;
  30. }
  31. }
  32. }
  33.  
  34. // Sometime later, well after soundLoaded() callback is triggered...
  35. playSound( "click" );
  36. playSound( "hover" );
  37.  
  38. var sClick:soundClick = new soundClick();
  39. var sHover:soundHover = new soundHover();
  40. sClick.play();
  41. sHover.play();
  42.  
  43. function playSound( name:String ):void
  44. {
  45. for( var nameSrc:String in soundArray )
  46. {
  47. if( name == nameSrc )
  48. {
  49. var channel:SoundChannel = soundArray[ name ].play();
  50. return;
  51. }
  52. }
  53. }
  54.  
  55. function playSound(name:String):void
  56. {
  57. if(soundArray[name])
  58. {
  59. soundArray[name].play();
  60. }
  61. }
Add Comment
Please, Sign In to add comment