GrooveNet

Download

The latest version is GrooveNet v0.03a, released on 11/11/11.

GrooveNet v0.03a - Windows - Linux - Mac (OS X)

Description

GrooveNet is a loop-based music toy...essentially a revamped version of ShortAndSweet. Click the square "SoundPads" to toggle 8-bar music loops on and off, mixing and matching as if you were sequencing live.

Although it's very rudimentary, GrooveNet also has network support! Look up your friend's IP (try http://www.whatismyip.com/) and enter it in the "Target IP" field, and your loop toggles will be reflected on their GrooveNet instance remotely!

GrooveNet was done as a homework assignment for a music class. The assignment was to use OSCpack to "create the simplest networked instrument you can think of (that is still 'expressive')."

Note: This is an alpha release, so it is by no means feature-complete, fully-tested, or well-done.

Features

-Cross-platform

-Awesome chiphouse music loop for you to play around with

-Networking capability! Link up with a friend and your toggles will affect their GrooveNet instance as well!

Known Issues

-Uses way too much CPU, because I'm using the UDP socket listener incorrectly (I think...)...this will be fixed in the next release.

-Networking is really, really rudimentary firing of UDP packets, using a fixed port (7001). If you aren't on the same local network, it probably won't work unless you use some sort of VPN software like Hamachi.

-Networking doesn't sync the actual playback of the loops yet.

-Hostname IPs aren't supported--you can only use numeric IPs.

-Can't run multiple instances at once since it fails to listen on the same UDP port.

-Can't guarantee that there isn't any clipping since I don't know if SDL_Mixer performs soft clipping or not.

Frequently Asked Questions

Q: The networking won't work! Helpppp!!!

A: Make sure that you allow the program through your firewall. If you accidentally clicked through the Windows firewall dialog box too quickly, try re-extracting and running a fresh instance. If you're on the same local network, then simply find your local ip address and try using that as the target ip of the other GrooveNet instance. If you're on different networks, NATs and such make raw UDP packet sending virtually impossible, so you'll probably want to use a VPN service like Hamachi instead to set up a virtual LAN. If you're feeling REALLY adventurous and you're behind a router, you can try and setup port forwarding (GrooveNet currently uses port 7001), but I really wouldn't recommend it. If even using Hamachi doesn't work...well, you're out of luck. This is more a proof-of-concept at this point than anything else, so the networking isn't very robust at all.

Q: Cool music!

A: Thanks! It's only a quick 8-bar loop I threw together, but it's a pretty neat chiphouse style inspired by she music.

Q: This is really cool, I just wish it was more fully-featured and more well-made...

A: You can also check out SGX's Coactive audio toy for a more polished embodiment of this idea.

Q: What class was this for?

A: Stanford's CS476A/Music256A class, titled "Music, Computing, and Design I".

Q: Will GrooveNet ever get a proper release?

A: I hope to clean it up a bit at some point...it's rather rushed as is since I had to turn it in as a homework assignment.

Q: (Linux) Where can I find the SDL libraries?

A: Most package managers should already have them available. You'll want the following packages: libsdl1.2debian libsdl-image1.2 libsdl-mixer1.2 libsdl-ttf2.0-0

Alternatively, you can grab them from these links:

SDL - http://www.libsdl.org/download-1.2.php

Q: How did you make GrooveNet?

A: Short answer: C++.

Long answer: GrooveNet is programmed in C++, and uses SDL with OpenGL. SDL_image, SDL_mixer, and SDL_ttf are used as extension libraries. As per the assignment requirements, OSCpack is used to send OSC network messages. The Windows build was developed in Visual Studio 2010, but the release build was compiled using MinGW. The Linux build was compiled with g++ under VMWare running Ubuntu 9.10 RC. The artwork was created in GIMP, and the sounds and music were made using FL Studio.

Q: Is the source code available?

A: GrooveNet is currently closed-source.

Q: Can I redistribute GrooveNet?

A: Please just link people to this page instead.