@boldarialblack/multi-stream-player 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,9 +1,9 @@
1
- import { defineComponent as G, openBlock as Q, createBlock as M, createVNode as v, ref as A, reactive as $, watchEffect as ee, onMounted as V, onBeforeUnmount as J, createElementBlock as I, normalizeClass as E, createElementVNode as c, renderSlot as f, unref as y, withDirectives as te, withCtx as m, createTextVNode as P, watch as F, normalizeProps as X, guardReactiveProps as W, createSlots as q, createCommentVNode as O, toDisplayString as R, nextTick as oe } from "vue";
2
- import j from "hls.js";
3
- import z from "flv.js";
4
- import { ElButton as U, ElTooltip as ne, ElSlider as se, ElLoading as ie, ElDialog as ae } from "element-plus";
1
+ import { defineComponent as G, openBlock as E, createElementBlock as I, createElementVNode as r, ref as g, reactive as N, watchEffect as _, onMounted as j, onBeforeUnmount as z, normalizeClass as U, renderSlot as m, createVNode as B, unref as v, withDirectives as $, withCtx as w, createTextVNode as k, watch as L, normalizeProps as V, guardReactiveProps as J, createSlots as X, createCommentVNode as T, toDisplayString as b, nextTick as ee, createBlock as te } from "vue";
2
+ import P from "hls.js";
3
+ import H from "flv.js";
4
+ import { ElButton as x, ElTooltip as oe, ElSlider as ne, ElLoading as se, ElDialog as ie } from "element-plus";
5
5
  class K {
6
- async init(o) {
6
+ async init(n) {
7
7
  }
8
8
  play() {
9
9
  }
@@ -12,12 +12,12 @@ class K {
12
12
  destroy() {
13
13
  }
14
14
  }
15
- class le extends K {
16
- constructor(o) {
17
- super(), this.video = o, this.hls = null;
15
+ class ae extends K {
16
+ constructor(n) {
17
+ super(), this.video = n, this.hls = null;
18
18
  }
19
- async init(o) {
20
- j.isSupported() ? (this.hls = new j(), this.hls.loadSource(o), this.hls.attachMedia(this.video)) : this.video.src = o;
19
+ async init(n) {
20
+ P.isSupported() ? (this.hls = new P(), this.hls.loadSource(n), this.hls.attachMedia(this.video)) : this.video.src = n;
21
21
  }
22
22
  play() {
23
23
  this.video.play();
@@ -29,12 +29,12 @@ class le extends K {
29
29
  this.hls && this.hls.destroy();
30
30
  }
31
31
  }
32
- class re extends K {
33
- constructor(o) {
34
- super(), this.video = o, this.player = null;
32
+ class le extends K {
33
+ constructor(n) {
34
+ super(), this.video = n, this.player = null;
35
35
  }
36
- async init(o) {
37
- z.isSupported() && (this.player = z.createPlayer({ type: "flv", url: o }), this.player.attachMediaElement(this.video), this.player.load());
36
+ async init(n) {
37
+ H.isSupported() && (this.player = H.createPlayer({ type: "flv", url: n }), this.player.attachMediaElement(this.video), this.player.load());
38
38
  }
39
39
  play() {
40
40
  this.video.play();
@@ -46,15 +46,15 @@ class re extends K {
46
46
  this.player && (this.player.unload(), this.player.detachMediaElement(), this.player.destroy(), this.player = null);
47
47
  }
48
48
  }
49
- class ce extends K {
50
- constructor(o, e, t = [{ urls: "stun:stun.l.google.com:19302" }]) {
51
- super(), this.video = o, this.pc = null, this.signaling = e || null, this.iceServers = t, this.bindings = {
49
+ class re extends K {
50
+ constructor(n, e, t = [{ urls: "stun:stun.l.google.com:19302" }]) {
51
+ super(), this.video = n, this.pc = null, this.signaling = e || null, this.iceServers = t, this.bindings = {
52
52
  onRemoteDescription: null,
53
53
  onIceCandidate: null,
54
54
  onTrack: null
55
55
  };
56
56
  }
57
- async init(o) {
57
+ async init(n) {
58
58
  if (this.pc = new RTCPeerConnection({
59
59
  // 你可以在这里配置 TURN/STUN 服务器
60
60
  iceServers: this.iceServers
@@ -70,8 +70,8 @@ class ce extends K {
70
70
  {
71
71
  const t = new RTCSessionDescription(e.description);
72
72
  if (await this.pc.setRemoteDescription(t), t.type === "offer") {
73
- const l = await this.pc.createAnswer();
74
- await this.pc.setLocalDescription(l), this.signaling.send({ type: "answer", description: this.pc.localDescription });
73
+ const c = await this.pc.createAnswer();
74
+ await this.pc.setLocalDescription(c), this.signaling.send({ type: "answer", description: this.pc.localDescription });
75
75
  }
76
76
  }
77
77
  break;
@@ -83,36 +83,36 @@ class ce extends K {
83
83
  }
84
84
  break;
85
85
  }
86
- }), o) {
86
+ }), n) {
87
87
  const e = await this.pc.createOffer({ offerToReceiveVideo: !0 });
88
88
  await this.pc.setLocalDescription(e);
89
89
  try {
90
- const l = await (await fetch(o, {
90
+ const c = await (await fetch(n, {
91
91
  method: "POST",
92
92
  headers: { "Content-Type": "application/sdp" },
93
93
  body: e.sdp
94
94
  })).text();
95
- await this.pc.setRemoteDescription({ type: "answer", sdp: l });
95
+ await this.pc.setRemoteDescription({ type: "answer", sdp: c });
96
96
  } catch (t) {
97
97
  console.error("WebRTC init remote description failed:", t);
98
98
  }
99
99
  }
100
100
  }
101
101
  // 通过显式的信令发送 remote description(若使用外部信令渠道)
102
- async setRemoteDescription(o) {
102
+ async setRemoteDescription(n) {
103
103
  if (!this.pc)
104
104
  throw new Error("RTCPeerConnection is not initialized");
105
- await this.pc.setRemoteDescription(o);
105
+ await this.pc.setRemoteDescription(n);
106
106
  }
107
107
  // 提供给外部调用,主动添加本地音视频轨(若需要)
108
- addTrack(o, e) {
108
+ addTrack(n, e) {
109
109
  if (!this.pc)
110
110
  throw new Error("RTCPeerConnection is not initialized");
111
111
  if (e)
112
- e.addTrack(o);
113
- else if (o) {
112
+ e.addTrack(n);
113
+ else if (n) {
114
114
  const t = this.video.srcObject || new MediaStream();
115
- t.addTrack(o), this.video.srcObject = t;
115
+ t.addTrack(n), this.video.srcObject = t;
116
116
  }
117
117
  }
118
118
  play() {
@@ -134,83 +134,73 @@ class ce extends K {
134
134
  this.signaling && typeof this.signaling.close == "function" && this.signaling.close(), this.video && (this.video.srcObject = null);
135
135
  }
136
136
  // 可选:绑定外部信令事件监听器
137
- bindSignalingHandlers({ onRemoteDescription: o, onIceCandidate: e, onTrack: t } = {}) {
138
- typeof o == "function" && (this.bindings.onRemoteDescription = o), typeof e == "function" && (this.bindings.onIceCandidate = e), typeof t == "function" && (this.bindings.onTrack = t);
137
+ bindSignalingHandlers({ onRemoteDescription: n, onIceCandidate: e, onTrack: t } = {}) {
138
+ typeof n == "function" && (this.bindings.onRemoteDescription = n), typeof e == "function" && (this.bindings.onIceCandidate = e), typeof t == "function" && (this.bindings.onTrack = t);
139
139
  }
140
140
  }
141
- function de(n) {
141
+ function ce(o) {
142
142
  return {
143
- info: (...o) => console.log(`[${n}]`, ...o),
144
- error: (...o) => console.error(`[${n}]`, ...o)
143
+ info: (...n) => console.log(`[${o}]`, ...n),
144
+ error: (...n) => console.error(`[${o}]`, ...n)
145
145
  };
146
146
  }
147
- const ue = "data:image/png;base64,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", pe = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAABCcAAAQnAEmzTo0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGCSURBVHgB7Vchd8IwEP7KQ63TxU+DLh6Pr5/Hr5pp9ivq8fPzoDfNsOts91172QJvtGmzDgTfe/eaprl8yeUudwXOhMA0iqII+ZhTxugHe0oWBMHum5ikER9Lygj94p2yIHk+1I7EIn2h5NqeUkJV2MANY53L1gl1LtmgWDUzxJEh5WoezQxqiQlly/4nOIA6CyXe2TrsT/mIdWEYHOl9oiU4YUJZUeYNQz/slyE8oA6Z6OstZe2qO4AHxEnwc47PLVT9dqzkKXc+MmGCaufexG+onCvWM8xPDeR3cRpxRnMP7OFBLGc2QxUO93CHLDCrG1B7xjRfGfBwj2Ho2NQy/a9oPGMlT/HH8PLqK/GV+CKJG8OJN9IdqgukFRiGm87Emltn6ADqHuT2YzSZ2unCP4Ha3F67Y654yZVP0B45dV/RlVjJ29zTzriYcLpBfzjwF2PqLaqEP+WZPqAm4XeEhGOs7bJAMAW9fFjhfwr6MlfbvzBStkjFGKEfiFXXWiCeD19pa3LqeLh36gAAAABJRU5ErkJggg==", Ae = {
148
- beforeMount(n, o) {
149
- n.__clickOutsideHandler__ = (e) => {
150
- !n.contains(e.target) && typeof o.value == "function" && o.value(e);
151
- }, document.addEventListener("mousedown", n.__clickOutsideHandler__);
147
+ const de = "data:image/png;base64,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", ue = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAABCcAAAQnAEmzTo0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGCSURBVHgB7Vchd8IwEP7KQ63TxU+DLh6Pr5/Hr5pp9ivq8fPzoDfNsOts91172QJvtGmzDgTfe/eaprl8yeUudwXOhMA0iqII+ZhTxugHe0oWBMHum5ikER9Lygj94p2yIHk+1I7EIn2h5NqeUkJV2MANY53L1gl1LtmgWDUzxJEh5WoezQxqiQlly/4nOIA6CyXe2TrsT/mIdWEYHOl9oiU4YUJZUeYNQz/slyE8oA6Z6OstZe2qO4AHxEnwc47PLVT9dqzkKXc+MmGCaufexG+onCvWM8xPDeR3cRpxRnMP7OFBLGc2QxUO93CHLDCrG1B7xjRfGfBwj2Ho2NQy/a9oPGMlT/HH8PLqK/GV+CKJG8OJN9IdqgukFRiGm87Emltn6ADqHuT2YzSZ2unCP4Ha3F67Y654yZVP0B45dV/RlVjJ29zTzriYcLpBfzjwF2PqLaqEP+WZPqAm4XeEhGOs7bJAMAW9fFjhfwr6MlfbvzBStkjFGKEfiFXXWiCeD19pa3LqeLh36gAAAABJRU5ErkJggg==", pe = {
148
+ beforeMount(o, n) {
149
+ o.__clickOutsideHandler__ = (e) => {
150
+ !o.contains(e.target) && typeof n.value == "function" && n.value(e);
151
+ }, document.addEventListener("mousedown", o.__clickOutsideHandler__);
152
152
  },
153
- unmounted(n) {
154
- document.removeEventListener("mousedown", n.__clickOutsideHandler__), n.__clickOutsideHandler__ = null;
153
+ unmounted(o) {
154
+ document.removeEventListener("mousedown", o.__clickOutsideHandler__), o.__clickOutsideHandler__ = null;
155
155
  }
156
156
  };
157
- var S = G({
158
- name: "Setting"
159
- });
160
- const ge = {
161
- xmlns: "http://www.w3.org/2000/svg",
162
- viewBox: "0 0 1024 1024"
163
- }, Ce = /* @__PURE__ */ v("path", {
164
- fill: "currentColor",
165
- d: "M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357.12 357.12 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a351.616 351.616 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357.12 357.12 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294.113 294.113 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293.12 293.12 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294.113 294.113 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288.282 288.282 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293.12 293.12 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a287.616 287.616 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384zm0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256z"
166
- }, null, -1);
167
- function he(n, o, e, t, l, a) {
168
- return Q(), M("svg", ge, [
169
- Ce
170
- ]);
171
- }
172
- S.render = he;
173
- S.__file = "packages/components/Setting.vue";
174
- const ye = S;
175
- var Y = G({
176
- name: "ZoomIn"
177
- });
178
- const ve = {
179
- xmlns: "http://www.w3.org/2000/svg",
180
- viewBox: "0 0 1024 1024"
181
- }, fe = /* @__PURE__ */ v("path", {
182
- fill: "currentColor",
183
- d: "m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zm-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64h96z"
184
- }, null, -1);
185
- function me(n, o, e, t, l, a) {
186
- return Q(), M("svg", ve, [
187
- fe
188
- ]);
189
- }
190
- Y.render = me;
191
- Y.__file = "packages/components/ZoomIn.vue";
192
- const we = Y;
193
- var k = G({
194
- name: "ZoomOut"
195
- });
196
- const Qe = {
197
- xmlns: "http://www.w3.org/2000/svg",
198
- viewBox: "0 0 1024 1024"
199
- }, Be = /* @__PURE__ */ v("path", {
200
- fill: "currentColor",
201
- d: "m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704zM352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64z"
202
- }, null, -1);
203
- function Ee(n, o, e, t, l, a) {
204
- return Q(), M("svg", Qe, [
205
- Be
206
- ]);
207
- }
208
- k.render = Ee;
209
- k.__file = "packages/components/ZoomOut.vue";
210
- const Ie = k;
211
- const Ue = { class: "trigger-btn" }, Fe = { class: "controller" }, Me = { class: "controller-content" }, De = { class: "header" }, Oe = { class: "operation" }, xe = ["src"], Le = { class: "cockpit-container" }, Te = { class: "cockpit-wrapper" }, Ge = ["src"], Ke = { class: "block" }, Se = { class: "block" }, Ye = {
157
+ /*! Element Plus Icons Vue v2.3.2 */
158
+ var Ae = /* @__PURE__ */ G({
159
+ name: "Setting",
160
+ __name: "setting",
161
+ setup(o) {
162
+ return (n, e) => (E(), I("svg", {
163
+ xmlns: "http://www.w3.org/2000/svg",
164
+ viewBox: "0 0 1024 1024"
165
+ }, [
166
+ r("path", {
167
+ fill: "currentColor",
168
+ d: "M600.704 64a32 32 0 0 1 30.464 22.208l35.2 109.376c14.784 7.232 28.928 15.36 42.432 24.512l112.384-24.192a32 32 0 0 1 34.432 15.36L944.32 364.8a32 32 0 0 1-4.032 37.504l-77.12 85.12a357 357 0 0 1 0 49.024l77.12 85.248a32 32 0 0 1 4.032 37.504l-88.704 153.6a32 32 0 0 1-34.432 15.296L708.8 803.904c-13.44 9.088-27.648 17.28-42.368 24.512l-35.264 109.376A32 32 0 0 1 600.704 960H423.296a32 32 0 0 1-30.464-22.208L357.696 828.48a352 352 0 0 1-42.56-24.64l-112.32 24.256a32 32 0 0 1-34.432-15.36L79.68 659.2a32 32 0 0 1 4.032-37.504l77.12-85.248a357 357 0 0 1 0-48.896l-77.12-85.248A32 32 0 0 1 79.68 364.8l88.704-153.6a32 32 0 0 1 34.432-15.296l112.32 24.256c13.568-9.152 27.776-17.408 42.56-24.64l35.2-109.312A32 32 0 0 1 423.232 64H600.64zm-23.424 64H446.72l-36.352 113.088-24.512 11.968a294 294 0 0 0-34.816 20.096l-22.656 15.36-116.224-25.088-65.28 113.152 79.68 88.192-1.92 27.136a293 293 0 0 0 0 40.192l1.92 27.136-79.808 88.192 65.344 113.152 116.224-25.024 22.656 15.296a294 294 0 0 0 34.816 20.096l24.512 11.968L446.72 896h130.688l36.48-113.152 24.448-11.904a288 288 0 0 0 34.752-20.096l22.592-15.296 116.288 25.024 65.28-113.152-79.744-88.192 1.92-27.136a293 293 0 0 0 0-40.256l-1.92-27.136 79.808-88.128-65.344-113.152-116.288 24.96-22.592-15.232a288 288 0 0 0-34.752-20.096l-24.448-11.904L577.344 128zM512 320a192 192 0 1 1 0 384 192 192 0 0 1 0-384m0 64a128 128 0 1 0 0 256 128 128 0 0 0 0-256"
169
+ })
170
+ ]));
171
+ }
172
+ }), ge = Ae, fe = /* @__PURE__ */ G({
173
+ name: "ZoomIn",
174
+ __name: "zoom-in",
175
+ setup(o) {
176
+ return (n, e) => (E(), I("svg", {
177
+ xmlns: "http://www.w3.org/2000/svg",
178
+ viewBox: "0 0 1024 1024"
179
+ }, [
180
+ r("path", {
181
+ fill: "currentColor",
182
+ d: "m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704m-32-384v-96a32 32 0 0 1 64 0v96h96a32 32 0 0 1 0 64h-96v96a32 32 0 0 1-64 0v-96h-96a32 32 0 0 1 0-64z"
183
+ })
184
+ ]));
185
+ }
186
+ }), ye = fe, Ce = /* @__PURE__ */ G({
187
+ name: "ZoomOut",
188
+ __name: "zoom-out",
189
+ setup(o) {
190
+ return (n, e) => (E(), I("svg", {
191
+ xmlns: "http://www.w3.org/2000/svg",
192
+ viewBox: "0 0 1024 1024"
193
+ }, [
194
+ r("path", {
195
+ fill: "currentColor",
196
+ d: "m795.904 750.72 124.992 124.928a32 32 0 0 1-45.248 45.248L750.656 795.904a416 416 0 1 1 45.248-45.248zM480 832a352 352 0 1 0 0-704 352 352 0 0 0 0 704M352 448h256a32 32 0 0 1 0 64H352a32 32 0 0 1 0-64"
197
+ })
198
+ ]));
199
+ }
200
+ }), ve = Ce;
201
+ const he = { class: "trigger-btn" }, me = { class: "controller" }, we = { class: "controller-content" }, Qe = { class: "header" }, Be = { class: "operation" }, Ee = ["src"], Ie = { class: "cockpit-container" }, Ue = { class: "cockpit-wrapper" }, Fe = ["src"], Me = { class: "block" }, De = { class: "block" }, xe = {
212
202
  name: "StreamPlayerControls"
213
- }, L = /* @__PURE__ */ Object.assign(Ye, {
203
+ }, M = /* @__PURE__ */ Object.assign(xe, {
214
204
  props: {
215
205
  playControlStart: {
216
206
  type: Function,
@@ -233,171 +223,171 @@ const Ue = { class: "trigger-btn" }, Fe = { class: "controller" }, Me = { class:
233
223
  }
234
224
  }
235
225
  },
236
- setup(n) {
237
- const o = Ae, e = n, t = A(5), l = $({
226
+ setup(o) {
227
+ const n = pe, e = o, t = g(5), c = N({
238
228
  1: "慢",
239
229
  7: "快"
240
- }), a = A(""), B = A(!1), u = A(!0);
241
- ee(() => {
242
- }), V(() => {
243
- }), J(() => {
244
- a.value && e.playControlStop({
245
- command: a.value,
230
+ }), l = g(""), Q = g(!1), p = g(!0);
231
+ _(() => {
232
+ }), j(() => {
233
+ }), z(() => {
234
+ l.value && e.playControlStop({
235
+ command: l.value,
246
236
  speed: t.value
247
237
  });
248
238
  });
249
- function d(g) {
250
- a.value = g, e.playControlStart({
251
- command: g,
239
+ function d(f) {
240
+ l.value = f, e.playControlStart({
241
+ command: f,
252
242
  speed: t.value
253
243
  });
254
244
  }
255
- function p() {
245
+ function A() {
256
246
  e.playControlStop({
257
- command: a.value,
247
+ command: l.value,
258
248
  speed: t.value
259
249
  });
260
250
  }
261
- function w(g) {
262
- B.value = g === 2, e.setPerspective({
263
- type: g
251
+ function h(f) {
252
+ Q.value = f === 2, e.setPerspective({
253
+ type: f
264
254
  });
265
255
  }
266
256
  function i() {
267
257
  e.savePerspective();
268
258
  }
269
- return (g, s) => (Q(), I("div", {
270
- class: E(["player-controls", { "is-collapsed": u.value }])
259
+ return (f, s) => (E(), I("div", {
260
+ class: U(["player-controls", { "is-collapsed": p.value }])
271
261
  }, [
272
- c("div", {
262
+ r("div", {
273
263
  class: "controller-trigger",
274
- onClick: s[0] || (s[0] = (C) => {
275
- u.value = !u.value;
264
+ onClick: s[0] || (s[0] = (y) => {
265
+ p.value = !p.value;
276
266
  })
277
267
  }, [
278
- f(g.$slots, "controller-trigger", {}, () => [
279
- c("div", Ue, [
280
- v(y(ye))
268
+ m(f.$slots, "controller-trigger", {}, () => [
269
+ r("div", he, [
270
+ B(v(ge))
281
271
  ])
282
272
  ])
283
273
  ]),
284
- te((Q(), I("div", Fe, [
285
- f(g.$slots, "controller-panel", {}, () => [
286
- c("div", Me, [
287
- c("div", De, [
288
- c("div", Oe, [
289
- v(y(U), {
274
+ $((E(), I("div", me, [
275
+ m(f.$slots, "controller-panel", {}, () => [
276
+ r("div", we, [
277
+ r("div", Qe, [
278
+ r("div", Be, [
279
+ B(v(x), {
290
280
  type: "primary",
291
281
  size: "small",
292
- onClick: s[1] || (s[1] = (C) => w(1))
282
+ onClick: s[1] || (s[1] = (y) => h(1))
293
283
  }, {
294
- default: m(() => [...s[10] || (s[10] = [
295
- P("当前画面", -1)
284
+ default: w(() => [...s[10] || (s[10] = [
285
+ k("当前画面", -1)
296
286
  ])]),
297
287
  _: 1
298
288
  }),
299
- v(y(U), {
289
+ B(v(x), {
300
290
  type: "primary",
301
291
  size: "small",
302
- onClick: s[2] || (s[2] = (C) => w(2))
292
+ onClick: s[2] || (s[2] = (y) => h(2))
303
293
  }, {
304
- default: m(() => [...s[11] || (s[11] = [
305
- P("布防画面", -1)
294
+ default: w(() => [...s[11] || (s[11] = [
295
+ k("布防画面", -1)
306
296
  ])]),
307
297
  _: 1
308
298
  })
309
299
  ]),
310
- v(y(ne), {
300
+ B(v(oe), {
311
301
  content: "存为默认画面",
312
302
  placement: "top"
313
303
  }, {
314
- default: m(() => [
315
- c("img", {
304
+ default: w(() => [
305
+ r("img", {
316
306
  class: "save-icon cursor-pointer",
317
- src: y(pe),
307
+ src: v(ue),
318
308
  onClick: i
319
- }, null, 8, xe)
309
+ }, null, 8, Ee)
320
310
  ]),
321
311
  _: 1
322
312
  })
323
313
  ]),
324
- c("div", Le, [
325
- c("div", Te, [
326
- c("img", {
314
+ r("div", Ie, [
315
+ r("div", Ue, [
316
+ r("img", {
327
317
  class: "cockpit-bg",
328
- src: y(ue)
329
- }, null, 8, Ge),
330
- c("div", {
331
- class: E(["up cockpit-btn", { "is-active": a.value === "TILT_UP" }]),
332
- onMousedown: s[3] || (s[3] = (C) => d("TILT_UP")),
333
- onMouseup: p
318
+ src: v(de)
319
+ }, null, 8, Fe),
320
+ r("div", {
321
+ class: U(["up cockpit-btn", { "is-active": l.value === "TILT_UP" }]),
322
+ onMousedown: s[3] || (s[3] = (y) => d("TILT_UP")),
323
+ onMouseup: A
334
324
  }, null, 34),
335
- c("div", {
336
- class: E(["down cockpit-btn", { "is-active": a.value === "TILT_DOWN" }]),
337
- onMousedown: s[4] || (s[4] = (C) => d("TILT_DOWN")),
338
- onMouseup: p
325
+ r("div", {
326
+ class: U(["down cockpit-btn", { "is-active": l.value === "TILT_DOWN" }]),
327
+ onMousedown: s[4] || (s[4] = (y) => d("TILT_DOWN")),
328
+ onMouseup: A
339
329
  }, null, 34),
340
- c("div", {
341
- class: E(["left cockpit-btn", { "is-active": a.value === "PAN_LEFT" }]),
342
- onMousedown: s[5] || (s[5] = (C) => d("PAN_LEFT")),
343
- onMouseup: p
330
+ r("div", {
331
+ class: U(["left cockpit-btn", { "is-active": l.value === "PAN_LEFT" }]),
332
+ onMousedown: s[5] || (s[5] = (y) => d("PAN_LEFT")),
333
+ onMouseup: A
344
334
  }, null, 34),
345
- c("div", {
346
- class: E(["right cockpit-btn", { "is-active": a.value === "PAN_RIGHT" }]),
347
- onMousedown: s[6] || (s[6] = (C) => d("PAN_RIGHT")),
348
- onMouseup: p
335
+ r("div", {
336
+ class: U(["right cockpit-btn", { "is-active": l.value === "PAN_RIGHT" }]),
337
+ onMousedown: s[6] || (s[6] = (y) => d("PAN_RIGHT")),
338
+ onMouseup: A
349
339
  }, null, 34)
350
340
  ])
351
341
  ]),
352
- c("div", Ke, [
353
- s[12] || (s[12] = c("div", { class: "description" }, "云台转速", -1)),
354
- v(y(se), {
342
+ r("div", Me, [
343
+ s[12] || (s[12] = r("div", { class: "description" }, "云台转速", -1)),
344
+ B(v(ne), {
355
345
  modelValue: t.value,
356
- "onUpdate:modelValue": s[7] || (s[7] = (C) => t.value = C),
346
+ "onUpdate:modelValue": s[7] || (s[7] = (y) => t.value = y),
357
347
  min: 1,
358
348
  max: 7,
359
349
  "show-stops": "",
360
- marks: l,
350
+ marks: c,
361
351
  style: { "margin-top": "-8px", "margin-bottom": "18px" }
362
352
  }, null, 8, ["modelValue", "marks"])
363
353
  ]),
364
- c("div", Se, [
365
- s[13] || (s[13] = c("div", { class: "description" }, "画面缩放", -1)),
366
- v(y(U), {
367
- icon: y(we),
354
+ r("div", De, [
355
+ s[13] || (s[13] = r("div", { class: "description" }, "画面缩放", -1)),
356
+ B(v(x), {
357
+ icon: v(ye),
368
358
  circle: "",
369
- onMousedown: s[8] || (s[8] = (C) => d("ZOOM_IN")),
370
- onMouseup: p
359
+ onMousedown: s[8] || (s[8] = (y) => d("ZOOM_IN")),
360
+ onMouseup: A
371
361
  }, null, 8, ["icon"]),
372
- v(y(U), {
373
- icon: y(Ie),
362
+ B(v(x), {
363
+ icon: v(ve),
374
364
  circle: "",
375
- onMousedown: s[9] || (s[9] = (C) => d("ZOOM_OUT")),
376
- onMouseup: p
365
+ onMousedown: s[9] || (s[9] = (y) => d("ZOOM_OUT")),
366
+ onMouseup: A
377
367
  }, null, 8, ["icon"])
378
368
  ])
379
369
  ])
380
370
  ])
381
371
  ])), [
382
- [y(o), () => u.value = !0]
372
+ [v(n), () => p.value = !0]
383
373
  ])
384
374
  ], 2));
385
375
  }
386
376
  });
387
- const ke = (n, o) => {
388
- const e = n.__vccOpts || n;
389
- for (const [t, l] of o)
390
- e[t] = l;
377
+ const Le = (o, n) => {
378
+ const e = o.__vccOpts || o;
379
+ for (const [t, c] of n)
380
+ e[t] = c;
391
381
  return e;
392
- }, be = ["autoplay"], He = { class: "video-overlay" }, Pe = {
382
+ }, Oe = ["autoplay"], Te = { class: "video-overlay" }, Ge = {
393
383
  key: 1,
394
384
  class: "status-overlay"
395
- }, Re = {
385
+ }, Ke = {
396
386
  key: 2,
397
387
  class: "status-overlay error"
398
- }, je = {
388
+ }, Se = {
399
389
  name: "StreamPlayer"
400
- }, ze = /* @__PURE__ */ Object.assign(je, {
390
+ }, Ye = /* @__PURE__ */ Object.assign(Se, {
401
391
  props: {
402
392
  src: { type: String, required: !0 },
403
393
  protocol: { type: String, default: "hls" },
@@ -431,96 +421,96 @@ const ke = (n, o) => {
431
421
  "destroy"
432
422
  // 销毁
433
423
  ],
434
- setup(n, { expose: o, emit: e }) {
435
- const t = n, l = e, a = A(null), B = A(null), u = A(null), d = A(!1), p = A(!1), w = A(!1), i = A(0), g = de("VideoPlayer");
436
- function s(r, h) {
437
- switch (r) {
424
+ setup(o, { expose: n, emit: e }) {
425
+ const t = o, c = e, l = g(null), Q = g(null), p = g(null), d = g(!1), A = g(!1), h = g(!1), i = g(0), f = ce("VideoPlayer");
426
+ function s(a, C) {
427
+ switch (a) {
438
428
  case "flv":
439
- return new re(h);
429
+ return new le(C);
440
430
  case "webrtc":
441
- return new ce(h);
431
+ return new re(C);
442
432
  case "hls":
443
433
  default:
444
- return new le(h);
434
+ return new ae(C);
445
435
  }
446
436
  }
447
- async function C() {
448
- if (!(!a.value || !t.src)) {
449
- H(), p.value = !0, w.value = !1;
437
+ async function y() {
438
+ if (!(!l.value || !t.src)) {
439
+ Y(), A.value = !0, h.value = !1;
450
440
  try {
451
- u.value = s(t.protocol, a.value), t.beforeInit && await t.beforeInit(), await u.value.init(t.src), l("init", { protocol: t.protocol });
452
- const r = a.value;
453
- r && (r.addEventListener("loadeddata", () => l("loaded")), r.addEventListener("playing", () => l("play")), r.addEventListener("pause", () => l("pause")), r.addEventListener("error", (h) => b(h))), t.autoplay && (await u.value.play(), d.value = !0), p.value = !1, i.value = 0;
454
- } catch (r) {
455
- b(r);
441
+ p.value = s(t.protocol, l.value), t.beforeInit && await t.beforeInit(), await p.value.init(t.src), c("init", { protocol: t.protocol });
442
+ const a = l.value;
443
+ a && (a.addEventListener("loadeddata", () => c("loaded")), a.addEventListener("playing", () => c("play")), a.addEventListener("pause", () => c("pause")), a.addEventListener("error", (C) => S(C))), t.autoplay && (await p.value.play(), d.value = !0), A.value = !1, i.value = 0;
444
+ } catch (a) {
445
+ S(a);
456
446
  }
457
447
  }
458
448
  }
459
- function b(r) {
460
- g.error("Playback error:", r), l("error", r), w.value = !0, p.value = !1, t.reconnect && i.value < t.maxRetries ? (i.value++, setTimeout(async () => {
461
- l("reconnect", { attempt: i.value }), await oe(), await C();
462
- }, t.retryDelay)) : g.warn("Max retry reached or reconnect disabled");
449
+ function S(a) {
450
+ f.error("Playback error:", a), c("error", a), h.value = !0, A.value = !1, t.reconnect && i.value < t.maxRetries ? (i.value++, setTimeout(async () => {
451
+ c("reconnect", { attempt: i.value }), await ee(), await y();
452
+ }, t.retryDelay)) : f.warn("Max retry reached or reconnect disabled");
463
453
  }
464
- function Z() {
465
- u.value && (d.value ? (u.value.pause(), l("pause")) : (u.value.play(), l("play")), d.value = !d.value);
454
+ function W() {
455
+ p.value && (d.value ? (p.value.pause(), c("pause")) : (p.value.play(), c("play")), d.value = !d.value);
466
456
  }
467
- function N() {
468
- const r = a.value;
469
- if (!r)
457
+ function q() {
458
+ const a = l.value;
459
+ if (!a)
470
460
  return;
471
- const h = document.createElement("canvas");
472
- h.width = r.videoWidth, h.height = r.videoHeight, h.getContext("2d").drawImage(r, 0, 0, h.width, h.height);
473
- const _ = h.toDataURL("image/png"), D = document.createElement("a");
474
- D.href = _, D.download = "snapshot.png", D.click();
461
+ const C = document.createElement("canvas");
462
+ C.width = a.videoWidth, C.height = a.videoHeight, C.getContext("2d").drawImage(a, 0, 0, C.width, C.height);
463
+ const Z = C.toDataURL("image/png"), O = document.createElement("a");
464
+ O.href = Z, O.download = "snapshot.png", O.click();
475
465
  }
476
- function H() {
477
- u.value && (u.value.destroy(), l("destroy"), u.value = null, d.value = !1);
466
+ function Y() {
467
+ p.value && (p.value.destroy(), c("destroy"), p.value = null, d.value = !1);
478
468
  }
479
- return F(() => t.src, C), V(C), J(H), o({
480
- togglePlay: Z,
481
- screenshot: N
482
- }), (r, h) => (Q(), I("div", {
469
+ return L(() => t.src, y), j(y), z(Y), n({
470
+ togglePlay: W,
471
+ screenshot: q
472
+ }), (a, C) => (E(), I("div", {
483
473
  class: "video-player",
484
474
  ref_key: "container",
485
- ref: B
475
+ ref: Q
486
476
  }, [
487
- c("video", {
477
+ r("video", {
488
478
  ref_key: "videoRef",
489
- ref: a,
490
- class: E([n.fitMode, "video-element"]),
491
- autoplay: n.autoplay,
479
+ ref: l,
480
+ class: U([o.fitMode, "video-element"]),
481
+ autoplay: o.autoplay,
492
482
  playsinline: "",
493
483
  controls: ""
494
- }, null, 10, be),
495
- c("div", He, [
496
- f(r.$slots, "overlay", {}, void 0, !0)
484
+ }, null, 10, Oe),
485
+ r("div", Te, [
486
+ m(a.$slots, "overlay", {}, void 0, !0)
497
487
  ]),
498
- n.showControls ? f(r.$slots, "controller", { key: 0 }, () => [
499
- v(L, X(W(r.$attrs)), q({ _: 2 }, [
500
- r.$slots["controller-trigger"] ? {
488
+ o.showControls ? m(a.$slots, "controller", { key: 0 }, () => [
489
+ B(M, V(J(a.$attrs)), X({ _: 2 }, [
490
+ a.$slots["controller-trigger"] ? {
501
491
  name: "controller-trigger",
502
- fn: m(() => [
503
- f(r.$slots, "controller-trigger", {}, void 0, !0)
492
+ fn: w(() => [
493
+ m(a.$slots, "controller-trigger", {}, void 0, !0)
504
494
  ]),
505
495
  key: "0"
506
496
  } : void 0,
507
- r.$slots["controller-panel"] ? {
497
+ a.$slots["controller-panel"] ? {
508
498
  name: "controller-panel",
509
- fn: m(() => [
510
- f(r.$slots, "controller-panel", {}, void 0, !0)
499
+ fn: w(() => [
500
+ m(a.$slots, "controller-panel", {}, void 0, !0)
511
501
  ]),
512
502
  key: "1"
513
503
  } : void 0
514
504
  ]), 1040)
515
- ], !0) : O("", !0),
516
- p.value ? (Q(), I("div", Pe, "加载中...")) : O("", !0),
517
- w.value ? (Q(), I("div", Re, "连接错误,正在重试(" + R(i.value) + "/" + R(n.maxRetries) + ")...", 1)) : O("", !0)
505
+ ], !0) : T("", !0),
506
+ A.value ? (E(), I("div", Ge, "加载中...")) : T("", !0),
507
+ h.value ? (E(), I("div", Ke, "连接错误,正在重试(" + b(i.value) + "/" + b(o.maxRetries) + ")...", 1)) : T("", !0)
518
508
  ], 512));
519
509
  }
520
- }), T = /* @__PURE__ */ ke(ze, [["__scopeId", "data-v-3ced781c"]]);
521
- const Ve = { class: "dialog-content-wrapper" }, Je = { class: "stream-player-wrapper" }, Xe = {
510
+ }), D = /* @__PURE__ */ Le(Ye, [["__scopeId", "data-v-3ced781c"]]);
511
+ const ke = { class: "dialog-content-wrapper" }, be = { class: "stream-player-wrapper" }, Pe = {
522
512
  name: "StreamPlayerDialog"
523
- }, x = /* @__PURE__ */ Object.assign(Xe, {
513
+ }, F = /* @__PURE__ */ Object.assign(Pe, {
524
514
  props: {
525
515
  value: Boolean,
526
516
  title: {
@@ -536,103 +526,135 @@ const Ve = { class: "dialog-content-wrapper" }, Je = { class: "stream-player-wra
536
526
  beforeClose: Function
537
527
  },
538
528
  emits: ["update:value"],
539
- setup(n, { expose: o, emit: e }) {
540
- const t = n, l = e, a = A(t.value), B = A(!1), u = A(!1), d = A();
541
- F(
529
+ setup(o, { expose: n, emit: e }) {
530
+ const t = o, c = e, l = g(t.value), Q = g(!1), p = g(!1), d = g();
531
+ L(
542
532
  () => t.value,
543
533
  (i) => {
544
- a.value = i;
534
+ l.value = i;
545
535
  }
546
- ), F(a, (i) => {
547
- l("update:value", i);
548
- }), F(u, (i) => {
549
- i ? d.value = ie.service({
536
+ ), L(l, (i) => {
537
+ c("update:value", i);
538
+ }), L(p, (i) => {
539
+ i ? d.value = se.service({
550
540
  target: ".stream-player-wrapper"
551
541
  }) : d.value && d.value.close();
552
542
  });
553
- function p() {
554
- a.value = !0, B.value = !0, typeof t.onOpen == "function" && t.onOpen();
543
+ function A() {
544
+ l.value = !0, Q.value = !0, typeof t.onOpen == "function" && t.onOpen();
555
545
  }
556
- function w(i) {
557
- a.value = !1, typeof t.beforeClose == "function" && t.beforeClose(), B.value && l("update:value", !1), typeof i == "function" && i();
546
+ function h(i) {
547
+ l.value = !1, typeof t.beforeClose == "function" && t.beforeClose(), Q.value && c("update:value", !1), typeof i == "function" && i();
558
548
  }
559
- return o({
560
- open: p,
561
- close: w
562
- }), (i, g) => (Q(), M(y(ae), {
563
- visible: a.value,
564
- "onUpdate:visible": g[0] || (g[0] = (s) => a.value = s),
565
- "before-close": w,
549
+ return n({
550
+ open: A,
551
+ close: h
552
+ }), (i, f) => (E(), te(v(ie), {
553
+ visible: l.value,
554
+ "onUpdate:visible": f[0] || (f[0] = (s) => l.value = s),
555
+ "before-close": h,
566
556
  "append-to-body": !0,
567
- class: E([n.dialogClass, "stream-player-dialog"]),
557
+ class: U([o.dialogClass, "stream-player-dialog"]),
568
558
  top: "3vh",
569
559
  width: "90vw",
570
560
  modal: "",
571
561
  "destroy-on-close": "",
572
- onOpen: n.onOpen,
573
- onClose: n.onClose
562
+ onOpen: o.onOpen,
563
+ onClose: o.onClose
574
564
  }, {
575
- default: m(() => [
576
- c("div", Ve, [
577
- c("div", Je, [
578
- v(T, X(W(i.$attrs)), q({ _: 2 }, [
565
+ default: w(() => [
566
+ r("div", ke, [
567
+ r("div", be, [
568
+ B(D, V(J(i.$attrs)), X({ _: 2 }, [
579
569
  i.$slots.overlay ? {
580
570
  name: "overlay",
581
- fn: m(() => [
582
- f(i.$slots, "overlay")
571
+ fn: w(() => [
572
+ m(i.$slots, "overlay")
583
573
  ]),
584
574
  key: "0"
585
575
  } : void 0,
586
576
  i.$slots.controller ? {
587
577
  name: "controller",
588
- fn: m(() => [
589
- f(i.$slots, "controller")
578
+ fn: w(() => [
579
+ m(i.$slots, "controller")
590
580
  ]),
591
581
  key: "1"
592
582
  } : void 0,
593
583
  i.$slots["controller-trigger"] ? {
594
584
  name: "controller-trigger",
595
- fn: m(() => [
596
- f(i.$slots, "controller-trigger")
585
+ fn: w(() => [
586
+ m(i.$slots, "controller-trigger")
597
587
  ]),
598
588
  key: "2"
599
589
  } : void 0,
600
590
  i.$slots["controller-panel"] ? {
601
591
  name: "controller-panel",
602
- fn: m(() => [
603
- f(i.$slots, "controller-panel")
592
+ fn: w(() => [
593
+ m(i.$slots, "controller-panel")
604
594
  ]),
605
595
  key: "3"
606
596
  } : void 0
607
597
  ]), 1040)
608
598
  ]),
609
- f(i.$slots, "dialog-content")
599
+ m(i.$slots, "dialog-content")
610
600
  ])
611
601
  ]),
612
602
  _: 3
613
603
  }, 8, ["visible", "class", "onOpen", "onClose"]));
614
604
  }
615
- }), $e = {
616
- install(n) {
617
- n.component(T.name, T), n.component(L.name, L);
618
- const o = n.extend(x), e = new o();
619
- document.body.appendChild(e.$mount().$el), n.component(x.name, x), n.prototype.$streamPlayer = {
620
- open({ title: t, dialogClass: l, onOpen: a, onClose: B, beforeClose: u, ...d }) {
621
- e.title = t, e.value = !0, e.dialogClass = l, e.onOpen = a, e.onClose = B, e.beforeClose = u;
622
- for (let p in d)
623
- e[p] = d[p];
624
- return e.open(), e;
625
- },
626
- close() {
627
- e.close();
628
- }
629
- };
605
+ });
606
+ let u = null;
607
+ const Je = {
608
+ install(o) {
609
+ const n = typeof o.version == "string" && o.version.startsWith("3"), e = o.prototype !== void 0;
610
+ n ? (o.component(D.name, D), o.component(M.name, M), o.component(F.name, F), o.config.globalProperties.$streamPlayer = R(o, !0)) : e && (o.component(D.name, D), o.component(M.name, M), o.component(F.name, F), o.prototype.$streamPlayer = R(o, !1));
630
611
  }
631
612
  };
613
+ function R(o, n) {
614
+ return {
615
+ open({ title: e, dialogClass: t, onOpen: c, onClose: l, beforeClose: Q, ...p }) {
616
+ if (n) {
617
+ if (!u) {
618
+ const { createApp: A } = require("vue"), h = document.createElement("div");
619
+ document.body.appendChild(h), u = A({
620
+ template: '<StreamPlayerDialog ref="dialog" />',
621
+ components: { StreamPlayerDialog: F }
622
+ }).mount(h);
623
+ }
624
+ const d = u.$refs.dialog;
625
+ d && (Object.assign(d, {
626
+ title: e,
627
+ value: !0,
628
+ dialogClass: t,
629
+ onOpen: c,
630
+ onClose: l,
631
+ beforeClose: Q,
632
+ ...p
633
+ }), typeof d.open == "function" && d.open());
634
+ } else {
635
+ if (!u) {
636
+ const A = o.extend(F);
637
+ u = new A(), document.body.appendChild(u.$mount().$el);
638
+ }
639
+ u.title = e, u.value = !0, u.dialogClass = t, u.onOpen = c, u.onClose = l, u.beforeClose = Q, Object.assign(u, p), typeof u.open == "function" && u.open();
640
+ }
641
+ return u;
642
+ },
643
+ close() {
644
+ var e;
645
+ if (u)
646
+ if (n) {
647
+ const t = (e = u.$refs) == null ? void 0 : e.dialog;
648
+ t && typeof t.close == "function" && t.close();
649
+ } else
650
+ typeof u.close == "function" && u.close();
651
+ }
652
+ };
653
+ }
632
654
  export {
633
- T as StreamPlayer,
634
- L as StreamPlayerControls,
635
- x as StreamPlayerDialog,
636
- $e as default
655
+ D as StreamPlayer,
656
+ M as StreamPlayerControls,
657
+ F as StreamPlayerDialog,
658
+ Je as default
637
659
  };
638
660
  //# sourceMappingURL=stream-player.js.map