46 emscripten::val videoTracks = stream.call<emscripten::val>(
"getVideoTracks");
47 if (videoTracks.isNull() || videoTracks.isUndefined()) {
50 emscripten::val videoSettings = videoTracks[0].call<emscripten::val>(
"getSettings");
51 float pixelRatio = emscripten::val::global(
"window")[
"devicePixelRatio"].as<
float>();
53 if (!videoSettings.isNull() || !videoSettings.isUndefined()) {
55 int width =
static_cast<
int>(videoSettings[
"width"].as<
int>() / pixelRatio);
56 int height =
static_cast<
int>(videoSettings[
"height"].as<
int>() / pixelRatio);
58 QSize initialSize(width, height);
59 QRect initialRect(QPoint(0, 0),initialSize);
61 m_videoOutput->updateVideoElementGeometry(initialRect);
64 emscripten::val videoElement = m_videoOutput->currentVideoElement();
65 if (videoElement.isUndefined()) {
66 qWarning() <<
"Could not find video element";
69 videoElement.set(
"srcObject", stream);