DAMSIN MUSIC MACHINE on Jetson! (EGL/ALSA/openGL)

DAMSIN_PANDORA_MAIN

Yes folks, I’ve read the nVidia Jetson projects section, and I’m looking to tell the embedded computing world, about how excited I am about the nVidia Jetson platform, and it’s GPU! As most of you know the Jetson sits in a class of it’s own, with respect to power, especially in the GPU department. My “groove-box” program truly sits in a class of it’s own, and needed some serious horsepower to run on anything but a quad core PC. (+35 threads) Along comes Jetson NANO with it’s 4-cores, and GPU ready for the task. I ordered one as soon as I found out, it came in the mail and I started the port. Now, DAMSIN, is running “close to the metal” via EGL, and is working 100% great on Jetson Nano. A first for the “groove monolith”. DAMSIN is not your typical audio program, it has some of the most advanced algorithms, and design features of any “groovebox” that I have ever used. As a software eng, with great places like Electronic Arts, Ubisoft, and Rockstar on my resume, I decided to that I would build my “dream box” myself, and now it is a reality, on Jetson. Hopefully someday it will become a full blown hardware synth using nVidia. Having it working 100% on the Nano, is a huge first step! DAMSIN’s custom openGL interface, is ready for any kind of hardware or OS! It was truely a great step to have DAMSIN running directly with EGL, to get the most out of the system! DAMSIN took many years to develop and design, and hopefully I will get my 100% “math art” procedural game ported to an Nvidia platform.

4 Likes

I am curious, what is the USB device with the headphone jack and volume control? Is that basically a USB audio card with amplifier?

Yeah, that’s a USB “DAC” audio card an ART (A pro audio company). The great thing about the ART is that it is a standard USB audio device, and does not need drivers, so it was great for the Jetson platform. It has XLR connectors on the back.

Now that I look at this posting; I forgot to mention the great possibilities for a GPU accelerated audio visualizer for DAMSIN. DAMSIN has sample accurate synchronization information with it’s event data sequences. It also has a lot of other info that is accurate, unlike typical visualizers. Actual track data information, and memory states. I read that EGL 1.5 is designed exactly for stream synchronization and such. It would be be nice to know more about it! This kind of thing will be VERY pixel shader bound. It would be nice to see such things exactly synchronized, at high framerates. I have a “push button” visual programmer idea in mind. I have some similar per-pixel procedural animations being computed in real time, in SYNTH the video game, and they are very expensive, even for 128x128 textures. I think at the moment synth uses 2 threads just to compute this 128x128 texture, in a “per pixel” formula. It’s a visualizer thing. These types of animations are cool because they generate gigabytes and gigabytes worth of frames, and can last “hours”! Definitely a possibility for DAMSIN / Jetson.

1 Like