6#include <qaudioinput.h>
7#include <private/qstdweb_p.h>
11Q_LOGGING_CATEGORY(qWasmAudioInput,
"qt.multimedia.wasm.audioinput")
13QWasmAudioInput::QWasmAudioInput(QAudioInput *parent)
14 : QObject(parent), QPlatformAudioInput(parent)
25 qCDebug(qWasmAudioInput) << Q_FUNC_INFO << muted;
26 if (muted == m_wasMuted)
28 if (m_mediaStream.isNull() || m_mediaStream.isUndefined())
30 emscripten::val audioTracks = m_mediaStream.call<emscripten::val>(
"getAudioTracks");
31 if (audioTracks.isNull() || audioTracks.isUndefined())
33 if (audioTracks[
"length"].as<
int>() < 1)
35 audioTracks[0].set(
"muted", muted);
37 emit mutedChanged(muted);
49 if (device == audioDevice)
53 setDeviceSourceStream(device.id().toStdString());
64 qCDebug(qWasmAudioInput) << Q_FUNC_INFO << id;
66 m_mediaInputStream.reset(
new JsMediaInputStream());
68 m_mediaInputStream->setUseAudio(
true);
69 m_mediaInputStream->setUseVideo(
false);
71 connect(m_mediaInputStream.get(), &JsMediaInputStream::mediaStreamReady,
this,
73 qCDebug(qWasmAudioInput) <<
"mediaStreamReady";
75 m_mediaStream = m_mediaInputStream->getMediaStream();
79 m_mediaInputStream->setStreamDevice(id);
89#include "moc_qwasmaudioinput_p.cpp"
Combined button and popup list for selecting options.