diff options
Diffstat (limited to '')
-rw-r--r-- | mobile/android/geckoview/src/androidTest/assets/www/context_menu_blob_buffered.html | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/mobile/android/geckoview/src/androidTest/assets/www/context_menu_blob_buffered.html b/mobile/android/geckoview/src/androidTest/assets/www/context_menu_blob_buffered.html new file mode 100644 index 0000000000..9849747a41 --- /dev/null +++ b/mobile/android/geckoview/src/androidTest/assets/www/context_menu_blob_buffered.html @@ -0,0 +1,44 @@ +<!DOCTYPE html> +<html> + <head> + <meta charset="utf-8" content="width=device-width, height=device-height" /> + <title>Context Menu Test Blob Buffered</title> + </head> + <body> + <video id="video" controls preload></video> + </body> + <script> + window.addEventListener("DOMContentLoaded", function (e) { + const video = document.getElementById("video"); + const mediaSource = new MediaSource(); + video.src = URL.createObjectURL(mediaSource); + mediaSource.addEventListener("sourceopen", createBuffer); + + function createBuffer(event) { + const mediaSource = event.target; + const assetURL = "/assets/www/videos/gizmo.webm"; + const codec = 'video/webm; codecs="opus"'; + const sourceBuffer = mediaSource.addSourceBuffer(codec); + + function addBuffer(response) { + sourceBuffer.addEventListener("updateend", function () { + mediaSource.endOfStream(); + }); + sourceBuffer.appendBuffer(response); + } + + fetchVideoData(assetURL, addBuffer); + } + + function fetchVideoData(assetURL, videoArrayBuffer) { + const request = new XMLHttpRequest(); + request.open("get", assetURL); + request.responseType = "arraybuffer"; + request.onload = function () { + videoArrayBuffer(request.response); + }; + request.send(); + } + }); + </script> +</html> |