zoukankan      html  css  js  c++  java
  • B 站 HTML5 播放器内核 Flv.js

    Flv.js 是 HTML5 Flash 视频(FLV)播放器,纯原生 JavaScript 开发,没有用到 Flash。由 bilibili 网站开源。

    该项目依托于 Media Source Extensions,受到 hls.js 的启发。

    概览:

    一个实现了在 HTML5 视频中播放 FLV 格式视频的 JavaScript 库。它的工作原理是将 FLV 文件流转码复用成 ISO BMFF(MP4 碎片)片段,然后通过 Media Source Extensions 将 MP4 片段喂进浏览器。

    flv.js 是使用 ECMAScript 6 编写的,然后通过 Babel Compiler 编译成 ECMAScript 5,使用 Browserify 打包。

    功能:

    • FLV 容器,具有 H.264 + AAC 编解码器播放功能

    • 多部分分段视频播放

    • HTTP FLV 低延迟实时流播放

    • FLV 通过 WebSocket 实时流播放

    • 兼容 Chrome, FireFox, Safari 10, IE11 和 Edge

    • 十分低开销,并且通过你的浏览器进行硬件加速

    • 用法:

    • <script src="flv.min.js"></script>
      <video id="videoElement"></video>
      <script>
          if (flvjs.isSupported()) {
              var videoElement = document.getElementById('videoElement');
              var flvPlayer = flvjs.createPlayer({
                  type: 'flv',
                  url: 'http://example.com/flv/video.flv'
              });
              flvPlayer.attachMediaElement(videoElement);
              flvPlayer.load();
              flvPlayer.play();
          }
      </script>
      注:如果使用的是独立的视频服务器,那么视频服务器的“Access-Control-Allow-Origin”这一项需要配置正确。

    参考:https://www.oschina.net/p/flv-js
    源码地址:https://github.com/Bilibili/flv.js
  • 相关阅读:
    Nginx 之负载均衡与反向代理
    PHP 之快递100接口封装
    Mongodb非关系型数据库
    Sphinx全文索引引擎
    PHP 之文件上传类封装
    PHP 之验证码类封装
    小程序 之左滑删除
    PHP 之实现按日期进行分组、分页
    System.IO 二
    IIS配置MIME类型
  • 原文地址:https://www.cnblogs.com/wangzl1163/p/6341115.html
Copyright © 2011-2022 走看看