xxxxxxxxxx
89
let mic;
let micLevel;
let maxOut = 0;
let fontt;
let img;
let logotype = "bandcamp";
let a = 35.5;
let b, c;
let t0, t1, t2, t3, t4, t5;
function preload() {
fontt = loadFont("Yellix-Regular.ttf");
//img = loadImage("logo_v1.png");
}
function setup() {
textAlign(CENTER);
textFont(fontt);
fill(255);
let cnv = createCanvas(500, 500);
cnv.mousePressed(userStartAudio);
mic = new p5.AudioIn();
mic.start();
fft = new p5.FFT();
fft.setInput(mic);
}
function draw() {
background(255, 250, 255);
noStroke();
// image(img, 0, 0, 500, 500);
//console.log(mouseX, mouseY);
micLevel = mic.getLevel();
if (micLevel > maxOut) maxOut = micLevel;
fill(0, 0, 255);
textSize(54);
text(logotype, width / 2, height / 2 + 126);
rect(20, 240, 10, -fft.getEnergy("bass"));
rect(60, 240, 10, -fft.getEnergy("lowMid"));
rect(120, 240, 10, -fft.getEnergy("mid"));
rect(160, 240, 10, -fft.getEnergy("highMid"));
rect(220, 240, 10, -fft.getEnergy(1000, 1024));
logomark();
}
function logomark() {
noFill();
stroke(0, 0, 255);
strokeWeight(10);
t0 = map(fft.getEnergy(1000, 1024), 1, 100, 313, 120);
t1 = map(fft.getEnergy("bass"), 0, 100, 190, 222);
t2 = map(fft.getEnergy("lowMid"), 1, width, 286, 308);
t3 = map(fft.getEnergy("mid"), 1, width, 220, 196);
t4 = map(fft.getEnergy("highMid"), 1, width, 282, 300);
t5 = map(fft.getEnergy(1000, 1024), 1, width, 227, 206);
//letter b
line(124, 313, 124, 120);
line(124 + a, 190, 124 + a, t1);
line(124 + a, 280, 124 + a, 312);
line(124 + a * 2, 190, 124 + a * 2, 222);
line(124 + a * 2, 280, 124 + a * 2, 312);
line(124 + a * 3, 190 + 20, 124 + a * 3, 290);
//letter c
line(124 + a * 4, 190 + 20, 124 + a * 4, 290);
line(124 + a * 5, 190, 124 + a * 5, 222);
line(124 + a * 5, 280, 124 + a * 5, 312);
line(124 + a * 6, 190, 124 + a * 6, 222);
line(124 + a * 6, 280, 124 + a * 6, 312);
line(124 + a * 7, 206, 124 + a * 7, 227);
line(124 + a * 7, 280, 124 + a * 7, 300);
}
function type(content, color, font, size, x, y) {
fill(color);
textFont(font);
textSize(size);
text(content, x, y);
}
function keyReleased() {
if (key == "s" || key == "S") saveCanvas("bandcamp_logo_v1", "png");
}