Mac Mini M1 for music

Its here … arrived yesterday…

Spec : Mac Mini M1 16GB RAM, 1TB SSD

I know quite a few of us here are mac users, so thought I’d share my experiences, and plans…

You’ve likely seen review videos etc already, so you won’t be surprised to hear its fast.
But what I want to know is it useable today… or do we need to wait for things to settle down a bit, for developers to ‘make the transition’.

I think generally, most are wise to wait a bit… this is going to end up being the ‘base model’ we can expect faster/more powerful mac book pros and iMac, mac pro next year. Though I still thing this mac mini format is very attractive considering price etc.
that said, I desparately needed a new mac for both development and music.

I plan to make some videos on the M1 and how usable it is… but thought id blog some details here, also if you have any questions of things you wnat me to try - ask away.

my basic plan is:
step 1) set it up as a computer for music
step 2) set up dev environement to build both arm and intel builds
step 3) looking at migrating various software to arm :slight_smile:

step 1 - music computer

started yesterday…
installed Logic, Final Cut Pro (for youtube videos) , Bitwig Studio , Ableton Live 11 (beta)
all worked fine including the Push 2 for Live and Bitwig !
and indeed, as per reviews, it all feels very snappy regardless of using Rosetta or not.

I then tested midi connectivity , using my mioXM … for both midi input (keyboard) and clock sync - again 100% ok !

then tested audio interfaces … I use a Percussa SSP and Zoomo H5 - again fine !

then on to some software…
U-he, Madrona Labs , Vahalla plugs … boring, they work too :wink:
UVI Falcon… hah, this uses iLok bound to fail - nope works :frowning:

(k, this was software iLok, I need to check the hardware dongle for cubase, but Im still on cubase 7, not sure if I want to install!)

VCVRack, seems fine… looking forward to trying some ‘heavy patches’ on it.

one amazing thing… I installed Loopback, which they have a public beta for the M1, this also worked a treat. (its great for routing audio around apps)

iOS apps - ok these are a bit disappointing, as many iOS developers have withdrawn the right to use on macOS … perhaps they want to test etc.
but for the ones I could get… I could get midi integration, audio integration (via loopback) and ableton link sync.

this could be a really interesting feature in the future
e.g. imagine building a track on the go on your ipad, then coming back to the studio, running the same app on your mac… but sync’ing it to your daw, and feeding its audio/midi into your daw to develop the track… in concept I did this yesterday !

so, I was very impressed by this point - I had expected niggles, some oddities, but it did just seem to work.

at this point, I moved onto areas I expected problems…low level hardware integration.

Madrona Labs Soundplane.
my first fail, basically its application crashes.
ok, this is not a big deal, and I kind of expected it… and I know Randy will look into it.
also, its open source, so I can dig in to …

step 2 - development

so the soundplane ‘issue’ started to lead me into step 2, setting up a dev environment.
so I got xcode and clion up n’ runniing. worked out how to get homebrew working, so that I could install cmake.
with this started to take my first steps into both compiling for ARM and Intel on the M1.
(got my first app of each type built :slight_smile: )

this is kind of where Im at, Ive still a bit to figure out on the development environment, but its looking promising. Then I need to start looking at specific projects of mine.

The general idea is I first want to ensure that I can build and run my projects under Rosetta (so Intel).
Then start looking at native (arm) builds

Where next?

short term plans

  • test MEC under Rosetta
  • test/setup EigenD under Rosetta
  • build thing like MEC under Rosetta
  • get soundplane working?
  • youtube videos :slight_smile:

mid term

  • look to build project as native arm
  • building ssp plugins under rosetta
  • getting a linux vm running

longer term

  • look at EigenD, work out how this moves forward.

so that’s kind of where Im at :slight_smile:


Eigenharp info only from here …

EigenD native/arm

Ive a feeling this is going to be a big change.
python 2.7 , surprisingly is installed on bigsur/m1… though gives a big warning when you start it.
so not sure how long it has left, before Apple kill it?!
time to think/test again a move to python 3… and decide what this means exactly.
(e.g. ditch python for UI, or entirely)

changing python etc, also means revisiting packaging - arghhh.

I think Scons really is showing its age, I think the build system needs to move to cmake.
I really like cmake, but more importantly Juce 6 now supports cmake, so that will help to tidy things up on that front. (Ive been using cmake/juce for plugins, so pretty familar/happy with it)
I would need to see how all the python stuff works on cmake, but given cmakes popularity, Im pretty certain that’ll be a ‘done deal’ already :wink:

also I hope that cmake would help us build univeral packages for intel/arm

note: Im expecting the above will mean no more 32 bit support … unless someone else wants to take this on as a ‘side project’

of course the above is quite a bit of change,
so at the same time, really need to review that this is the ‘best approach’.
Im concerned that there is only one ‘fast’ thread in EigenD. we seem to be moving to an age where multicore is very important… and one fast thread does not line up well with this!
… can it change, or is it better to be inspired by EigenD and move on?

7 Likes

Mac Minis are neat little machines, indeed! :slight_smile:
Could imagine that devs might be hesitant to transfer the pricing scheme for iOS apps to macOS, where apps cost $ instead of $$/$$$. In the long run I wouldn’t wonder when prices for iOS music apps go up - because they can also be used on Mac.

Regarding multithreading in EigenD - getting all single agents multi-core aware might be quite some work. But perhaps it would be possible to at least execute agents in parallel chains on multiple cores? Getting the merging part low-latency could also be tricky. But sounds worthwhile, only using one core on a 8+ core machine doesn’t sound like a matching approach anymore :slight_smile:

1 Like

iOS - agreed.
also in-app purchasing doesn’t seem to work at the moment either and thats a big revenue stream.
I think developers want some space to ‘think it through’.

I suspect the idea is that iOS and macOS apps will see some kind of convergence.
if we look at some users using iPad pros with keyboards and mice, it doesn’t take much too imagine that some apps might be built that support both a mac and ipad ‘inteface’ e.g. larger screen, UIs that are less ‘touch dependent’

Its a tricky transition … the iOS app store is pretty vibrant, perhaps due to cost, so how to keep that feel without destroying it.

btw: I can see developers coming under pressure from users to be able to use their iPad apps on thier Macs… Apple telling users its possible means devs are going to find it hard to say just say no.

already, Ive seen talk that this is the ‘one disappointing’ feature on the M1 - I cannot see Apple letting it stay that way for long :wink:

watch this space… I think a lot is going to happen in next few months


EigenD , yeah lots of possibilities… (*)
I need to revew the code, at the end of the day it comes to benefits and effort involved.
on one hand, EigenD has a lot of functionality… its really flexible.
on the other, the code base is in many places ‘overly complex’, hard to maintain and using a bunch of technologies that are becoming EOL.
but… thats for another day, need to work out what the short/mid goals are first.


(*) I think running agents on different cores may not be that hard (though, we need to check the code that hands data between the two threads) , probably the biggest issue would be working out some kind of process graph, so you know which agents end up in which ‘chain’.
I fear this a bit, I find how EigenD stores it data very difficult to decode … so I suspect building such a data graph will be very difficult just because it needs to be understand how to decode the eigend data model :frowning:

1 Like

Congrats with the M1 mini.

You might want to check Drambo as one of the iOS apps that supposedly works on Macs. It is a modular groovebox recently updated with AU hosting. It also supports MPE and seems solid at that.

Drambo does look cool.

does it store projects ‘in the cloud’?

drambo is cool,
but of course, Im running Ableton/vcvrack/bitwig, so not sure its adds much.
(I’m pretty sure au hosting won’t work on macOS)

what Im wondering is about unique ipad apps (I wanted borderlands unforunately not available) or apps that might create an interesting addition/workflow.
e.g. perhaps the concept of developing an idea whilst mobile, then moving it ‘effortlessly’ to your desktop.
( not that I have an iPad at the moment, but who knows… )

I think at the moment a very valid ‘critcism’ about running iOS apps on mac is:
‘why? what does it gain you? can’t you already do that witih a better application?’

not only in the music area, but also games…
the question remain, sure we can run iOS, but why do we want to? what does it bring?


as an aside lets remember, if you use Xcode for creating iPad apps, its not that hard to make them run on macOS anyway… even in the intel years…

the one new/big thing here for audio developers is that ARM is NEON vs Intel SSE… so that means if you optimise your music apps/dsp for ARM, they are going to run well on both iPads and M1.
(though of course, even there , not all FPUs are equal :wink: )

It sure is cool. I think it stores projects in the cloud as they can be synced between iPhones & iPads.
I think it adds a lot to certain iOS musicians. Personally I don’t use it despite of having perhaps the most flexible MPE implementation in iOS. I’m just not that crazy about building - prefer playing.

I think MiRack (the iOS VCV clone) can run both on iOS and MacOS (this was before M1) but I haven’t tested myself. VCV rack is pretty solid on Mac if that is your thing.

Funny you mention Borderlands because that is one app that I see made for touchscreens. I simply don’t see the point in it on a non touch screen.

I invested on an fully upgraded Mac mini last year with the intention of it to last so I’m afraid there’s going to be some time before I get the chance to get my hands on one of those. I have been drifting back to macOS because there is a lot more stability and also because I’m coming to terms with Logic Pro, Pigments and Equator 2 (which give me almost everything I need in terms of sounds; well, there is also Plasmonic to spice things a bit).

If there is something I’d like to see on Mac (from the iOS world) is an improved version of AUM (with a MIDI piano roll maybe). I really like that workflow. But playing with what one has, Logic is ok.

1 Like

yeah, I think its going to be interesting to where this all goes…


in other news, Ive now built a semi working version of the soundplane software.
(osc is working, midi is getting corrupted… I think due to an old version of juce?!)

I think Im now going to see if I can get MEC working in a similar way.
It’ll be interesting to see if the low level stuff with the soundplane and eigenharp can be made to work.

1 Like

Bit more exciting progress…

Ive managed to
build MEC for ARM … thats right a native version of mec
this includes, the eigenharp code…mec is having a small issue I need to work debug
BUT the low level eigenharp test works !

also push 2 and soundplane also appear to work as well!

again, this is all arm… so thats a really promising sign.

means I should be able to ‘fix’ EigenD in the same way…
(though, of course, there are many other parts of EigenD to do !)

EDIT: issue resolved, Mec is now fully working for eigenharp :slight_smile:

6 Likes

another day… some more interesting discoveries…

I’ve built my first VST on apple silicon…
first just native, then a universal binary :slight_smile:

but whats interesting from a musicians perspective, is which versions of plugins can be used in which hosts.

so we have a couple of scenarios

Host = Intel
Host = Apple (arm)

Plugin = Intel
Plugin = Apple (arm)
Plugin = Universal (intel + arm)

so univeral binary works as expected, can be loaded into intel or apple host.
(although, not currently on older macOS (mojave) not sure if this will change? )

Intel host can only load Univeral or Intel plugins

Apple host can only load univeral or apple plugins

BUT… Logic Pro (and probably mainstage/garageband) is doing something a little odd…
It can load an Intel AU…
It presumably does this via Rosetta. and in doing so, it also ‘converts’ it to Apple/Arm as well.

this is a bit odd…
so imagine this scenario.

Ive a machine with no plugins installed.

  • I build my own plugin host/daw , so native apple/arm
  • I now copy an Intel AU onto it. (say Aalto as its a nice plugin)
  • my DAW cannot see it…its intel after all
  • I run Logic Pro, it scans the AU, and finds Aalto (!), and can load it (!) , close Logic.
  • now run my DAW - magically, it can now see Aalto

I guess whats happening is quite simple…
Apple new on release day Logic Pro would have no third party plugins if it could not load Intel plugins, so it has some how given it access to ‘Rosetta’ conversion routines.

the ‘disappointing’ side of this is… it only works with AU, since Apple products do not support VST, VST3.

I guess the question is… can other applications do this? is there a command line utilitily?

2 Likes

I’ve mentioned this before, but if you decide to update EigenD and there are some tasks (boring or time consuming stuff, for instance) that can be tackled by someone not as into the details as you are, I’ll gladly help.

I have (as all of us have, I’m sure) given a lot of thought on how the “EigenD replacement of my dreams” would look like. You probably have all the input you need on what people use/need already, but if at all of interest, I can type up something in a dedicated thread to get a discussion going.

3 Likes

Hey Mark et al, Happy New Year!

Just curious, has anyone tried EigenD with under Rosetta on an M1 Macbook Pro yet? Thinking of getting one to replace my 10 yr old one.

Thanks v. much.

Not yet…I’ve been meaning to set it up but not had a chance.

the reason is, I suspect it will not be that simple…
the issue is not EigenD, its the fact that we need to put the correct version of Python onto the M1.
theoretically this should work, but Im kind of not looking forward to trying :wink:

Ive already detailed this process (for the 64 bit version of EigenD) , but there may be some unexpected issues along the way.
note: Ive a Mac Mini M1, but it’ll be the same as the other M1s.

of course, once I do get around to it (and I really should !) , I’ll report back.

Mark, just saw this;

Will this help to get EigenD running on an Mac M1?

Thanks,Tefman.

Nope, unfortunately won’t help at the moment.

EigenD won’t run with Python 3, only particular versions of python 2.

My 2012 MacBook Pro is dying slowly. I had to get a new Mac and it is a mini M1. Am I right that EigenD will not run on this machine in the near future?

I hate the thought that this should be the end of my Pico. Is there no M1/Big Sur compatible software or hardware out, that can somehow initiate and read the output of a Pico? I need only MIDI or something I can work with in Max.

An option would be to (fresh) install Mojave or Catalina and EigenD on the old MacBook and use it as long as the machine lives. Maybe a year, maybe a week.

My plan is definitely to have something working for the eigenharps … likely mec first, then some form of eigend
(what form is a little unclear, see above)

I was pretty busy in January so didn’t make any progress on this.
But it looked like mec can work fairly easily - I’ve got all my projects now building on the M1 , but mec seem to have a small bug , so need to fix that.
That’ll probably be done soon.

good news is the M1 tool chains are improving - eg my main ide - Jetbrains CLion now has M1 support.

EigenD has a few unknowns (mainly surrounding python) about running under Rosetta2 … i was not keen to ‘corrupt’ my M1 install on playing with this - however I now have a 2nd M1 so perhaps could mess with this a bit more.
Getting a native M1 version, similarly needs investigation - the issue is NOT the c++ code, that I can easily build native - it’s the hook up with python , and what python and python libraries are available for arm/native , many are quite old and unsupported.

tl;dr; - I’m going to be working on it, but given this is done in my spare time - I cannot commit to a timescale.

On the positive side, I’m moving 100% to Apple Arm so it will happen :slight_smile:

3 Likes

Thanks for information, I’ll stay tuned.

I don’t really understand the technical functions of Eigenharp devices. Their (for me) invisible data stream and the initialization routine make me nervous. No chance to use them without a dedicated interface.

Eigenharp + MEC + Raspberry would be a good setup, I think. A specialized device with it’s own hardware and some standard output. This does not respect John’s vision, but on the long run it is more attractive for players than freezing an old computer to keep just one instrument for a couple of years.

Awesome! We have a M1 Mac mini sitting next to our other machines, but I haven’t had time to mess with it at all.

Presumably, as the new machines only run Big Sur, your experience with various bits of software would apply to Intel machines, too. I’ve been waiting on updating in case EigenD died under Big Sur.

@cmc @djogon - you may be interested in EigenD for Apple Silicon test build.


apparently, Ive had the the Mac Mini M1 for 4 months now… time flies.

I thought, Id review my initial post, and see where we have got too,

so here are the 3 steps I discussed…

step 1 - music computer

this has worked out extremely well…
whilst most daws are still running under Rosetta, but I’ve had no issues with them at all.
the performance has been excellent.

as expected/hoped, we are seeing more and more software ported to apple silicon, already quite a few vsts are either out, or in beta.

looking beyond music, video software are seeing apple silicon versions , so not only final cut pro, but also Davinci Resolve.

importantly, I think all developers have said they are working on native versions.

so generally its a bit of a mix bag, as to what runs native (which is not unsurprising), but I expect when the iMac/bigger MBP are released (June 7?) , we will see quite rapid progress here.
however, its not a big deal - since Rosetta and the performance on the M1 is so exceptional.

… its easily outperfoming my i7 2.5ghz mac book pro, at a fraction of the cost.

the only ‘negative’ I had really was initially setting up (video) monitors with the Mini - the Apple offering was out of my budget, and it was a bit fiddly to get what I wanted - though reading forums, this is really a general issue with 3rd party monitor support on macOS - any way all working now - and very happy!
(it did make me appreciate how great the iMac monitors are !)

step 2 - development

this was mainly about developments tools, the progress in this area has been amazing!
this is hugely important since developers (of things like daws) need tools and libraries to be updated to enable them to port thier own software.
personally, I dont think there are any impediments to this now.

interestingly the lack of a virtual machine (vmware) to run linux, meant I forced myself to sort out a decent cross compilation environment - which is fantastic on this machine.

generally, this is now the best macos dev machine Ive ever had - by a large margin.
its ridiculously fast, and completely solid.

step 3 - looking at migrating various software to arm

porting EigenD over last weekend, was really my last task…
Ive now managed to get all my projects now building and running natively on apple silicon.
given its only 4 months, thats coo - a much shorter timescale than I had anticipated.

Conclusion

overall, as you can probably tell - Im as impressed by the M1, as the day I got it.
for a computer thats unusual… usually, you think for the first week ‘wow its fast’, then you quickly get used to it… and its just normal - but the M1 has continued to surprise me.

the iOS support, still feels a bit gimicky - technically works fine, but I think many iOS developers are not sure how to market this.

Big Sur, has thankfully been much less problematic than I was expecting.

the price/performance I think is exceptional.
I’d say 16gb is pretty much essential, so the base price is really 1000 euro (as I suspect you could use an external SSD if your on a budget) - and I will agree with reports, that 16gb does seem to get you further than it would on Intel (where I always use 32gb+)

the M1 is definitely a great machine, the best apple has released in years.

of course, the current machines are for all - many want an iMac or a more beefy MBP.
the good news is it looks like you want have to wait long…

the WWDC (apple dev conference) is Jun 7th, basically this will be 100% dedicated (likely sycophantically :wink: ) to the success of the M1 launch, and how the ‘migration’ is going smoothly … this is what apple always do … and then as part of that , its very likely they will announce the next in the lineup - which you’d expect to be the iMac and MBP (*)


(*) I’d say this is almost certain, unless they have had technical or manufacturing issues - of course, this is all possible given the panademic has complicated life for all manufactures.

1 Like