blob: 7046a9962c38a8405a80b002e8556a0c88929caa [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<title>Media Capture from DOM Elements (video/audio) Browser Test</title>
</head>
<body>
<div> Capture and playback from video/audio elements.</div>
<video id="video"></video>
<audio id="audio"></audio>
</body>
<script type="text/javascript" src="webrtc_test_utilities.js"></script>
<script>
'use strict';
const NUMBER_OF_EVENTS_TO_RECORD = 25;
function testCaptureFromMediaElement(filename,
has_video,
has_audio,
use_audio_tag) {
const element = use_audio_tag ? document.getElementById('audio')
: document.getElementById('video');
assertTrue(element, 'Error resolving tag');
element.src = filename;
element.onerror = function(e) {
failTest("error playing back [" + filename + "] " + e);
}
var recorded_events = 0;
element.onloadedmetadata = function() {
const stream = element.captureStream();
assertTrue(stream, 'Error creating MediaStream');
assertEquals(has_video, stream.getVideoTracks().length);
assertEquals(has_audio, stream.getAudioTracks().length);
const recorder = new MediaRecorder(stream);
assertTrue(recorder, 'Error creating recorder out of the MediaStream');
recorder.ondataavailable = function(event) {
if (++recorded_events > NUMBER_OF_EVENTS_TO_RECORD)
reportTestSuccess();
};
recorder.start(0);
element.play();
};
}
</script>
</body>
</html>