New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Sun backend option for JACK #468
Conversation
I'd prefer to see the basic conditionals that make this available be wrapped in compile-time OS ident #ifdefs |
It's not really OS-specific since it's available through the rumpkernel driver collection, but yeah I can do this - it's not really the common use case and any platform where using it that way is a good idea will probably need more work before ardour works. |
sun backend is OS independent. |
It is not OS independent. It uses ioctl's that are OS dependent. |
These ioctls can be rump syscalls (hypercalls). rump is a NetBSD kernel built as a literal standalone library. It can be executed in userland on Windows, Linux, Darwin, inside a bootloader (sun audio on baremetal: https://www.youtube.com/watch?v=EyeRplLMx4c), in HURD etc. No need for real syscall ioctls. rump runs in theory on anything more or less with a C99/C11 compiler. But agreed that Ardour users will most likely use their native audio backends and nobody will run Ardour from a bootloader. |
That maybe true, but that would in turn require different build options for JACK on the non-Sun-ish/BSD host platform, since the configure time check is for the presence of sys/audioio.h (JACK1) and/or python's sys.platform saying "sunos" (JACK2). Ardour's "JACK configuration" options are absolutely not intended to be all-encompassing. There are other JACK front-ends that can and should be used for unusual situations. If you're running on Linux, the "sun" driver for JACK is not a sensible option to present to users. |
In any case, can we get this merged? It's only going to show up on platforms where it's the primary audio API baked into the kernel, in the current state of this PR. |
manually rebased and merged. thanks! |
JACK's Sun backend is used on NetBSD, illumos, GNU/HURD (?), others (?).