Advertisement
Guest User

Code

a guest
Jan 14th, 2018
149
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.26 KB | None | 0 0
  1.  
  2. //MAIN CODE
  3.  
  4. import processing.serial.*;
  5. import processing.sound.*;
  6. import ddf.minim.*;
  7. import controlP5.*;
  8.  
  9. ControlP5 gui;
  10. Serial port;
  11. Minim minim;
  12. Button BPnext;               //Button for Next File
  13. Button BPstop;               //           Stop Playing          DONE
  14. Button BPcont;               //           Continue Playing      DONE
  15. Button BMexit;               //           Exit                  DONE
  16. Button BAactive;             //           Is Serial port?       WIP
  17. Button BFgetFolder;          //           Getting Dir to play   WIP
  18. Button BVisu;                //Toggle For Visualization         DOING
  19. Slider Sleng;                //                                 WIP
  20. AudioPlayer player;          //                                 DONE
  21. File[] files;                //                                 WIP(Counting WIP, other DONE)
  22. File filetoplay;             //                                 DONE
  23.  
  24. int i = 100, overButton, directory, x, y, activeTab = 1;
  25. int[] keysPressed;
  26. String dir;
  27. //String line = "C:\\Users\\Maccraft\\Desktop\\MUZYKABEZID3";
  28. String line = ""; //Insert here path to directory with music
  29. String nowPlay;
  30. PFont font;
  31. boolean isPi = false;
  32. boolean isSerial = false;
  33. boolean isPhone = false;
  34. PrintWriter output;
  35. BufferedReader reader;
  36.  
  37. void setup()
  38. {
  39.   background(0);
  40.   size(500,200);
  41.  
  42.   font = createFont("arial", 10);
  43.   files = listFiles(line);
  44.  
  45.   minim = new Minim(this);
  46.   try
  47.   {
  48.    port = new Serial(this, Serial.list()[1], 9600);
  49.    isSerial = true;
  50.   }
  51.   catch(Exception e)
  52.   {
  53.     isSerial = false;
  54.   }
  55.   gui = new ControlP5(this);
  56.   reDraw();
  57.   filetoplay = files[int(random(0, 51))]; //Replase 51 with .mp3 count
  58.   println("PLAYING: ", filetoplay.getName());
  59.   player = minim.loadFile(filetoplay.getAbsolutePath());
  60.   player.play();
  61.   textFont(font);
  62. }
  63.  
  64. void draw()
  65. {
  66.   background(0);
  67.   stroke(255);
  68.   if (activeTab == 1)
  69.   {
  70.   for(int i = 0; i < player.bufferSize() - 1; i++)
  71.     {
  72.       float x1 = map( i, 0, player.bufferSize(), 0, 500);
  73.       float x2 = map( i+1, 0, player.bufferSize(), 0, 500);
  74.       line( x1, 100 + player.left.get(i)*50, x2, 100 + player.left.get(i+1)*50 );
  75.     }
  76.   }
  77.   if (player.position()+10 == player.length())
  78.    Next();
  79.  
  80.   Sleng.setValue(map(player.position(), 0, player.length(), 1, 100));
  81. }
  82.  
  83. //FUNCTIONS CODE:
  84.  
  85. void Next()
  86. {
  87.   filetoplay = files[int(random(0, 51))];
  88.   if (isSerial) println("Now Playing: "+filetoplay.getName());
  89.   println("Now Playing: ", filetoplay.getName());
  90.   player.mute();
  91.   player = minim.loadFile(filetoplay.getAbsolutePath());
  92.   player.play();
  93. }
  94.  
  95. void Play()
  96. {
  97.   player.play();
  98. }
  99.  
  100. void Stop()
  101. {
  102.   player.pause();
  103. }
  104.  
  105. void EXIT()
  106. {
  107.   exit();
  108. }
  109.  
  110. //GUI CODE:
  111.  
  112.  
  113.  
  114. void reDraw()
  115. {
  116.   background(0);
  117.  
  118.   gui.getTab("default")
  119.    .activateEvent(true)
  120.     .setLabel("Player")
  121.      .setId(1);
  122.      
  123.    gui.getTab("Arduino")
  124.    .activateEvent(true)
  125.     .setId(2);
  126.    
  127.    gui.getTab("Files")
  128.    .activateEvent(true)
  129.     .setId(3);
  130.    
  131.   BPnext = new Button(gui, "Next")
  132.    .setPosition(0, 16)
  133.     .setHeight(24)
  134.      .setWidth(50)
  135.       .setFont(font);
  136.      
  137.   BPcont = new Button(gui, "Play")
  138.    .setPosition (50,16)
  139.     .setHeight(24)
  140.      .setWidth(50)
  141.       .setFont(font);
  142.      
  143.   BPstop = new Button(gui, "Stop")
  144.    .setPosition(100, 16)
  145.     .setHeight(24)
  146.      .setWidth(47)
  147.       .setFont(font);
  148.      
  149.   BMexit = new Button(gui, "EXIT")
  150.    .setPosition(450, 0)
  151.     .setHeight(24)
  152.      .setWidth(50)
  153.       .setFont(font);
  154.      
  155.   BAactive = new Button(gui, "IsSerial")
  156.    .setPosition(150, 50)
  157.     .setLabel("Serial Port Enabled?")
  158.      .moveTo("Arduino")
  159.       .setFont(font);
  160.      
  161.   BFgetFolder = new Button(gui, "Directory")
  162.    .setPosition(150, 50)
  163.      .moveTo("Files")
  164.       .setFont(font);
  165.      
  166.   BVisu = new Button(gui, "GameMode")
  167.    .setPosition(147, 16)
  168.     .setHeight(24)
  169.      .setWidth(100)
  170.       .moveTo("default")
  171.        .setLabelVisible(true)
  172.         .setFont(font);
  173.      
  174.   Sleng = new Slider(gui, "Rewind")
  175.    .setPosition(0, height-20)
  176.     .setSize(width, 20)
  177.      .setRange(1, 100);
  178.  
  179. }
  180.  
  181. //TABS CODE:
  182.  
  183. void controlEvent(ControlEvent theControlEvent)
  184. {
  185.  if (theControlEvent.isTab())
  186.   activeTab = theControlEvent.getTab().getId();
  187. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement