7#include <private/qstdweb_p.h>
17 setDeviceSourceStream(
"");
27 if (
muted == m_wasMuted)
29 if (m_mediaStream.isNull() || m_mediaStream.isUndefined())
31 emscripten::val audioTracks = m_mediaStream.call<emscripten::val>(
"getAudioTracks");
32 if (audioTracks.isNull() || audioTracks.isUndefined())
34 if (audioTracks[
"length"].as<int>() < 1)
36 audioTracks[0].set(
"muted",
muted);
63void QWasmAudioInput::setDeviceSourceStream(
const std::string &
id)
66 emscripten::val navigator = emscripten::val::global(
"navigator");
67 emscripten::val mediaDevices = navigator[
"mediaDevices"];
69 if (mediaDevices.isNull() || mediaDevices.isUndefined()) {
70 qWarning() <<
"No media devices found";
77 [
this](emscripten::val
stream) {
78 qCDebug(qWasmAudioInput) <<
"getUserMediaSuccess";
82 [](emscripten::val
error) {
84 <<
"addCameraSourceElement getUserMedia fail"
90 emscripten::val constraints = emscripten::val::object();
91 constraints.set(
"audio",
true);
93 constraints.set(
"deviceId",
id);
97 std::move(getUserMediaCallback), constraints);
102 return m_mediaStream;
107#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