New Music Update
April 14, 2012
It’s been a while since I’ve updated anything on my blog. I’m hoping to have some new fun updates to toss up here in the coming week. In the meantime, here are some new releases of mine that you can check out:
First, I put out a free remix of Mother Falcon’s tune “Fireflies,” as promotional endeavor for SXSW. They’re a super rad orchestral-pop (I’d maybe call it?) group based out of Austin, Texas. They have some great tunes and vids posted over at their site.
Next up is a remix I did a few years ago for one of my favorite collaborators, Jillian Ann: a Los Angeles-based musician. After some label limbo it finally came out! Lots of granular synthesis work here.
Last, here is a remix for my pal (and another favorite collaborator) Royal Sapien. More granular goodiness here.
Comments (0) | More: Music
My new EP Preview: “Glorious Dystopia”
October 19, 2011
San Francisco boutique glitch+bass label Muti Music has picked up my latest EP, which is slated to go out November first. Here are a few tunes to preview from the release:
The collection of tracks are all inspired from various dystopian literature, movies and games.
If you dig it, you can check out my official music site GreatScottMusic.net and my Facebook Fan Page.
Comments (0) | More: Uncategorized
An Awesome Glitch.FM Mix Submission
October 12, 2011
Today I received an awesome short DJ-mix sent to me by a guy who goes by “Winkler” and resides in Germany. This is one of the most favorite mixes I’ve yet to receive. It’s an awesome blend of chill beautiful edgy psychadelic glitchy (I could continue with the adjectives but will spare you) downtempo .
Comments (0) | More: Uncategorized
Baths – Lovely Bloodflow [Favorite Music Video Series]
October 06, 2011
Just dropping this here as my way of cataloging awesome videos I come across. Stunning song, video concept and filmography. 10/10.
Comments (0) | Tags: Baths, Lovely Bloodflow, Music Videos | More: Music
Using a Digital Camera as a High-Resolution Photometer for Measuring Point Sources
For the last few days I was banging my head on my desk (not literally, just in case anyone’s wondering) over an obstacle I stumbled upon in my research. I have a psychophysics experiment that uses a small bright LED light-source over a series of distances. The challenge I ran into is that I needed to normalize the brightness across distance. The LED flash should have the same brightness and shape at 100 feet that it does up close at a few feet. I had spent the previous weeks testing a fair number of subjects at 100 feet, only to then determine after some discussion that we should test up close as well.
So what’s the problem? I actually encountered two big ones:
- Issue #1: At 100 feet away, the size and intensity of our LED flash is really tiny (though perceptually still bright) compared to the rest of the visual field. Unfortunately, I couldn’t turn off the lights in the space I was using, which meant that any measurements I could take were drowned out by the ambient light
- Solution to issue #1: Light sources follow an inverse-square relationship (pretty damn closely, it turns out!). Why not take some illuminance measurements of the light source up close and in the dark? I could then plug these results into the inverse-square formula, which should yield some measure of the source’s power. From this, I could extrapolate out to the supposed illuminance observed at 99-feet. From there, I could adjust the light-source in the dark at the new and up-close observation distance to match the calculated illuminance value. This gives rise to…
- Issue #2: The extrapolated illuminance measure turned out to be really small: Much too small for the photometer to be able to output on its display. Additionally, I realized I had to take into account the area of the source: it could range from a big dim patch of late to a small and intense patch. I needed to know how it looked exactly as it did out at 100 feet. After a few days of immense frustration and running in circles, it hit me:
- Solution to issue #2: Why not try to use a high-resolution digital camera and some simple image processing trickery in MATLAB? I didn’t care about actual the luminance/illuminance/luminous intensity/luminous flux values themselves. However, for this solution to work, I would need to determine that I could still find a clear relationship between distance and my custom metrics that would allow me extrapolate how the light-source should look at 100-feet… and determine this I did. As a bonus, I found the same inverse square relationship for my metrics! This means that one should be able to use my measurement technique and some simple algebraic substitution to derive the conversion between my metric (which would be also dependent on both the camera model and its settings) and the canonical quantities used (e.g. lux, lumens, candelas, etc).
Here is what I did:
After taking a photo, I decided to work with the image in grayscale: every pixel (element in my matrix) would have a single value between 0 (black) and 255 (saturated/white). Since my image consisted of a single light-source in total darkness, I decided I should threshold the image to get definitive contour/region for the brightness patch.
Conveniently, the histogram has a nice convex shape, so I took the minimum value found by gradient descent from the right side of the histogram (the brightest part). In this case, I arrived at a threshold of 220. From here, I derived three metrics:
- “Energy” – the sum of all my pixel values (on the thresholded image)
- “Area” – the number of non-zero pixels
- “Diameter” – the largest* (not exactly as I’ll describe later) distance across my brightness patch.
To obtain the diameter measurement, I used the following steps:
- I derived a point set of non-zero pixels, which were just based on the row/column indices of my image matrix.
- From this point set, I found the subset of points, which comprised of the convex hull of my patch. I was going to write my own algorithm to do this for fun (drawing on one of the many that are listed on Wikipedia), but it turns out that MATLAB already has a nice function for this called
convhull(X,Y). - Once you have the convex hull, I used a *rough* measure for the diameter, which works well and is a constant-time algorithm: there are just 6 combinations of distances to check. You can just extract 4 points: the point with the smallest X coordinate, the point with the smallest Y coordinate, the point with the largest X coordinate and the point with the largest Y coordinate. I call the maximum of these distances the diameter. It’s important to note that this does not necessarily yield the maximum distance of any convex set, but works pretty well for circles and ellipses. To accomplish that, you need to use a rotating calipers algorithm
.
Now that everything was ready to go, it was time to take some measurements (photos) at different distances. I made sure to use the highest resolution setting that was available on my camera and to turn the flash off. The following images show my measurements and their respective curve fits. The Y-axis is logarithmic with a base of 10 for better viewing. I would have used the appropriate base for each of the curve-fits, but unfortunately MATLAB only supports base-10 for its logarithmic axis.
To obtain the curve fits, I went through this process:
- For each point, I used the equation: [Some Measure of Power] = [My Metric (e.g. "area")]*Distance^N
- I took all of my [Some Measure of Power] values and took their mean. If my measurement system was perfect, I these values should all be the same (and indeed they were close).
- I then created the curve: [My Metric] = MEAN([Some Measure of Power]) / Distance^N
- I then calculated the residual error (using Mean-Square-Error) and looped over N = 1:20 to find the N that yielded the best fit. For error and diameter, N ended up being 2. For Area, it was 3 with 2 as a really close second, so I just went with 2 seeing as all my distance measuring and camera shots were pretty rough and that all literature refers to an inverse-square relationship
From there, I extrapolated my curves to 100-feet and after some trial and error, my LED flash has been normalized!
Comments (1) | More: Research
The original Glitch-Hop? (Hello World)
October 05, 2011
For some reason the vocals from Bowie + (Eno’s!) song “I’m Afraid of Americans” popped into my head yesterday, so I decided to search up the Nine Inch Nails remix vid for it.
The song came out in 1997. Reznor was (is) way ahead of his time. I might consider this to be the earliest known example of Glitch-Hop: hip-hop beats, stuttered vocals, and hard synths. The stuttered Bowie vocals might not be super glitchy in general (especially compared to what we’re used to now), but then again that was a lot of glitch for a mainstream hit for its time.
Also: Reznor chasing Bowie? Priceless.
Anyways. Hello world!







