私はWindows 7を使用しており、デフォルトのオーディオ入力デバイスの録音ボリュームにアクセス(読み取り/書き込み)できるようにします。PyQt 5.9でオーディオレコーディングボリュームにアクセスする方法は?
PyQt 5.7では、以下のコードが機能し、audio.volume()が実際の記録レベル(0.8など)を返しました。 PyQt 5.8.2と5.9では、以下のアプローチはもはや動作せず、常に0.0を返します(レベルも変更できません)。 1つの違いは、5.8と5.9はオーディオ入力デバイス名が「デフォルト入力デバイス」で、5.7では実際の(切り捨てられた)デバイス名(「マイクロフォン(Logitech USB Headse)」など)でした。私は、デフォルトのデバイスを求めたとして、それは、「デフォルトの入力デバイスを」返す私が持っている
import PyQt5.QtCore
from PyQt5 import QtMultimedia
PyQt5.QtCore.PYQT_VERSION_STR # '5.9'
audioFormat = QtMultimedia.QAudioFormat()
audioFormat.setChannelCount(1)
audioFormat.setSampleRate(16000)
audioFormat.setSampleSize(16)
audioFormat.setCodec("audio/pcm")
audioFormat.setByteOrder(QtMultimedia.QAudioFormat.LittleEndian)
audioFormat.setSampleType(QtMultimedia.QAudioFormat.SignedInt)
info = QtMultimedia.QAudioDeviceInfo.defaultInputDevice()
info.deviceName() # 'Default Input Device'
audio = QtMultimedia.QAudioInput(info, audioFormat)
audio.volume() # 0.0
info.isFormatSupported(audioFormat) # True
質問:?、どこ私はそれを報告することができますもしそうなら
- が、これはバグです
- どのように?オーディオ入力音量レベルにアクセスする必要がありますか?
私は、この質問がより適切かもしれないQtフォーラムを見つけました:http://www.qtcentre.org/threads/68488-How-to-access-audio-recording-volume-in-PyQt-5 -9 – e1i45
バグ報告:https://bugreports.qt.io/browse/QTBUG-61920 – e1i45