現在、自鯖にてMPEG-DASHを使用したライブストリーミング環境を構築してみたのですが、
再生ができないので、コンソールにてエラーを確認したところ以下のように表示されていました。
[Protection] No supported version of EME detected on this user agent! - Attempts to play encrypted content will fail!
「このユーザーエージェントでサポートされているバージョンのEMEは検出されませんでした!暗号化されたコンテンツを再生しようとすると失敗します」とgoogle翻訳をかけて出ました。
どうすれば、MPEG-DASHの再生ができるのでしょうか。
以下に使用HTMLとjsを記述します。
HTML
1<!DOCTYPE html> 2<html> 3 4<head> 5 <title>live</title> 6 <link rel="stylesheet" type="text/css" href="css/video-js.min.css" /> 7 <link rel="stylesheet" type="text/css" href="css/style.css" /> 8 <script src="js/video-js/video.min.js"></script> 9 <script src="js/dash.js-3.1.2/dist/dash.all.min.js"></script> 10 <script src="js/video-js/videojs-dash.min.js"></script> 11 <script src="js/live.js"></script> 12</head> 13 14<body style="background-color:white"> 15 <video id="videoContent" class="video-js vjs-default-skin vjs-big-play-centered"></video> 16</body> 17 18</html>
javascript
1{ 2 let ready = (callbackFunc) => { 3 if (document.readyState !== 'loading') { 4 callbackFunc(); 5 } else { 6 document.addEventListener('DOMContentLoaded', callbackFunc); 7 } 8 } 9 10 ready(() => { 11 let video = videojs('videoContent', { 12 width: 640, // 幅 13 height: 360, // 高さ 14 autoplay: false, // 自動再生 15 loop: false, // ループ再生 16 controls: true, // コントロール制御表示 17 preload: 'auto', // 読み込み制御 18 }); 19 video.src({ 20 type: 'application/dash+xml', 21 src: 'dash/obs_live.mpd' 22 }); 23 video.on(['loadstart', 'loadedmetadata', 'loadeddata', 'play', 'playing', 'pause', 'suspend', 'seeking', 'seeked', 'waiting', 'canplay', 'canplaythrough', 'ratechange', 'ended', 'emptied', 'error', 'abort'], (e) => { 24 console.log(`EVENT: ${e.type}`); 25 }); 26 video.on('loadeddata', () => { 27 console.debug('########## VideoInfo [start] ##########'); 28 console.debug(`>> source: ${video.currentSrc()}`); 29 console.debug(`>> duration: ${video.duration()}`); 30 console.debug(`>> videoSize(WxH): ${video.videoWidth()}px x ${video.videoHeight()}px`); 31 console.debug(`>> readyState: ${video.readyState()}`); 32 console.debug(`>> networkState: ${video.networkState()}`); 33 console.debug('########## VideoInfo [end] ##########'); 34 }); 35 }); 36}
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。