@@ -1290,7 +1290,7 @@ void ofxVisualProgramming::loadPatch(string patchFile){
12901290#elif defined(TARGET_OSX)
12911291 audioDevices = soundStreamIN.getDeviceList (ofSoundDevice::Api::OSX_CORE);
12921292#else
1293- audioDevices = soundStreamIN.getDeviceList ();
1293+ audioDevices = soundStreamIN.getDeviceList (ofSoundDevice::Api::PULSE );
12941294#endif
12951295
12961296 audioDevicesStringIN.clear ();
@@ -1320,22 +1320,28 @@ void ofxVisualProgramming::loadPatch(string patchFile){
13201320 audioDevicesStringIN.push_back (" " +audioDevices[i].name );
13211321 audioDevicesID_IN.push_back (i);
13221322 for (size_t sr=0 ;sr<audioDevices[i].sampleRates .size ();sr++){
1323- audioDevicesSR.push_back (ofToString (audioDevices[i].sampleRates .at (sr)));
1323+ if (audioDevices[i].sampleRates .at (sr) >= 44100 ){
1324+ audioDevicesSR.push_back (ofToString (audioDevices[i].sampleRates .at (sr)));
1325+ }
1326+
13241327 }
13251328 ofLog (OF_LOG_NOTICE," INPUT Device[%zu]: %s (IN:%i - OUT:%i), Sample Rates: %s" ,i,audioDevices[i].name .c_str (),audioDevices[i].inputChannels ,audioDevices[i].outputChannels ,tempSR.c_str ());
13261329 }
13271330 if (audioDevices[i].outputChannels > 0 && haveMinSR){
13281331 audioDevicesStringOUT.push_back (" " +audioDevices[i].name );
13291332 audioDevicesID_OUT.push_back (i);
13301333 for (size_t sr=0 ;sr<audioDevices[i].sampleRates .size ();sr++){
1331- audioDevicesSR.push_back (ofToString (audioDevices[i].sampleRates .at (sr)));
1334+ if (audioDevices[i].sampleRates .at (sr) >= 44100 ){
1335+ audioDevicesSR.push_back (ofToString (audioDevices[i].sampleRates .at (sr)));
1336+ }
13321337 }
13331338 ofLog (OF_LOG_NOTICE," OUTPUT Device[%zu]: %s (IN:%i - OUT:%i), Sample Rates: %s" ,i,audioDevices[i].name .c_str (),audioDevices[i].inputChannels ,audioDevices[i].outputChannels ,tempSR.c_str ());
13341339 }
13351340
13361341 // remove duplicates from sample rates vector
13371342 std::sort ( audioDevicesSR.begin (), audioDevicesSR.end () );
13381343 audioDevicesSR.erase ( std::unique ( audioDevicesSR.begin (), audioDevicesSR.end () ), audioDevicesSR.end () );
1344+ std::sort ( audioDevicesSR.begin (), audioDevicesSR.end () );
13391345
13401346 // ofLog(OF_LOG_NOTICE,"Device[%zu]: %s (IN:%i - OUT:%i), Sample Rates: %s",i,audioDevices[i].name.c_str(),audioDevices[i].inputChannels,audioDevices[i].outputChannels,tempSR.c_str());
13411347 }
0 commit comments