Building computer for a single homemade program

Talk about your MIDI interfaces, microphones, keyboards...

Moderators: MattKingUSA, khz

PaulSutherland
Established Member
Posts: 8
Joined: Mon Nov 27, 2017 5:52 pm

Re: Building computer for a single homemade program

Post by PaulSutherland »

Michael Willis wrote:Let us know how it goes! I'm interested in both the results of putting the audio interface on a separate USB hub, and whether you decide to get the new laptop, the specs you listed sound pretty good for a dedicated music machine. I have somewhat of a preference for a desktop machine after having tried both, but don't let that stop you.
The choice in getting a laptop rather than a desktop is just weight and space. A laptop that I can put off to my side on a chair to look at the program's output is much more convenient than a big chunky block with a separate screen.
CrocoDuck
Established Member
Posts: 1133
Joined: Sat May 05, 2012 6:12 pm
Been thanked: 17 times

Re: Building computer for a single homemade program

Post by CrocoDuck »

If I had to do something like this, i.e. running a single computer for one dedicated task only, I would write the program for the task in the most efficient way possible (which perhaps involves C/C++) and have it running with no GUI on a bare bone system which only has the recommended requirements and it sits in a rack unit or even a smaller enclosure. Probably I would go for something like this, with a good soundcard. The OS I would install on the thing would be minimal, no GUI, no fuss, only essentials. I would interact with the application remotely, through smartphone or something like that, by using a web interface. Plus, it would be best to have MIDI control too, so you can operate hand/foot controllers. In this case you will be surprised by how little computational power you need to do tons of things (see this, for example).

However, setting the above up will be a quite challenging (but probably fun) project. The second best options looks like a laptop, but those are more of a hit or miss, especially for USB audio.
PaulSutherland
Established Member
Posts: 8
Joined: Mon Nov 27, 2017 5:52 pm

Re: Building computer for a single homemade program

Post by PaulSutherland »

CrocoDuck wrote:If I had to do something like this, i.e. running a single computer for one dedicated task only, I would write the program for the task in the most efficient way possible (which perhaps involves C/C++) and have it running with no GUI on a bare bone system which only has the recommended requirements and it sits in a rack unit or even a smaller enclosure. Probably I would go for something like this, with a good soundcard. The OS I would install on the thing would be minimal, no GUI, no fuss, only essentials. I would interact with the application remotely, through smartphone or something like that, by using a web interface. Plus, it would be best to have MIDI control too, so you can operate hand/foot controllers. In this case you will be surprised by how little computational power you need to do tons of things (see this, for example).

However, setting the above up will be a quite challenging (but probably fun) project. The second best options looks like a laptop, but those are more of a hit or miss, especially for USB audio.
Yes, I agree with all that. I have to sit satisfied with what I have though - my programming knowledge is mostly limited to what I've learned for this project, in Python, using pyo, a library that others have applied for live performance too. Interaction with the program is simply keystrokes (I forget what I used to interpret them from multiple different keyboards) and messages are printed to the command line. But I operate it within a GUI partially because I'm not confident enough to completely do away with it, and partially because I want to also play audio and edit clips using Audacity to upload quickly to the internet.

It took me the greater part of this year, tinkering in my spare time, to get it to this stage, and I mostly just want to play through it now. Having a crappy work laptop running it just was not looking like an adequate option anymore.

A Dell Latitude E5430 is on its way to me, used for about $120, with 8GB RAM and an Intel i7 dual core processor. I'll put my audio interface into a separate USB slot to the keyboards, as recommended.

RE: MOD Devices - that's surely the future of guitar pedals. I've seen a few examples though none of them have taken off quite like they should.
tramp
Established Member
Posts: 2335
Joined: Mon Jul 01, 2013 8:13 am
Has thanked: 9 times
Been thanked: 454 times

Re: Building computer for a single homemade program

Post by tramp »

Maybe a RPI3 would be enough for this:
https://github.com/szymonkaliski/LoopPI2
On the road again.
CrocoDuck
Established Member
Posts: 1133
Joined: Sat May 05, 2012 6:12 pm
Been thanked: 17 times

Re: Building computer for a single homemade program

Post by CrocoDuck »

PaulSutherland wrote:A Dell Latitude E5430 is on its way to me, used for about $120, with 8GB RAM and an Intel i7 dual core processor. I'll put my audio interface into a separate USB slot to the keyboards, as recommended.
That should do the job nicely, in terms of specs. If you hit performance issues open a thread and we will be happy to help as we can.
tramp wrote:Maybe a RPI3 would be enough for this:
https://github.com/szymonkaliski/LoopPI2
Yep. that's another option too, although I think it will require some good software optimization. Which is all fun really. If I had time for it, I would be playing with that all day.
PaulSutherland
Established Member
Posts: 8
Joined: Mon Nov 27, 2017 5:52 pm

Re: Building computer for a single homemade program

Post by PaulSutherland »

Neat, I'm impressed someone got a Raspberry Pi 3 to do this. 6 tracks is nowhere near enough fun for me though. I have a previous version of the Raspberry Pi and I was never able to get jack working properly. I'm sure it'd work if I went back, but the other performance issues would likely be comparable.

The Dell Latitude came in the mail a couple of days ago. I got it working and ... wow, the difference is huge. Previous vs. now examples:

- very comfortable jack latency of 20 ms, now under 8 ms, I could easily go further.
- functions okay with 20 loops, at 30 it starts breaking, now 100 loops *all recording at once* is fine, 200 seems to hit a wall but only due to a threading timer
- glitching when playing too many notes at once of a 30mb sf2 file, now absolutely fine with a 600+mb sf2 file

I'm gonna do some longer jamming tonight and really enjoy this.

Regarding too much going into one USB slot - I can't really report on that as my old computer only ever has 1 USB slot functioning for some reason right now, and I can't really be bothered to put in the effort to debug that.
User avatar
Michael Willis
Established Member
Posts: 1451
Joined: Mon Oct 03, 2016 3:27 pm
Location: Rocky Mountains, North America
Has thanked: 69 times
Been thanked: 164 times
Contact:

Re: Building computer for a single homemade program

Post by Michael Willis »

Great success. I would love to hear some of the music that you end up making with it.
Post Reply