Hi @alice,
Sounds like a nice interface. Better check another if it runs on Linux before you get it.
I am trying out an M-Audio Quattro. Current Linux kernel system support is out of the box, but displays the Quattro as two separate USB interfaces.
$ lsusb
Bus 003 Device 005: ID 0763:2001 M-Audio M Audio Quattro
Bus 003 Device 004: ID 0000:0538 M Audio USB Audio Quattro
Not sure if openframeworks supports sending audio to two separate audio cards at the same time. Does it? Two audio streams?
What I’ve already tried on this machine, using the soundBufferExample, on setup:
// start the sound stream with a sample rate of 44100 Hz, and a buffer
// size of 512 samples per audioOut() call
ofSoundStreamSettings settings;
settings.numOutputChannels = 2;
// settings.numOutputChannels = 4;
settings.sampleRate = 44100;
settings.bufferSize = 512;
settings.numBuffers = 4;
// settings.setApi(ofSoundDevice::Api::PULSE);
settings.setApi(ofSoundDevice::Api::ALSA);
settings.setOutListener(this);
// soundStream.setup(settings);
std::vector<ofSoundDevice> devices = soundStream.getDeviceList();
cout << devices << endl;
settings.setOutDevice(devices[2]);
soundStream.setup(settings);
The output of my devices:
Unkown API: 0] hw:HDA Intel,0 [in:2 out:2] (default in) (default out)
[Unkown API: 1] hw:HDA Intel,2 [in:2 out:0]
[Unkown API: 2] hw:USB Audio Quattro,0 [in:2 out:2]
[Unkown API: 3] hw:USB Audio Quattro,1 [in:2 out:2]
[Unkown API: 4] hw:HDA NVidia,3 [in:0 out:8]
[Unkown API: 5] hw:HDA NVidia,7 [in:0 out:8]
[Unkown API: 6] default [in:32 out:32]
The sketch runs, the wave is displayed and updated, but there is no sound out of the Quattro. Tried both soundDevices (2 & 3).
It’s weird that under Linux this card appears as two interfaces. Weird that it’s not working. Neither the ofSoundDevice::Api::, even though I set to ALSA or PULSE, output of soundStream.getDeviceList(); gives Unkown.
Anyone managed to get USB audio interfaces up and running on Linux?
Thanks,
&c