I'm trying to make a musical instrument for stage use. From what I'm reading, Xenomai appears to be the way to go for really low latency. What I'm wondering is how does it affect startup time? Does it make it longer?
My application will consist of a one-time I2C codec setup, GPIO polling (maybe SPI), pin change interrupts, audio generation (with Pure Data, Csound, and/or Fluidsynth; otherwise I'd do it all bare-metal), and I2S audio output. I'm NOT using a kernel module for I2S, I couldn't get any of them to work so I cobbled together a manual user-space I2S driver.
So I'm thinking if I use Xenomai, maybe I can use Buildroot to pare down my Linux system and speed up startup time? I don't need much in the way of graphics or networking or USB. All of the actual audio patches will be set up before performance time. I suppose I could deal with 10-30 second startup time, but leaning more towards 10... you never know what can happen on the stage.
What are my chances of being able to have 1. fast startup, 2. very low latency audio production, and 3. the ability to run programs compiled for Linux (Csound, Pure Data, Fluidsynth)?
I'm willing to do the work, but I'd like to know if anyone has experimented with startup times with Xenomai or other RT solutions.