kopia lustrzana https://gitlab.com/eliggett/wfview
Use heap based rtaudio for enumeration
rodzic
0bc3d6adfe
commit
84fd5e0631
|
@ -59,13 +59,7 @@ bool audioHandler::init(const quint8 bits, const quint8 radioChan, const quint16
|
|||
|
||||
ringBuf = new wilt::Ring<audioPacket>(100); // Should be customizable.
|
||||
|
||||
#if defined(Q_OS_LINUX)
|
||||
audio = new RtAudio(RtAudio::Api::LINUX_ALSA);
|
||||
#elif defined(Q_OS_WIN)
|
||||
audio = new RtAudio(RtAudio::Api::WINDOWS_WASAPI);
|
||||
#elif defined(Q_OS_MACX)
|
||||
audio = new RtAudio(RtAudio::Api::MACOSX_CORE);
|
||||
#endif
|
||||
|
||||
|
||||
tempBuf.sent = 0;
|
||||
|
||||
|
|
19
wfmain.cpp
19
wfmain.cpp
|
@ -808,6 +808,16 @@ void wfmain::setUIToPrefs()
|
|||
|
||||
void wfmain::setAudioDevicesUI()
|
||||
{
|
||||
|
||||
#if defined(Q_OS_LINUX)
|
||||
RtAudio* audio = new RtAudio(RtAudio::Api::LINUX_ALSA);
|
||||
#elif defined(Q_OS_WIN)
|
||||
RtAudio* audio = new RtAudio(RtAudio::Api::WINDOWS_WASAPI);
|
||||
#elif defined(Q_OS_MACX)
|
||||
RtAudio* audio = new RtAudio(RtAudio::Api::MACOSX_CORE);
|
||||
#endif
|
||||
|
||||
|
||||
// Enumerate audio devices, need to do before settings are loaded.
|
||||
std::map<int, std::string> apiMap;
|
||||
apiMap[RtAudio::MACOSX_CORE] = "OS-X Core Audio";
|
||||
|
@ -831,13 +841,14 @@ void wfmain::setAudioDevicesUI()
|
|||
}
|
||||
|
||||
RtAudio::DeviceInfo info;
|
||||
qInfo(logAudio()) << "Current API: " << QString::fromStdString(apiMap[audio.getCurrentApi()]);
|
||||
|
||||
unsigned int devices = audio.getDeviceCount();
|
||||
qInfo(logAudio()) << "Current API: " << QString::fromStdString(apiMap[audio->getCurrentApi()]);
|
||||
|
||||
unsigned int devices = audio->getDeviceCount();
|
||||
qInfo(logAudio()) << "Found " << devices << " audio device(s) *=default";
|
||||
|
||||
for (unsigned int i = 1; i < devices; i++) {
|
||||
info = audio.getDeviceInfo(i);
|
||||
info = audio->getDeviceInfo(i);
|
||||
if (info.outputChannels > 0) {
|
||||
qInfo(logAudio()) << (info.isDefaultOutput ? "*" : " ") << "(" << i << ") Output Device : " << QString::fromStdString(info.name);
|
||||
ui->audioOutputCombo->addItem(QString::fromStdString(info.name), i);
|
||||
|
@ -847,6 +858,8 @@ void wfmain::setAudioDevicesUI()
|
|||
ui->audioInputCombo->addItem(QString::fromStdString(info.name), i);
|
||||
}
|
||||
}
|
||||
|
||||
delete audio;
|
||||
}
|
||||
|
||||
void wfmain::setSerialDevicesUI()
|
||||
|
|
1
wfmain.h
1
wfmain.h
|
@ -724,7 +724,6 @@ private:
|
|||
|
||||
|
||||
SERVERCONFIG serverConfig;
|
||||
RtAudio audio;
|
||||
};
|
||||
|
||||
Q_DECLARE_METATYPE(struct rigCapabilities)
|
||||
|
|
Ładowanie…
Reference in New Issue