Processingޤ

Top / Processingޤ

ϤƥɽȤäñʥץ롥

  1. import ddf.minim.*;
  2. import ddf.minim.signals.*;
  3.  
  4. Minim minim;
  5. AudioPlayer player;
  6.  
  7. float leftlevel, rightlevel;
  8.  
  9. void setup()
  10. {
  11.   size(200, 200);
  12.   fill(0,255,0);
  13.  
  14.   minim = new Minim(this);
  15.   player = minim.loadFile("sample.mp3", 2048);
  16.   player.loop();
  17. }
  18.  
  19. void draw()
  20. {
  21.   background(0);
  22.  
  23.   if ( player.isPlaying() )
  24.   {
  25.     fill(0,255,0);
  26.     text("Playing. s: stop, r:rewind", 5, 15);
  27.   }
  28.   else
  29.   {
  30.     fill(255,0,0);
  31.     text("Stopped. p: play, r: rewind", 5, 15);
  32.   }
  33.  
  34.   leftlevel  = player.left.level()*1000;
  35.   rightlevel = player.right.level()*1000;
  36.  
  37.   rect(0, height-leftlevel, width/2, leftlevel);
  38.   rect(width/2, height-rightlevel, width/2, rightlevel);
  39. }
  40.  
  41. void keyPressed()
  42. {
  43.   if ( key == 'p' ) player.play();
  44.   if ( key == 's' ) player.pause();
  45.   if ( key == 'r' ) player.rewind();
  46. }
  47.  
  48. void stop()
  49. {
  50.   player.close();
  51.   minim.stop();
  52.   super.stop();
  53. }