mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-11-19 18:38:36 +00:00
71 lines
2.1 KiB
HTML
71 lines
2.1 KiB
HTML
<!DOCTYPE HTML>
|
|
<html>
|
|
<head>
|
|
<script type="application/javascript" src="mediaStreamPlayback.js"></script>
|
|
</head>
|
|
<body>
|
|
<pre id="test">
|
|
<script type="application/javascript">
|
|
createHTML({
|
|
title: "getUserMedia Basic Tabshare Test",
|
|
bug: "1193075"
|
|
});
|
|
/**
|
|
* Run a test to verify that we can complete a start and stop media playback
|
|
* cycle for a tabshare LocalMediaStream on a video HTMLMediaElement.
|
|
*
|
|
* Additionally, exercise applyConstraints code for tabshare viewport offset.
|
|
*/
|
|
runTest(function () {
|
|
const isWinXP = navigator.userAgent.indexOf("Windows NT 5.1") != -1;
|
|
if (IsMacOSX10_6orOlder() || isWinXP) {
|
|
ok(true, "Screensharing disabled for OSX10.6 and WinXP");
|
|
return;
|
|
}
|
|
var testVideo = createMediaElement('video', 'testVideo');
|
|
|
|
return Promise.resolve()
|
|
.then(() => getUserMedia({
|
|
video: { mediaSource: "browser",
|
|
scrollWithPage: true },
|
|
fake: false
|
|
}))
|
|
.then(stream => {
|
|
var playback = new LocalMediaStreamPlayback(testVideo, stream);
|
|
return playback.playMediaWithDeprecatedStreamStop(false);
|
|
})
|
|
.then(() => getUserMedia({
|
|
video: {
|
|
mediaSource: "browser",
|
|
viewportOffsetX: 0,
|
|
viewportOffsetY: 0,
|
|
viewportWidth: 100,
|
|
viewportHeight: 100
|
|
},
|
|
fake: false
|
|
}))
|
|
.then(stream => {
|
|
var playback = new LocalMediaStreamPlayback(testVideo, stream);
|
|
playback.startMedia(false);
|
|
return playback.verifyPlaying()
|
|
.then(() => Promise.all([
|
|
() => testVideo.srcObject.getVideoTracks()[0].applyConstraints({
|
|
mediaSource: "browser",
|
|
viewportOffsetX: 10,
|
|
viewportOffsetY: 50,
|
|
viewportWidth: 90,
|
|
viewportHeight: 50
|
|
}),
|
|
() => listenUntil(testVideo, "resize", () => true)
|
|
]))
|
|
.then(() => playback.verifyPlaying()) // still playing
|
|
.then(() => playback.deprecatedStopStreamInMediaPlayback())
|
|
.then(() => playback.stopMediaElement());
|
|
});
|
|
});
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|