Cabbage Logo
Back to Cabbage Site

No Sound in Build for Apple Silicon

Hello,

I used the Rolling Ball Unity Tutorial and Rorys Youtube Video for the same project to get to know CSoundUnity. It’s very intuitive to work with, so I managed to get a basic soundeffect (with varying parameters dependent on the collected tokens ingame) working very quickly.
If I build specifically for macOS Intel 64-bit, it works great. But if I build for macOS Intel 64-bit + Apple Silicon, the ingame sound does not work anymore (even if running the app on a Intel 64-bit machine). Also someone on the forum reported, that CSoundUnity should work fine with Apple Silicon builds: Mac M1 CHIP

Is this a issue specifically for building to macOS Intel 64-bit + Apple Silicon “combined”?

To my knowledge, the arm64 version of Csound is currently not integrated in CsoundUnity, which is why the Unity x86-64 builds work with Csound and the Silicon ones do not.

It seems like CsoundUnity does not support universal builds with arm64. I wonder if running the two components, i.e. Csound and Unity, on different architectures concurrently would be possible at all… :thinking:

Hi,
I have replicated the issue, and I can confirm that an Intel build works on a M1 Mac.
I have tried building for Intel+Silicon and indeed the Csound.bundle is not copied into the final build.
Can you open an issue on GitHub?
I’d like to keep track of this issue :wink:

There is no arm64 version of Csound yet, at least not an official one. So Csound and Unity can’t support universal builds. However, I maintain my own universal build of Csound which you can try. I don’t have access to my mac right now, but here is a version for Csound 6.16 I think. Note that this is a bare-bones build. It’s missing a lot of plugins, but it should indicate whether arm64 will be an issue moving forward.

I know Victor is after getting an arm64 machine so I guess it won’t be long before Csound has an official universal build.

1 Like

Using an Intel Unity Editor (so running with Rosetta on my M1 Mac):

  • it works on the editor
  • If I build for Intel only it works
  • If I build for Intel + Silicon the bundle is not copied in the build, no crash
  • if I build for Apple Silicon only the bundle is not copied in the build, but no crash
  • interestingly, if I change the CsoundLib64.bundle to Apple Silicon in the Plugin inspector, it still works on the editor :roll_eyes:
  • after changing the bundle to Silicon and building for Silicon, the bundle is copied inside the folder Contents/Plugins/ARM64, no crash :smiley:

On a Silicon Unity Editor:

  • the bundle doesn’t load no matter what I set.

Like Rory says, we need to wait for the Silicon version of Csound.

Also there will be some issues with security permissions :sweat:
Plugins will be checked the first time they’re loaded.
This is what happens on the first load of the CsoundLib64:
Screenshot 2022-03-09 at 22.43.36
Screenshot 2022-03-09 at 22.43.55
Screenshot 2022-03-09 at 23.04.10

1 Like

Thank you guys for the detailed and quick answers everybody!

Since you already isolated the problem and cause in your last post, should I still open an issue on github, @giovannibedetti?

I will, no worries!
That’s in case I have to link the issue on the csound repo :wink:
(I was on a hurry when I wrote that post :sweat_smile:)

1 Like