From 3377bcd85e545c541282bb2168b0783a74fbbf36 Mon Sep 17 00:00:00 2001
From: xc <double72cheng@gmail.com>
Date: Sun, 25 Apr 2021 11:13:58 +0800
Subject: [PATCH] 直播 插件化完成
---
src/main/resources/public/js/live/livepler.js | 112 +++++++++++++-------------------------------------------
1 files changed, 26 insertions(+), 86 deletions(-)
diff --git a/src/main/resources/public/js/live/livepler.js b/src/main/resources/public/js/live/livepler.js
index cfa787c..cb73411 100755
--- a/src/main/resources/public/js/live/livepler.js
+++ b/src/main/resources/public/js/live/livepler.js
@@ -1,96 +1,36 @@
-!(function () {
-
-
+;!(function () {
window.onkeydown = function () {
h5lc.fullscreen = false
}
- var $toolbar = document.getElementById('toolbar');
- var $fullscreenId = document.getElementById('fullscreenId');
- var $play = document.getElementById('play');
- var $stop = document.getElementById('stop');
- var container = document.getElementById("container");
+ let _content = $("<div class=\"content\">\n" +
+ " <div class=\"player\" onmouseover=\"$('.player .control').css('display', 'block')\" onmouseout=\"$('.player .control').css('display', 'none')\">\n" +
+ " <div class=\"player-wrapper\" id=\"container\" style=\"background-color: #0D0E1B;\">\n" +
+ " </div>\n" +
+ " <div class=\"control\">\n" +
+ " <div class=\"fa fa-play\" id=\"play\"></div>\n" +
+ " <div class=\"fa fa-stop\" id=\"stop\" style=\"display: none\"></div>\n" +
+ " <div class=\"timer\">\n" +
+ " <span class=\"progress_timer\">00:00:00</span>\n" +
+ " <span class=\"duration_timer\">00:00:00</span>\n" +
+ " </div>\n" +
+ " <div class=\"fa fa-expand expand\" onclick=\"h5lc.fullscreen=true\"></div>\n" +
+ " <div class=\"fa fa-close\" id=\"close\"></div>\n" +
+ " </div>\n" +
+ " </div>\n" +
+ " </div>");
+ $("#jessibucaContainer").append(_content);
- var isPlaying = false;
- let source = queryParam('source') || 'localhost';
- var h5lc = new Jessibuca({container, decoder: "../js/jessibuca/ff.js", videoBuffer: 1});
-
- h5lc.onLoad = function () {
- //this.play("wss://pulls.1234326.cn/live/L01.flv")
- //this.play("ws://localhost:8080/live/test.flv")
- //this.play("ws://" + source + ":8080/live/" + stream)
- //this.play("ws://pull3.afb1188.com/live/" + stream + ".flv")
- //this.play("ws://pull2.afb1188.com/live/" + stream + ".flv")
- }
-
- //自动加载播放
- h5lc.onPlay = function () {
- isPlaying = true;
- $play.style.display = 'none';
- $stop.style.display = 'inline';
- }
-
- //点击播放按钮播放
- $play.addEventListener('click', function () {
- isPlaying = true;
- h5lc.play("ws://172.16.30.113:8082/live/ff80808178af424e0178af44e677000343616d657261.flv")
- $play.style.display = 'none';
- $stop.style.display = 'inline';
- }, false);
-
- //点击播放停止
- $stop.addEventListener('click', function () {
- isPlaying = false;
- //stop();
- $play.style.display = 'inline';
- $stop.style.display = 'none';
- }, false);
-
- function stop() {
- $.get("http://127.0.0.1:8088/monica/video/stop?param=live/test", function () {
- h5lc.close()
- }
- );
- }
-
- function queryParam(name, url) {
- var search = window.location.search;
- var qArr = '';
- var key = {};
- if (url) {
- qArr = url.split("?")[1].split("&")
- } else {
- if (!window.location.search) {
- return
- }
- qArr = search.substr(1).split("&")
+ function constructLive(opt) {
+ this._opt = opt;
+ if (typeof opt.container === "string") {
+ this._opt.container = document.getElementById(opt.container);
}
- for (var i = 0; i < qArr.length; i++) {
-
- var firstPos = qArr[i].indexOf('=');
- key[qArr[i].slice(0, firstPos)] = qArr[i].slice(firstPos + 1)
+ if (!this._opt.container) {
+ throw new Error('Jessibuca need container option');
+ return;
}
- if (name) {
- return key[name]
- } else {
- if (url) {
- return key[name]
- } else {
- return key
- }
- }
- }
- //工具栏 鼠标定位隐藏
- $toolbar.onmouseover(function () {
- $(".player .control").css("display", "block")
- })
- $toolbar.onmouseout(function () {
- $(".player .control").css("display", "none")
- })
- $fullscreenId.onclick(function () {
- h5lc.fullscreen=true
- })
+}})()
-})();
--
Gitblit v1.9.1