diff --git a/src/qjackctlInterfaceComboBox.cpp b/src/qjackctlInterfaceComboBox.cpp index b95f4c6..a0848e8 100644 --- a/src/qjackctlInterfaceComboBox.cpp +++ b/src/qjackctlInterfaceComboBox.cpp @@ -47,6 +47,9 @@ #include #include #include +#ifdef WIN32 +#include +#endif #endif #ifdef CONFIG_ALSA_SEQ @@ -218,11 +221,19 @@ private: const PaDeviceIndex iNumDevice = Pa_GetDeviceCount(); { +#ifdef WIN32 + wchar_t wideDeviceName[MAX_PATH]; +#endif QMutexLocker locker(&PortAudioProber::mutex); if (PortAudioProber::names.isEmpty()) { for (PaDeviceIndex i = 0; i < iNumDevice; ++i) { PaDeviceInfo *pDeviceInfo = const_cast (Pa_GetDeviceInfo(i)); +#ifdef WIN32 + MultiByteToWideChar(CP_UTF8, 0, pDeviceInfo->name, -1, wideDeviceName, MAX_PATH-1); + const QString sName = hostNames[pDeviceInfo->hostApi] + "::" + QString::fromWCharArray(wideDeviceName); +#else const QString sName = hostNames[pDeviceInfo->hostApi] + "::" + QString(pDeviceInfo->name); +#endif PortAudioProber::names.push_back(sName); } }