hi paul,
enjoy your trip - i think there is no hurry with this - i just wanted to note, that there is now a proof of concept that it works. to your questions:
-
yes and no - not directly, but i searched all of the intel sse _mm_xyz calls and replaced them with the simde versions simde_mm_xyz … i think this could be done much cleaner by adding a header file which redefines all the _mm_xyz used in surge with the simde ones and is included together with the simde headers via ifdef on arm instead of the intel sse intrinsics headers
-
that would require a native arm and arm64 machine (i’m building all this stuff native on arm/arm64) - otherwise cross compiling would be required or i think there are also ways to run an arm/arm64 system somehow via qemu as docker container on an intel machine - not fast, but should be doable (https://blog.hypriot.com/post/docker-intel-runs-arm-containers/ and https://gist.github.com/Manu343726/ca0ceb224ea789415387 and most probalby many more)
-
i guess that the headless version is about the same as the patch player surge-rack plugin? that works perfectly fine on arm
i think the just announced raspberry-pi 4 might be a good target for all this …
best wishes - hexdump