67 void seekTo(qint64 position);
73 void newFrame(
const QVideoFrame &newFrame);
84 void setHasAudio(
bool needsAudio) { m_hasAudio = needsAudio; }
98 m_video.isNull() || m_video.isUndefined() ? emscripten::val::null()
120 void checkNetworkState();
121 void videoComputeFrame(
void *context);
122 void getDeviceSettings();
129 float m_requestedPosition = 0.0;
132 bool m_shouldStop =
false;
133 bool m_toBePaused =
false;
134 bool m_isSeeking =
false;
135 bool m_hasAudio =
false;
136 bool m_cameraIsReady =
false;
137 bool m_shouldBeStarted =
false;
138 bool m_isSeekable =
false;
141 QSize m_pendingVideoSize;
143 QMediaPlayer::MediaStatus m_currentMediaStatus;
144 qreal m_currentBufferedValue;
145 std::unique_ptr<JsMediaInputStream> m_mediaInputStream;
147 QScopedPointer<QWasmEventHandler> m_timeUpdateEvent;
148 QScopedPointer<QWasmEventHandler> m_playEvent;
149 QScopedPointer<QWasmEventHandler> m_endedEvent;
150 QScopedPointer<QWasmEventHandler> m_durationChangeEvent;
151 QScopedPointer<QWasmEventHandler> m_loadedDataEvent;
152 QScopedPointer<QWasmEventHandler> m_errorChangeEvent;
153 QScopedPointer<QWasmEventHandler> m_resizeChangeEvent;
154 QScopedPointer<QWasmEventHandler> m_loadedMetadataChangeEvent;
155 QScopedPointer<QWasmEventHandler> m_loadStartChangeEvent;
156 QScopedPointer<QWasmEventHandler> m_canPlayChangeEvent;
157 QScopedPointer<QWasmEventHandler> m_canPlayThroughChangeEvent;
158 QScopedPointer<QWasmEventHandler> m_seekingChangeEvent;
159 QScopedPointer<QWasmEventHandler> m_seekedChangeEvent;
160 QScopedPointer<QWasmEventHandler> m_emptiedChangeEvent;
161 QScopedPointer<QWasmEventHandler> m_stalledChangeEvent;
162 QScopedPointer<QWasmEventHandler> m_waitingChangeEvent;
163 QScopedPointer<QWasmEventHandler> m_playingChangeEvent;
164 QScopedPointer<QWasmEventHandler> m_progressChangeEvent;
165 QScopedPointer<QWasmEventHandler> m_pauseChangeEvent;
166 QScopedPointer<QWasmEventHandler> m_beforeUnloadEvent;