画像を選択してその画像をMediaStream Recording APIで動画
にしたいのですが、ダウンロードまではできるのですがその動画の中身が
何も入っておらず、どうすればいいかわかりません。
初歩的な質問かもしれませんがどなたか教えていただけると幸いです。
よろしくお願いいたします。``````ここに言語を入力
コード
js// var ctx; var frames; var recorder; function frame_start() { //canvasの取得 canvas = document.getElementById('preview'); ctx = canvas.getContext('2d'); //canvasからストリームを取得 var stream = canvas.captureStream(); //ストリームからMediaRecorderを生成 recorder = new MediaRecorder(stream); //ダウンロード用のリンクを準備 var anchor = document.getElementById('downloadlink'); //録画終了時に動画ファイルのダウンロードリンクを生成する処理 recorder.ondataavailable = function(e) { var videoBlob = new Blob([e.data], { type: e.data.type }); blobUrl = window.URL.createObjectURL(videoBlob); anchor.download = 'movie.webm'; anchor.href = blobUrl; anchor.style.display = 'block'; } //録画開始 recorder.start(); //フレーム描画開始 frames = document.getElementsByClassName('anime')[0].getElementsByTagName('img'); viewFrame(); } function viewFrame(frame_no = -1) { //フレーム番号をカウントアップ frame_no++; if (frames[frame_no]) { //次のフレームをキャンバスに画像を描画 ctx.drawImage(frames[frame_no], 0, 0); setTimeout(function() { viewFrame(frame_no); }, 200); } else { //次のスライドがなければ録画終了 recorder.stop(); } }
html<!DOCTYPE
1<html lang="en"> 2 3<head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <title>Document</title> 7</head> 8 9<body> 10 <div class="anime" style="display:none;"> 11 <img src="image/mig.jpeg" /> 12 <img src="image/customgoogle7.jpg" /> 13 <img src="image/customgoogle7.jpg" /> 14 <img src="image/ダウンロード.jpeg" /> 15 </div> 16 17 <p><button onclick="frame_start();">動画を作成する</button></p> 18 <p><a href="#" id="downloadlink" style="display:none;">ダウンロード</a></p> 19 <p><canvas id="preview"></canvas></p> 20 <script src="js/func.js"></script> 21</body> 22 23</html> 24コード
あなたの回答
tips
プレビュー