- YouTube UPDATE: I have fixed a good amount of things since the last video, biggest being frame rate. Enjoy my first (and probably last for a while) 60 FPS at 1080p video of it.
This was a somewhat mini project I did for the past 4 days. I have been wanting to make one of these since last year, but I didn’t have the resources/knowledge to do so. Recently I found this GitHub project, and figured I could adapt it to get data about audio files.
Well, about 12 hours of JavaScript debugging later with things, like JQuery, I adapted it to a GitHub project that I can use for that purpose, with the bonus that I have given instructions for repurposing under your own clone/“fork” (doesn’t work with local downloads, JQuery was a pain with CORS errors that I could not fix.).
But… why spend 4 days to make this? Well… mostly bragging rights in my office.
If anyone wants to use the data exporter for their own use (ex: using that as a pattern on a wall in a massive club would be awesome), go ahead. The actual visualizer is closed source… with ~20 songs making the place about 4 MB in size… but with <1% script performance on both an i7 4700MQ (3.25 GHz) and i5 4210U (2.2 GHz).
Enjoy the music I chose if you play it. A good connection is useful for connecting.
I faced that issue before with this. I just make sure that I get the frame that is (Song.TimePosition*1000/60), and store the last frame rendered to prevent two of the same loading again (prevents extra CPU overhead).
No. I export the data ahead of time and upload it with the place file.
I don’t really know how to do it, and it does record the data with the song and is about 512 KB per song.
Also, here is a song list if you want
Drumstep:
Tristam - The Vine
Tristam & Braken - Flight
Glitch Hop/110 BPM:
Astronaut - Rain (Stephen Walking Remix)
Pegboard Nerds - Try This
Pegboard Nerds & Tristam - Razor Sharp
Tristam - I Remember
Tirstam - Once Again
Tristam - Till It’s Over
Drum And Bass (DnB):
Tristam & Braken - Frame Of Mind
Electro:
Case & Point - All On Me
Pegboard Nerds - Bassline Kickin (Astronaut Remix)
Pegboard Nerds - We Are One (Droptek Remix)
Pegboard Nerds - Rocktronik
Tristam x Karma Fields - Build The Cities (Empire Of Sound)
Electronic Dance Music (EDM):
Grabbitz - Better With Time
Pegboard Nerds - New Style
Pegboard Nerds - Swamp Thing
Tut Tut Child - Power Fracture
Future Bass:
Pegboard Nerds - Emoji
Indie Dance:
Grabbitz - Float Away
Trance:
Mitchell Claxton - Wuxia
I may add more songs soon, just need to look for them and find them on Roblox.
I am going to be busy with my own projects for the next few months (I still have to go back to a build project I paused to do this).
However, the code for getting the sound data is open, so feel free to create a fork and follow the instructions to get it to work.
I don’t see why not. I was going to do this just now because I’ve nothing to do while I wait for my Vive to ship. I guess I’ll also port it to VR once my Vive comes in.
I have no problem sharing all of what I make with you or other devs when and (more importantly) if I finish.
The only dependency in this case would be an external server to get the mp3 data.
Its far out of my own too.
Can you tell if the code they wrote is actually parsing the mp3 files you’re inputting, or do you know what they are using to do so?
Well, I was wondering why the refresh rate was off for the visualizer. It appears I made a math error with sampling in the GitHub code.
Anyone who created a fork should update spectrum.js… and now I have to re-do 21 songs. Not fun.
(Also, no clue if I will now be able to use it in my office now unless there isn’t as much as a frame rate loss from ~18 FPS vs 60 (or 30 if I change the math).