mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-10-25 06:28:30 +00:00
81 lines
2.2 KiB
HTML
81 lines
2.2 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 Screenshare Test",
|
|
bug: "1211656"
|
|
});
|
|
/**
|
|
* Run a test to verify that we can complete a start and stop media playback
|
|
* cycle for a screenshare LocalMediaStream on a video HTMLMediaElement.
|
|
*/
|
|
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');
|
|
|
|
var constraints = {
|
|
video: {
|
|
mozMediaSource: "screen",
|
|
mediaSource: "screen"
|
|
},
|
|
fake: false
|
|
};
|
|
var videoConstraints = [
|
|
{
|
|
mediaSource: 'screen',
|
|
width: {
|
|
min: '10',
|
|
max: '100'
|
|
},
|
|
height: {
|
|
min: '10',
|
|
max: '100'
|
|
},
|
|
frameRate: {
|
|
min: '10',
|
|
max: '15'
|
|
}
|
|
},
|
|
{
|
|
mediaSource: 'screen',
|
|
width: 200,
|
|
height: 200,
|
|
frameRate: {
|
|
min: '5',
|
|
max: '10'
|
|
}
|
|
}
|
|
];
|
|
return getUserMedia(constraints).then(stream => {
|
|
var playback = new LocalMediaStreamPlayback(testVideo, stream);
|
|
return playback.playMediaWithDeprecatedStreamStop(false);
|
|
})
|
|
.then(() => getUserMedia({video: videoConstraints[0], fake: false}))
|
|
.then(stream => {
|
|
var playback = new LocalMediaStreamPlayback(testVideo, stream);
|
|
playback.startMedia(false);
|
|
return playback.verifyPlaying()
|
|
.then(() => Promise.all([
|
|
() => testVideo.srcObject.getVideoTracks()[0].applyConstraints(videoConstraints[1]),
|
|
() => listenUntil(testVideo, "resize", () => true)
|
|
]))
|
|
.then(() => playback.verifyPlaying()) // still playing
|
|
.then(() => playback.deprecatedStopStreamInMediaPlayback())
|
|
.then(() => playback.stopMediaElement());
|
|
});
|
|
});
|
|
|
|
</script>
|
|
</pre>
|
|
</body>
|
|
</html>
|