8#include <private/qstdweb_p.h>
18 setDeviceSourceStream(
"");
28 if (
muted == m_wasMuted)
30 if (m_mediaStream.isNull() || m_mediaStream.isUndefined())
32 emscripten::val audioTracks = m_mediaStream.call<emscripten::val>(
"getAudioTracks");
33 if (audioTracks.isNull() || audioTracks.isUndefined())
35 if (audioTracks[
"length"].as<int>() < 1)
37 audioTracks[0].set(
"muted",
muted);
64void QWasmAudioInput::setDeviceSourceStream(
const std::string &
id)
67 emscripten::val navigator = emscripten::val::global(
"navigator");
68 emscripten::val mediaDevices = navigator[
"mediaDevices"];
70 if (mediaDevices.isNull() || mediaDevices.isUndefined()) {
71 qWarning() <<
"No media devices found";
78 [
this](emscripten::val
stream) {
79 qCDebug(qWasmAudioInput) <<
"getUserMediaSuccess";
83 [](emscripten::val
error) {
85 <<
"addCameraSourceElement getUserMedia fail"
91 emscripten::val constraints = emscripten::val::object();
92 constraints.set(
"audio",
true);
94 constraints.set(
"deviceId",
id);
98 std::move(getUserMediaCallback), constraints);
103 return m_mediaStream;
108#include "moc_qwasmaudioinput_p.cpp"
The QAudioDevice class provides an information about audio devices and their functionality.
QByteArray id
\qmlproperty string QtMultimedia::audioDevice::id
std::string toStdString() const
static QString fromStdString(const std::string &s)
Combined button and popup list for selecting options.
void make(emscripten::val target, QString methodName, PromiseCallbacks callbacks, Args... args)
DBusConnection const char DBusError * error
#define Q_LOGGING_CATEGORY(name,...)
#define qCDebug(category,...)
#define QStringLiteral(str)
std::function< void(emscripten::val)> thenFunc
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent