Skip to content

Conversation

@Harishmcw
Copy link
Contributor

  • This PR adds support for building python-sounddevice wheels for the Windows on ARM64 (WOA) platform.
  • A corresponding PR in the portaudio-binaries repository has been raised to produce the required PortAudio binaries for Windows ARM64.
  • Once that PR is merged and the binaries become available through the updated submodule, these changes will enable building native Windows ARM64 wheels for python-sounddevice.

@mgeier
Copy link
Member

mgeier commented Nov 13, 2025

I'm wondering whether platform.machine() is the right thing to use?

I've just read python/cpython#98962, but I must admit I don't fully understand it. Do you have experience with the kind of emulation they are talking about?

Maybe sysconfig.get_platform() would also work in those emulated cases?

@Harishmcw
Copy link
Contributor Author

Thanks for the feedback! I tested x64 Python on an ARM64 Windows machine, and platform.machine() correctly reports 'ARM64' even when emulated, so our detection should work fine.

Additionally, In our CI workflows it is explicit that:

  • Test workflow: uses native ARM64 Python on windows-11-arm runner
  • Release builds: make_dist script explicitly sets PYTHON_SOUNDDEVICE_ARCHITECTURE=arm64

So we should be all good. Let me know if you have any other concerns.

@Harishmcw Harishmcw marked this pull request as ready for review November 15, 2025 09:49
@mgeier mgeier merged commit ce94736 into spatialaudio:master Nov 18, 2025
13 of 14 checks passed
@mgeier
Copy link
Member

mgeier commented Nov 18, 2025

Thanks a lot!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants