44 emscripten::val videoTracks = stream.call<emscripten::val>(
"getVideoTracks");
45 if (videoTracks.isNull() || videoTracks.isUndefined()) {
48 emscripten::val videoSettings = videoTracks[0].call<emscripten::val>(
"getSettings");
49 float pixelRatio = emscripten::val::global(
"window")[
"devicePixelRatio"].as<
float>();
51 if (!videoSettings.isNull() || !videoSettings.isUndefined()) {
53 int width =
static_cast<
int>(videoSettings[
"width"].as<
int>() / pixelRatio);
54 int height =
static_cast<
int>(videoSettings[
"height"].as<
int>() / pixelRatio);
56 QSize initialSize(width, height);
57 QRect initialRect(QPoint(0, 0),initialSize);
59 m_videoOutput->updateVideoElementGeometry(initialRect);
62 emscripten::val videoElement = m_videoOutput->currentVideoElement();
63 if (videoElement.isUndefined()) {
64 qWarning() <<
"Could not find video element";
67 videoElement.set(
"srcObject", stream);