To my fans, I love you.

February 8, 2018

This post is for my fans. You know who you are. You have sent me the most beautiful and inspiring messages. You have told me how my music has moved you, or inspired you, or helped you in some way. Those messages have meant the world to me. So I started making a scrapbook, where I literally paste in screenshots of nice comments from fans. Whenever I’m feeling down, I just open up the book. Here are a few examples that have truly made my heart feel warm.

I know it might sound cliche, but I would be nothing without you. The last few years have been a ridiculous ride for me. So many highs, so many lows. During those lows, it is YOU who have kept me going. Art can’t exist in a vacuum, at least not for me. I can’t be the only inhabitant of Trazer land. I likely would have given up already, if it weren’t for you.

Every time I start to think I’m never going to make it as an artist, all I have to do is remember that YOU exist. Every time I feel despair about my future in music, I remind myself that I am already successful because YOU exist. That keeps me staying positive, keeps me inspired, and, honestly, keeps me making music. Trazer isn’t JUST me. It’s us. It’s a whole world we can inhabit together. And as more and more people join us in Trazer land, I get more and more inspired and motivated because I can see that something is working. I’m growing. My fan base is growing. But way more important is the fact that YOU exist.

Maybe I’m just insecure, and I need validation. Maybe it’s just my ego that needs inflating. But I think it’s more than that. Before, making music was a hobby. It was fun. But at some point, it started to become something SO much bigger. It became an obsession, and now it has become an obsession that improves peoples’ lives. Or at least, some of you have said that it has. And I believe you. But I also have a hard time believing it. I mean, aren’t I just an amateur artist having fun? At what point does an amateur music producer become a professional? Is it once you start making money? Or is it once you have true fans? I’m not making much money. Not even close to breaking even. In the long run, yes, I need to make money to be able to do this full time. But that’s not why I’m doing this.

In the short term, I’m making music because I love it. Because I want to. Because I NEED to. In the past, this “need” was distracting, to say the least. It led to periods of anxiety and depression, that really interfered with my life, and my day job. Now that I don’t have a day job, things are waaaaay better. But I’d be lying if I didn’t admit that it’s still up and down.

Anyway, my point is this. My fans have made all the difference in the world. To those of you who continue to message me with supporting words, I thank you from the bottom of my heart. Every single time I get a message from a fan, it makes my day. Seriously. I never get tired of hearing from you. My music is my gift to you. If you believe in Trazer, and in the future of Trazer, I want to hear from you. I want to talk to you. I want to know you. I want to meet you. I want to hug you. Because you are the reason I keep making music. I love you. I really do.

Love,
Anthony / Trazer

[jetpack_subscription_form title=”Subscribe to my blog <3″ subscribe_text=”Enter your email to receive notifications of new blog posts! (you may need to check your SPAM filter for your initial confirmation email)” subscribe_button=”Subscribe” show_subscribers_total=”0″]

New Visualizer

July 2, 2017

Hey! I just uploaded this visualizer (below) to a remix of my song Love. If you want to learn about how I made the visualizer, keep reading.

It was done entirely in Python (my favorite programming language). At a high level, my code basically creates (from scratch) a whole bunch of images and then compiles them into a video with 30 images (or frames) per second. So how do I make a single frame?

When you look at a color image on a computer, each pixel is typically represented by 3 numbers. Those 3 numbers are the brightness in each of the 3 color channels RED, GREEN, BLUE (or simply RGB). Let’s say those brightness levels can vary anywhere from 0 to 1 (they actually go from 0 to 255 but let’s just use 0 to 1 for simplicity). Using different RGB combinations you can make essentially any color. For example, pure blue is [0,0,1], darker blue is [0,0,0.4], red is [1,0,0], yellow is [1,1,0], magenta is [1,0,1], purple is [0.5,0,1], white is [1,1,1], black is [0,0,0], etc. If you want to play around with RGB coloring, check out this link.

http://www.rapidtables.com/web/color/RGB_Color.htm

Ok, so the first step in making a frame is to set those RGB values for each pixel in the image. To do this, I first need to understand how to define each pixel’s location. For a single frame, pretend it’s actually an X-Y plot, where the (0,0) point is the bottom left, and each pixel’s location can be defined in (X,Y) coordinates. So for a 1000×1000 pixel image, for instance, the top right pixel is located at (1000,1000) and the center pixel is at (500,500).

To make the colors vary across the image, I define each RGB channel intensity as a function of X and Y in the frame. What’s particularly useful in this case is the fact that the 3 RGB channels are independent, so I can set up 3 different equations (1 for each RGB channel) that define the coloring.  To make the color vary in a wave-like manner, these equations need to be sine waves. Something like R=sin(AX+BY/2). The width (or wavelength) of these color bands/stripes can be varied by playing around with those A and B constants. I chose to use different wavelengths for each RGB channel so that they end up mixing in interesting ways.

For instance, if a red stripe crosses paths with a blue stripe, what you see in the overlapping region is purple. So, while the RGB channels are defined independently, what your eye actually sees is a mix of all of them. That’s what creates the huge range of constantly morphing colors, rather than simply red, green, and blue. Super beautiful.

Once those RGB equations were defined, I wanted to give the image that cool symmetry. This step was the hardest part to program. To do this, I first erased everything except 1/8th of the image (cut like a slice of pizza). This is the repeating pattern. Imagine taking a single slice of pizza, and flipping it along one side edge so that it’s now face-down in the neighboring spot. Do it again, and now it’s face-up in the next spot. Keep doing that until you go all the way around and you’re back to where you started. That’s what I did, in a nutshell. It means that each 1/8th slice is a mirror image of it’s neighbors. And that’s what gives you that trippy kaleidoscopic effect.

OK, so now we have one full image. To make the whole video look like it’s moving, each frame needs to vary slightly from the frame before it. This was done by including a “time” variable, t, in the RGB vs. XY functions. Something like R=sin(tAX+BY/2). Each time a new frame is rendered, the equation describing the colors is a tiny bit different because t is increasing. It also causes the wavelength (the width of the color stripes) to vary in time, which explains why the visualizer appears to keep changing. These changing wavelengths were initially unintended, but once I noticed they were happening I fell in love.

Alright, so now we have a bunch of frames that vary in time. Great. Now, you may have noticed that the visualizer responds to the music. I found some Python code that calculates a fast fourier transform of the song. It’s incredibly complicated, and I don’t fully understand how it works, but the output of that code is the sound “intensity” or “loudness” at each frequency at each time. For instance, when a loud kick drum is happening, the frequencies between 30-100Hz have a high intensity. To make the visualizer respond to the music, I inserted this low frequency intensity into a couple of the equations that define the color bands. It’s a little tricky getting it to respond to the bass and kick drum without making the visualizer too strobey. It’s a balance.

And that’s it! Now I can just run the program and it spits out a video. Follow all that? Do you have any suggestions for improving this visualizer? Do you want even MORE detail? Props to you if you got this far. Thanks for reading.

My next blog post will likely be a more detailed discussion of how I make my music. Would that interest you? Stay tuned 😉

I love you.

Anthony / Trazer