HLSは広く普及している配信方式だがブラウザで直接再生できるのはSafariだけと言ってもいい。

ライブモードでのシーク動作もiOS Safariではサポートされない。
これらを回避する為に、Websocket MSE(Media Source Extention)を利用したプレイヤーを使用する。

*iOSのシーク動作はVideo.jsプレイヤーで実現している。

 

組込コード

 

<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>

<video id="video" autoplay muted playsinline Poster="nm.jpg" controls width="100%" height="100%"></video>

<script>

  var video = document.getElementById('video');

  var videoSrc = 'https://1.docokame.biz/dvms/HLS/2H/fujimi-2H.m3u8';

  if (Hls.isSupported()) {

    var hls = new Hls();

    hls.loadSource(videoSrc);

    hls.attachMedia(video);

  }

  else if (video.canPlayType('application/vnd.apple.mpegurl')) {

    video.src = videoSrc;

  }

</script>

 

 

ライセンスに関して

要約すると。

 

Hls.js は Apache License, Version 2.0 の下でライセンスされています。

ライセンスを確認したところ。はい、オリジナルの著作権、ライセンス、および通知を含める限り、無料でプレーヤーを使用することができます。

 

 

Copyright (c) 2017 Dailymotion (http://www.dailymotion.com)

 

Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at

 

    http://www.apache.org/licenses/LICENSE-2.0

 

Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.

 

src/remux/mp4-generator.js and src/demux/exp-golomb.ts implementation in this project

are derived from the HLS library for video.js (https://github.com/videojs/videojs-contrib-hls)

 

That work is also covered by the Apache 2 License, following copyright:

Copyright (c) 2013-2015 Brightcove

 

 

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR

IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,

FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE

AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER

LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,

OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN

THE SOFTWARE.