123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- import drop.*;
- import test.*;
-
- import java.util.*;
- import processing.net.*;
- import java.awt.event.KeyEvent;
- import java.awt.event.KeyListener;
- import processing.video.*;
- import com.hamoid.*;
-
- VideoExport videoExport;
-
-
- boolean greenBackground = false; //else: black
- boolean roundMask = false; // show a circle
- boolean drawGUI = true; //draws fx-informations
- int mode = 1; //0: webcam, 1: image
- boolean harvester = true;
- int maxFx = 5; //possible amount of effect layers
-
- int frameRate = 30;
- int fpm = frameRate * 60;
- int bpm = 128;
-
- SDrop drop;
- PImage source;
- PGraphics renderer;
- PImage viewport;
- SourceManager sourceManager;
-
-
- PImage roundMaskImage;
-
- PGraphics roundMaskGraphics;
-
-
- String frameName; //to save frame as image
- float uptime; //logs how many frames this software has rendered before (inaccurate, it's actually way, way more)
- boolean recording; //save every frame?
- int renderSize = 500; //px
-
- String[] saveData;
- int w, h;
-
-
-
-
- void setup() {
- size(640, 800);
- w = width;
- h = height;
- surface.setResizable(true);
- frameRate(frameRate);
- noSmooth(); //saves resources but makes sum look shiddy
- drop = new SDrop(this);
- saveData = loadStrings(dataPath("saves.sav"));
- println("Loading Savefile...");
- for (int i = 0; i < saveData.length; i ++) {
- float[] temp;
- if (saveData[i].contains("uptime")) {
- temp = float(split(saveData[i], " = "));
- println("Uptime: " + temp[1]);
- uptime = temp[1];
- }
- }
- fallbackImage = loadImage(dataPath("0.png"));
- /*
- String[] cameras = Capture.list();
- if (cameras == null || cameras.length == 0) {
- println(cameras == null ? "Failed to retrieve the list of available cameras." : "There are no cameras available for capture.");
- if (mode == 0) {
- println("Switching to image mode");
- mode = 1;
- }
- } else {
- println("Available cameras:");
- printArray(cameras);
-
- cam = new Capture(this, cameras[0]);
-
- cam.start();
- }
- */
-
- composiorServer = new Server(this, port); // 10002
-
- renderer = createGraphics(width, height);
- viewport = createImage(renderer.width, renderer.height, ARGB);
-
- roundMaskGraphics = createGraphics(renderer.width, renderer.height);
- sourceManager = new SourceManager();
-
- masksRender = new PImage[masksRenderAmount];
- sobel = new SobelEdgeDetection();
-
- sourceManager.importURI("/home/giers/.local/bin/fast-style-transfer/data/train2014");
- //sourceManager.importURI(dataPath(""));
- }
-
-
- void draw() {
- updateServer();
- sourceManager.update(); //will write some image to the renderer
- sourceManager.setSource();
- fxManager.run(true, true); //boolean animate (iterative calcs), boolean apply (draw)
- render();
- background(greenBackground ? color(0, 255, 0) : color(0));
- imageMode(CENTER);
- viewport = renderer.get();
- if (renderer.width < renderer.height) {
- viewport.resize(0, height);
- if (viewport.width > width) viewport.resize(width, 0);
- } else {
- viewport.resize(width, 0);
- if (viewport.height > height) viewport.resize(0, height);
- }
-
-
- if (roundMask) {
- roundMaskGraphics.setSize(viewport.width, viewport.height);
- roundMaskGraphics.beginDraw();
- roundMaskGraphics.noStroke();
- roundMaskGraphics.background(0);
- roundMaskGraphics.fill(255);
- roundMaskGraphics.ellipse(viewport.width/2, viewport.height/2, min(viewport.width, viewport.height), min(viewport.width, viewport.height));
- roundMaskGraphics.endDraw();
- roundMaskImage = roundMaskGraphics.get();
- viewport.mask(roundMaskImage);
- }
-
- //sourceManager.setSource();
-
- //viewport = getEdges(viewport);
- //viewport = cannyEdge(viewport);
- image(viewport, width/2, height/2);
-
- if (videoRecord) {
- videoExport.saveFrame();
- fill(#ff0000);
- ellipse(width-100,height-100,30,30);
- }
-
- if (drawGUI) drawGUI(guiOffsetTop);
-
-
- if (recording) {
- snapshot();
- if (airisRendering) {
- airisRendering = false;
- recording = previousRecordState;
- renderSize = previousRenderSize;
- println("i rendered something big, oops");
- }
- }
- }
|