Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-54242

Assert (qFatal) in QAudioDeviceInfo::availableDevices on Windows

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 5.9.4
    • 5.6.0, 5.7.0
    • Multimedia
    • None
    • Windows 7, 64-bit

    Description

      Function QAudioDeviceInfo::availableDevices asserts on Windows when dwFormats field of WAVEINCAPS / WAVEOUTCAPS equals to zero. In my case it happens with voice modem (Unimodem Half-Duplex Audio Device). By the way, the Windows Volume Mixer panel doesn't show this device.
      In my opinion, the right way to solve this problem is to replace lines 247, 248 and 253, 254 in qwindowsaudiodeviceinfo.cpp

      hasCaps = true;
      fmt = woc.dwFormats;

      with:

      hasCaps = (fmt = woc.dwFormats) != 0;

      Attachments

        For Gerrit Dashboard: QTBUG-54242
        # Subject Branch Project Status CR V

        Activity

          People

            valentyn.doroshchuk Valentyn Doroshchuk
            dvvlasov Dmitri Vlassov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes