This commit is contained in:
Harvey Zack committed 2024-08-31 11:47:28 +08:00
commit c7299b926e
62 files changed
+10765 -705

No files matched your search

+2 -1
View File
@@ -8,7 +8,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
- 新增 `option.proxy` 选项,用于代理第三方的 `video` 和 `canvas`
- 新增 `artplayer-proxy-webav` 代理,来自 [bilibili/WebAV](https://github.com/bilibili/WebAV)
- 新增 `artplayer-proxy-libmedia` 代理,来自 [zhaohappy/libmedia](https://github.com/zhaohappy/libmedia)
- 新增 `option.thumbnails.scale`, 用于预览图缩放
- 修复更改 `art.url` 不能触发 `autoPlayBack` 的 `bug`: [#797](https://github.com/zhw2590582/ArtPlayer/issues/797)
## [5.1.7] - 2024-8-15
-1
View File
@@ -118,7 +118,6 @@ var art = new Artplayer({
## Proxys
- [WebAV](https://artplayer.org/?libs=./uncompiled/artplayer-proxy-webav/index.js&example=webav) (WIP)
- [libmedia](https://artplayer.org/?libs=./uncompiled/artplayer-proxy-libmedia/index.js&example=libmedia) (WIP)
## Changelog
+1
View File
@@ -127,6 +127,7 @@ var art = new Artplayer({
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
scale: 0.85,
},
subtitle: {
url: '/assets/sample/subtitle.srt',
-11
View File
@@ -1,11 +0,0 @@
// From: https://github.com/zhaohappy/libmedia
// npm i artplayer-proxy-libmedia
// import artplayerProxyLibmedia from 'artplayer-proxy-libmedia';
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
proxy: artplayerProxyLibmedia({
//
}),
});
+1
View File
@@ -27,6 +27,7 @@ var art = new Artplayer({
url: '/assets/sample/thumbnails.png',
number: 60,
column: 10,
scale: 0.6
},
subtitle: {
name: '中日双语',
+13 -3
View File
@@ -1,5 +1,12 @@
// Depends on:
// https://glomex.github.io/vast-ima-player/
// https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side
// Google's IMA SDK are blocked by your Ad blocker.
// Please Turn Off Your Ad Blocker.
// npm i artplayer-plugin-vast
// import ArtplayerPluginVast from 'artplayer-plugin-vast';
// import artplayerPluginVast from 'artplayer-plugin-vast';
var art = new Artplayer({
container: '.artplayer-app',
@@ -7,8 +14,11 @@ var art = new Artplayer({
fullscreen: true,
fullscreenWeb: true,
plugins: [
ArtplayerPluginVast({
url: '/assets/sample/vast.xml',
artplayerPluginVast(({ playUrl, imaPlayer, ima }) => {
// Play the ad when the video is played
art.once('play', () => {
playUrl('https://artplayer.org/assets/vast/linear-ad.xml');
});
}),
],
});
+21 -1
View File
@@ -4,7 +4,27 @@
var art = new Artplayer({
container: '.artplayer-app',
url: '/assets/sample/video.mp4',
url: '/assets/sample/bbb-video.mp4',
volume: 0.5,
autoplay: false,
autoSize: false,
screenshot: true,
setting: true,
loop: true,
flip: true,
playbackRate: true,
aspectRatio: true,
fullscreen: true,
fullscreenWeb: true,
miniProgressBar: true,
autoPlayback: true,
thumbnails: {
url: '/assets/sample/bbb-sprite.jpg',
number: 121,
column: 11,
width: 128,
height: 72,
},
proxy: artplayerProxyWebAV({
//
}),
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:01]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video-1s.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:02]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video-2s.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+25
View File
@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<Linear>
<Duration><![CDATA[00:00:04]]></Duration>
<VideoClicks>
<ClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" bitrate="400" width="0" height="0" type="video/mp4">
<![CDATA[https://artplayer.org/assets/vast/linear-video.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

+31
View File
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<InLine>
<AdSystem><![CDATA[TEST-AD-SYSTEM]]]></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<Impression><![CDATA[https://impression-pixel]]></Impression>
<Creatives>
<Creative>
<NonLinearAds>
<NonLinear width="728" height="90" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-728x90.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
<NonLinear width="480" height="70" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-480x70.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
<NonLinear width="320" height="50" minSuggestedDuration="00:00:05" scalable="true" maintainAspectRatio="true">
<StaticResource creativeType="image/png"><![CDATA[https://artplayer.org/assets/vast/nonlinear-320x50.png]]></StaticResource>
<NonLinearClickTracking><![CDATA[https://clickTracking]]></NonLinearClickTracking>
<NonLinearClickThrough><![CDATA[https://artplayer.org/assets/vast/]]></NonLinearClickThrough>
</NonLinear>
</NonLinearAds>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
+39
View File
@@ -0,0 +1,39 @@
<?xml version="1.0" encoding="UTF-8"?>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper fallbackOnNoAd="true">
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="0"/>
</Extensions>
</Wrapper>
</Ad>
<Ad>
<Wrapper fallbackOnNoAd="true">
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[does-not-exist]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="1"/>
</Extensions>
</Wrapper>
</Ad>
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
<Extensions>
<Extension type="waterfall" fallback_index="2"/>
</Extensions>
</Wrapper>
</Ad>
</VAST>
+80
View File
@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="UTF-8"?>
<VMAP xmlns:vmap="http://www.iab.net/vmap-1.0" version="1.0">
<vmap:AdBreak timeOffset="start" breakType="linear" breakId="start-0">
<vmap:AdSource id="start-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad sequence="1">
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
<Ad sequence="2">
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="00:00:05.000" breakType="linear" breakId="midroll-0">
<vmap:AdSource id="midroll-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/nonlinear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="00:00:15.000" breakType="linear" breakId="midroll-1">
<vmap:AdSource id="midroll-1" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
<vmap:AdBreak timeOffset="end" breakType="linear" breakId="postroll-0">
<vmap:AdSource id="postroll-0" allowMultipleAds="true" followRedirects="false">
<vmap:VASTAdData>
<VAST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="vast.xsd" version="3.0">
<Ad>
<Wrapper>
<AdSystem></AdSystem>
<Error><![CDATA[https://error-pixel?[ERRORCODE]]]></Error>
<VASTAdTagURI>
<![CDATA[https://artplayer.org/assets/vast/linear-ad.xml]]>
</VASTAdTagURI>
</Wrapper>
</Ad>
</VAST>
</vmap:VASTAdData>
</vmap:AdSource>
</vmap:AdBreak>
</VMAP>
+8
View File
@@ -0,0 +1,8 @@
/*!
* artplayer-proxy-webav.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(t,e,r,s,n){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},o="function"==typeof a[s]&&a[s],h=o.cache||{},l="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function u(e,r){if(!h[e]){if(!t[e]){var n="function"==typeof a[s]&&a[s];if(!r&&n)return n(e,!0);if(o)return o(e,!0);if(l&&"string"==typeof e)return l(e);var d=Error("Cannot find module '"+e+"'");throw d.code="MODULE_NOT_FOUND",d}p.resolve=function(r){var s=t[e][1][r];return null!=s?s:r},p.cache={};var f=h[e]=new u.Module(e);t[e][0].call(f.exports,p,f,f.exports,this)}return h[e].exports;function p(t){var e=p.resolve(t);return!1===e?{}:u(e)}}u.isParcelRequire=!0,u.Module=function(t){this.id=t,this.bundle=u,this.exports={}},u.modules=t,u.cache=h,u.parent=o,u.register=function(e,r){t[e]=[function(t,e){e.exports=r},{}]},Object.defineProperty(u,"root",{get:function(){return a[s]}}),a[s]=u;for(var d=0;d<e.length;d++)u(e[d]);if(r){var f=u(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=f:"function"==typeof define&&define.amd&&define(function(){return f})}}({jc2x7:[function(t,e,r){var s=t("@parcel/transformer-js/src/esmodule-helpers.js");s.defineInteropFlag(r),s.export(r,"default",()=>a);var n=t("@webav/av-cliper");function a(){return t=>{let e,r;let{option:s,constructor:a}=t,{createElement:o,def:h}=a.utils,l=o("canvas"),u=l.getContext("2d"),d=null,f=null,p=null,c=null,m=0,g={playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:s.muted,volume:s.volume,autoplay:s.autoplay};function y(){p&&(clearInterval(p),p=null),f&&(f.stop(),f=null)}function _(){if(r){let t=g.muted?0:g.volume;r.gain.setValueAtTime(t,e.currentTime)}}async function b(){e||(r=(e=new AudioContext).createGain()).connect(e.destination);let s=1e6*g.currentTime,n=0,a=!0,o=performance.now();async function h(){if(!g.playing)return;let h=performance.now(),l=h-o;o=h,null!==c?(s=1e6*c,c=null,a=!0):s+=1e3*l*g.playbackRate,g.currentTime=s/1e6;let{state:p,video:m,audio:_}=await d.tick(Math.round(s));if(t.emit("video:timeupdate",{type:"timeupdate"}),"done"===p){y(),g.ended=!0,g.playing=!1,g.paused=!0,t.emit("video:ended",{type:"ended"});return}if(m&&"success"===p&&(u.clearRect(0,0,g.videoWidth,g.videoHeight),u.drawImage(m,0,0,g.videoWidth,g.videoHeight),m.close()),a)a=!1;else if(_?.[0]?.length){let t=e.createBuffer(2,_[0].length,48e3);t.copyToChannel(_[0],0),t.copyToChannel(_[1],1),(f=e.createBufferSource()).buffer=t,f.connect(r),f.playbackRate.setValueAtTime(g.playbackRate,e.currentTime),n=Math.max(e.currentTime,n),f.start(n),n+=t.duration/g.playbackRate}}y(),_(),g.playing=!0,g.paused=!1,p=setInterval(h,1e3/60)}async function w(t){let{video:e}=await d.tick(1e6*t);e&&(u.clearRect(0,0,l.width,l.height),u.drawImage(e,0,0,l.width,l.height),e.close())}function v(){let e=t.template?.$player;if(!e||s.autoSize)return;let r=l.videoWidth/l.videoHeight,n=e.clientWidth,a=e.clientHeight,o=0,h=0;n/a>r?o=(n-a*r)/2:h=(a-n/r)/2,Object.assign(l.style,{padding:`${h}px ${o}px`})}async function S(){if(!await (0,n.Combinator).isSupported())throw t.notice.show="WebAV is not supported",Error("WebAV is not supported");y(),Object.assign(g,{playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:s.muted,volume:s.volume,autoplay:s.autoplay}),d&&(d.destroy(),t.emit("video:abort",{type:"abort"}),t.emit("video:emptied",{type:"emptied"}));try{await Promise.resolve(),t.emit("video:loadstart",{type:"loadstart"});let e=await fetch(s.url);if(!e.body)throw Error("No response body");d=new n.MP4Clip(e.body)}catch(e){throw t.emit("video:error",e),e}let e=await d.ready;Object.assign(g,{readyState:4,duration:Math.round(e.duration/1e6),videoWidth:e.width,videoHeight:e.height}),l.width=g.videoWidth,l.height=g.videoHeight,await w(.1),v(),t.emit("video:loadedmetadata",{type:"loadedmetadata"}),t.emit("video:durationchange",{type:"durationchange"}),t.emit("video:loadeddata",{type:"loadeddata"}),t.emit("video:canplay",{type:"canplay"}),t.emit("video:canplaythrough",{type:"canplaythrough"})}return h(l,"textTracks",{get:()=>[]}),h(l,"duration",{get:()=>g.duration}),h(l,"videoWidth",{get:()=>g.videoWidth}),h(l,"videoHeight",{get:()=>g.videoHeight}),h(l,"volume",{get:()=>g.volume,set:e=>{g.volume=Math.max(0,Math.min(1,e)),_(),t.emit("video:volumechange",{type:"volumechange"})}}),h(l,"currentTime",{get:()=>g.currentTime,set:e=>{let r=Math.max(0,Math.min(e,g.duration)),s=performance.now();s-m>16&&(m=s,c=r,g.currentTime=r,g.playing||w(r),t.emit("video:timeupdate",{type:"timeupdate"}))}}),h(l,"autoplay",{get:()=>g.autoplay,set:t=>{g.autoplay=t,t&&g.readyState>=4&&l.play()}}),h(l,"src",{get:()=>s.url,set:t=>{s.url=t,S().then(()=>{s.autoplay&&l.play()})}}),h(l,"playbackRate",{get:()=>g.playbackRate,set:r=>{g.playbackRate=Math.max(.25,Math.min(2,r)),f&&fLine truncated
@@ -0,0 +1,8 @@
/*!
* artplayer-proxy-webav.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(t,e,r,n,s){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},o="function"==typeof a[n]&&a[n],u=o.cache||{},l="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function c(e,r){if(!u[e]){if(!t[e]){var s="function"==typeof a[n]&&a[n];if(!r&&s)return s(e,!0);if(o)return o(e,!0);if(l&&"string"==typeof e)return l(e);var h=Error("Cannot find module '"+e+"'");throw h.code="MODULE_NOT_FOUND",h}d.resolve=function(r){var n=t[e][1][r];return null!=n?n:r},d.cache={};var f=u[e]=new c.Module(e);t[e][0].call(f.exports,d,f,f.exports,this)}return u[e].exports;function d(t){var e=d.resolve(t);return!1===e?{}:c(e)}}c.isParcelRequire=!0,c.Module=function(t){this.id=t,this.bundle=c,this.exports={}},c.modules=t,c.cache=u,c.parent=o,c.register=function(e,r){t[e]=[function(t,e){e.exports=r},{}]},Object.defineProperty(c,"root",{get:function(){return a[n]}}),a[n]=c;for(var h=0;h<e.length;h++)c(e[h]);if(r){var f=c(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=f:"function"==typeof define&&define.amd&&define(function(){return f})}}({c4SNP:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r),n.export(r,"default",function(){return u});var s=t("@swc/helpers/_/_async_to_generator"),a=t("@swc/helpers/_/_ts_generator"),o=t("@webav/av-cliper");function u(){return function(t){var e,r,n=t.option,u=t.constructor.utils,l=u.createElement,c=u.def,h=l("canvas"),f=h.getContext("2d"),d=null,p=null,m=null,_=null,y=0,g={playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:n.muted,volume:n.volume,autoplay:n.autoplay};function v(){m&&(clearInterval(m),m=null),p&&(p.stop(),p=null)}function b(){if(r){var t=g.muted?0:g.volume;r.gain.setValueAtTime(t,e.currentTime)}}function w(){return(w=(0,s._)(function(){var n,o,u,l;function c(){return h.apply(this,arguments)}function h(){return(h=(0,s._)(function(){var s,c,h,m,y,b,w,S;return(0,a._)(this,function(a){switch(a.label){case 0:if(!g.playing)return[2];return h=(c=performance.now())-l,l=c,null!==_?(n=1e6*_,_=null,u=!0):n+=1e3*h*g.playbackRate,g.currentTime=n/1e6,[4,d.tick(Math.round(n))];case 1:if(y=(m=a.sent()).state,b=m.video,w=m.audio,t.emit("video:timeupdate",{type:"timeupdate"}),"done"===y)return v(),g.ended=!0,g.playing=!1,g.paused=!0,t.emit("video:ended",{type:"ended"}),[2];return b&&"success"===y&&(f.clearRect(0,0,g.videoWidth,g.videoHeight),f.drawImage(b,0,0,g.videoWidth,g.videoHeight),b.close()),u?u=!1:(null==w?void 0:null===(s=w[0])||void 0===s?void 0:s.length)&&((S=e.createBuffer(2,w[0].length,48e3)).copyToChannel(w[0],0),S.copyToChannel(w[1],1),(p=e.createBufferSource()).buffer=S,p.connect(r),p.playbackRate.setValueAtTime(g.playbackRate,e.currentTime),o=Math.max(e.currentTime,o),p.start(o),o+=S.duration/g.playbackRate),[2]}})})).apply(this,arguments)}return(0,a._)(this,function(t){return e||(r=(e=new AudioContext).createGain()).connect(e.destination),n=1e6*g.currentTime,o=0,u=!0,l=performance.now(),v(),b(),g.playing=!0,g.paused=!1,m=setInterval(c,1e3/60),[2]})})).apply(this,arguments)}function S(t){return x.apply(this,arguments)}function x(){return(x=(0,s._)(function(t){var e;return(0,a._)(this,function(r){switch(r.label){case 0:return[4,d.tick(1e6*t)];case 1:return(e=r.sent().video)&&(f.clearRect(0,0,h.width,h.height),f.drawImage(e,0,0,h.width,h.height),e.close()),[2]}})})).apply(this,arguments)}function E(){var e,r=null===(e=t.template)||void 0===e?void 0:e.$player;if(r&&!n.autoSize){var s=h.videoWidth/h.videoHeight,a=r.clientWidth,o=r.clientHeight,u=0,l=0;a/o>s?u=(a-o*s)/2:l=(o-a/s)/2,Object.assign(h.style,{padding:"".concat(l,"px ").concat(u,"px")})}}function U(){return(U=(0,s._)(function(){var e,r,s;return(0,a._)(this,function(a){switch(a.label){case 0:return[4,(0,o.Combinator).isSupported()];case 1:if(!a.sent())throw t.notice.show="WebAV is not supported",Error("WebAV is not supported");v(),Object.assign(g,{playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:n.muted,volume:n.volume,autoplay:n.autoplay}),d&&(d.destroy(),t.emit("video:abort",{type:"abort"}),t.emit("video:emptied",{type:"emptied"})),a.label=2;case 2:return a.trys.push([2,5,,6]),[4,Promise.resolve()];case 3:return a.sent(),t.emit("video:loadstart",{type:"loadstart"}),[4,fetch(n.url)];case 4:if(!(e=a.sent()).body)throw Error("No response body");return d=new o.MP4Clip(e.body),[3,6];case 5:throw r=a.sent(),t.emit("video:error",r),r;case 6:return[4,d.ready];case 7:return Object.assign(g,{readyState:4,duration:Math.round((s=a.sent()).duration/1e6),videoWidth:s.width,videoHeight:s.height}),h.width=g.videoWidth,h.height=g.videoHeight,[4,S(.1)];case 8:return a.sent(),E(),t.emit("video:loadedmetadata",{type:"loadedmetadata"}),t.emit("video:durationchange",{type:"durationchange"})Line truncated
+1 -5
View File
@@ -102,10 +102,6 @@
<a
href="/?libs=./uncompiled/artplayer-proxy-webav/index.js&example=webav">artplayer-proxy-webav</a>
</li>
<li>
<a
href="/?libs=./uncompiled/artplayer-proxy-libmedia/index.js&example=libmedia">artplayer-proxy-libmedia</a>
</li>
</ul>
<ul>
<li class="title">Tools</li>
@@ -119,7 +115,7 @@
<a class="item" href="./document/">Document</a>
<a class="item" href="https://github.com/zhw2590582/ArtPlayer">Github</a>
<a class="item" href="./sponsor.html">☕ 捐助/Sponsor</a>
<span class="item" href="#">Q群: 320881312(可接定制)</span>
<span class="item" href="#">Q群: 320881312</span>
</div>
<div class="tool">
<div class="checkbox">
@@ -213,9 +213,12 @@ class Danmuku {
// 初始化配置
this.config(option);
// 创建 Web Worker, 用于计算弹幕的 top 值
this.worker = new Worker(URL.createObjectURL(new Blob([
const blob = new Blob([
(0, _workerDefault.default)
])));
], {
type: "application/javascript"
});
this.worker = new Worker(URL.createObjectURL(blob));
// 绑定公用事件
this.start = this.start.bind(this);
this.stop = this.stop.bind(this);
@@ -1561,7 +1564,7 @@ if (typeof document !== "undefined") {
}
}
},{"bundle-text:./style.less":"uaCsY","bundle-text:./img/on.svg":"a9r0e","bundle-text:./img/off.svg":"luia6","bundle-text:./img/config.svg":"lo6sV","bundle-text:./img/style.svg":"1Aemm","@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6","bundle-text:./img/mode_0_off.svg":"jKvDJ","bundle-text:./img/mode_0_on.svg":"7eesQ","bundle-text:./img/mode_1_off.svg":"DalV6","bundle-text:./img/mode_1_on.svg":"i0F2W","bundle-text:./img/mode_2_off.svg":"1phDW","bundle-text:./img/mode_2_on.svg":"iHUBM","bundle-text:./img/check_on.svg":"fQ6fo","bundle-text:./img/check_off.svg":"dz3tU"}],"uaCsY":[function(require,module,exports) {
},{"bundle-text:./style.less":"uaCsY","bundle-text:./img/on.svg":"a9r0e","bundle-text:./img/off.svg":"luia6","bundle-text:./img/config.svg":"lo6sV","bundle-text:./img/style.svg":"1Aemm","bundle-text:./img/mode_0_off.svg":"jKvDJ","bundle-text:./img/mode_0_on.svg":"7eesQ","bundle-text:./img/mode_1_off.svg":"DalV6","bundle-text:./img/mode_1_on.svg":"i0F2W","bundle-text:./img/mode_2_off.svg":"1phDW","bundle-text:./img/mode_2_on.svg":"iHUBM","bundle-text:./img/check_on.svg":"fQ6fo","bundle-text:./img/check_off.svg":"dz3tU","@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"uaCsY":[function(require,module,exports) {
module.exports = ".artplayer-plugin-danmuku {\n z-index: 99;\n color: #fff;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n gap: 10px;\n width: 100%;\n height: 32px;\n font-size: 12px;\n font-weight: 300;\n display: flex;\n position: relative;\n}\n\n.artplayer-plugin-danmuku .apd-icon {\n cursor: pointer;\n opacity: .75;\n fill: #fff;\n transition: all .2s;\n}\n\n.artplayer-plugin-danmuku .apd-icon:hover {\n opacity: 1;\n}\n\n.artplayer-plugin-danmuku .apd-config {\n display: flex;\n position: relative;\n}\n\n.artplayer-plugin-danmuku .apd-config .apd-config-panel {\n opacity: 0;\n pointer-events: none;\n width: 320px;\n padding: 10px;\n position: absolute;\n bottom: 24px;\n left: 0;\n}\n\n.artplayer-plugin-danmuku .apd-config .apd-config-panel .apd-config-panel-inner {\n background-color: #000000d9;\n border-radius: 3px;\n width: 100%;\n padding: 10px;\n}\n\n.artplayer-plugin-danmuku .apd-config:hover .apd-config-panel {\n opacity: 100;\n pointer-events: all;\n}\n\n.artplayer-plugin-danmuku .apd-config-mode, .artplayer-plugin-danmuku .apd-config-slider, .artplayer-plugin-danmuku .apd-config-other, .artplayer-plugin-danmuku .apd-style-mode {\n margin-bottom: 15px;\n}\n\n.artplayer-plugin-danmuku .apd-modes {\n align-items: center;\n gap: 20px;\n margin-top: 5px;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-modes .apd-mode {\n cursor: pointer;\n text-align: center;\n}\n\n.artplayer-plugin-danmuku .apd-modes .apd-mode:hover {\n color: #00a1d6;\n}\n\n.artplayer-plugin-danmuku .apd-config-slider {\n align-items: center;\n gap: 12px;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-config-slider .apd-value {\n text-align: right;\n width: 32px;\n}\n\n.artplayer-plugin-danmuku .apd-slider {\n cursor: pointer;\n flex: 1;\n justify-content: center;\n align-items: center;\n height: 20px;\n display: flex;\n position: relative;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-line {\n background-color: #ffffff40;\n border-radius: 3px;\n width: 100%;\n height: 2px;\n position: relative;\n overflow: hidden;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-points {\n justify-content: space-between;\n align-items: center;\n display: flex;\n position: absolute;\n inset: 0;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-points .apd-slider-point {\n background-color: #ffffff80;\n border-radius: 50%;\n width: 2px;\n height: 2px;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-progress {\n background-color: #00a1d6;\n width: 0%;\n height: 100%;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-dot {\n background-color: #00a1d6;\n border-radius: 50%;\n width: 12px;\n height: 12px;\n position: absolute;\n left: 0%;\n transform: translateX(-6px);\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-steps {\n color: #777;\n justify-content: space-between;\n align-items: center;\n width: calc(100% + 32px);\n display: flex;\n position: absolute;\n bottom: -12px;\n}\n\n.artplayer-plugin-danmuku .apd-slider .apd-slider-steps .apd-slider-step {\n text-align: center;\n flex-shrink: 0;\n width: 36px;\n scale: .95;\n}\n\n.artplayer-plugin-danmuku .apd-config-other {\n align-items: center;\n gap: 20px;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-config-other .apd-check-off, .artplayer-plugin-danmuku .apd-config-other .apd-check-on {\n width: 16px;\n height: 16px;\n}\n\n.artplayer-plugin-danmuku .apd-config-other .apd-other {\n cursor: pointer;\n align-items: center;\n gap: 2px;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-config-other .apd-other:hover {\n color: #00a1d6;\n}\n\n.artplayer-plugin-danmuku .apd-emitter {\n background-color: #ffffff40;\n border-radius: 5px;\n flex: 1;\n align-items: center;\n height: 100%;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-style {\n justify-content: center;\n align-items: center;\n display: flex;\n position: relative;\n}\n\n.artplayer-plugin-danmuku .apd-style .apd-style-panel {\n opacity: 0;\n pointer-events: none;\n width: 200px;\n padding: 10px;\n position: absolute;\n bottom: 24px;\n left: 0;\n}\n\n.artplayer-plugin-danmuku .apd-style .apd-style-panel .apd-style-panel-inner {\n background-color: #000000d9;\n border-radius: 3px;\n width: 100%;\n padding: 10px;\n}\n\n.artplayer-plugin-danmuku .apd-style:hover .apd-style-panel {\n opacity: 100;\n pointer-events: all;\n}\n\n.artplayer-plugin-danmuku .apd-colors {\n flex-wrap: wrap;\n gap: 8px;\n margin-top: 5px;\n display: flex;\n}\n\n.artplayer-plugin-danmuku .apd-colors .apd-color {\n cursor: pointer;\n border-radius: 2px;\n width: 16px;\n height: 16px;\n}\n\n.artplayer-plugin-danmuku .apd-colors .apd-color.apd-active {\n border: 1px solid #000;\n box-shadow: 0 0 0 1px #fff;\n}\n\n.artplayer-plugin-danmuku .apd-input {\n color: #fff;\n background-color: #0000;\n border: none;\n outline: none;\n flex: 1;\n width:Line truncated
},{}],"a9r0e":[function(require,module,exports) {
@@ -1 +1 @@
{"mappings":"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 truncated
{"mappings":"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 truncated
+690 -18
View File
@@ -146,32 +146,704 @@
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "default", ()=>artplayerPluginVast);
var _styleLess = require("bundle-text:./style.less");
var _styleLessDefault = parcelHelpers.interopDefault(_styleLess);
function artplayerPluginVast(option) {
return (art)=>{
var _vastImaPlayer = require("@glomex/vast-ima-player");
function artplayerPluginVast(callback) {
return async (art)=>{
const { template, constructor } = art;
const { createElement, setStyles, append } = constructor.utils;
const { $video, $player } = template;
await (0, _vastImaPlayer.loadImaSdk)();
const google = window.google;
const ima = google.ima;
const adsRenderingSettings = new ima.AdsRenderingSettings();
const playerOptions = new (0, _vastImaPlayer.PlayerOptions)();
const id = `art-${Date.now()}`;
const $container = createElement("div");
append($player, $container);
$container.id = id;
setStyles($container, {
position: "absolute",
inset: "0",
width: "100%",
height: "100%",
zIndex: "150",
display: "none"
});
const imaPlayer = new (0, _vastImaPlayer.Player)(ima, $video, $container, adsRenderingSettings, playerOptions);
function playUrl(url) {
const playAdsRequest = new ima.AdsRequest();
playAdsRequest.adTagUrl = url;
imaPlayer.playAds(playAdsRequest);
}
function playRes(res) {
const playAdsRequest = new ima.AdsRequest();
playAdsRequest.adsResponse = res;
imaPlayer.playAds(playAdsRequest);
}
if (typeof callback === "function") await callback({
art,
id,
ima,
imaPlayer,
$container,
playUrl,
playRes
});
return {
name: "artplayerPluginVast"
};
};
}
if (typeof document !== "undefined") {
const id = "artplayer-plugin-vast";
const $style = document.getElementById(id);
if ($style) $style.textContent = (0, _styleLessDefault.default);
else {
const $style = document.createElement("style");
$style.id = id;
$style.textContent = (0, _styleLessDefault.default);
document.head.appendChild($style);
if (typeof window !== "undefined") window["artplayerPluginVast"] = artplayerPluginVast;
},{"@glomex/vast-ima-player":"9NIGZ","@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"9NIGZ":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "Player", ()=>nt);
parcelHelpers.export(exports, "PlayerError", ()=>T);
parcelHelpers.export(exports, "PlayerEvent", ()=>R);
parcelHelpers.export(exports, "PlayerOptions", ()=>E);
parcelHelpers.export(exports, "loadImaSdk", ()=>e);
var t = null, i = function() {
t = null;
}, e = function() {
var e = window;
return e.google && e.google.ima ? Promise.resolve(e.google.ima) : t || ((t = new Promise(function(t, i) {
var e = document.createElement("script");
e.async = !0, e.src = "https://imasdk.googleapis.com/js/sdkloader/ima3.js", e.onload = t, e.onerror = i, document.body.appendChild(e);
}).then(function() {
return e.google.ima;
})).then(i).catch(i), t);
};
function n(t, i) {
for(var e = 0; e < i.length; e++){
var n = i[e];
n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(t, n.key, n);
}
}
if (typeof window !== "undefined") window["ArtplayerPluginVast"] = artplayerPluginVast;
function s(t, i, e) {
return i && n(t.prototype, i), e && n(t, e), t;
}
function h() {
return h = Object.assign || function(t) {
for(var i = 1; i < arguments.length; i++){
var e = arguments[i];
for(var n in e)Object.prototype.hasOwnProperty.call(e, n) && (t[n] = e[n]);
}
return t;
}, h.apply(this, arguments);
}
function r(t, i) {
t.prototype = Object.create(i.prototype), t.prototype.constructor = t, a(t, i);
}
function o(t) {
return o = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) {
return t.__proto__ || Object.getPrototypeOf(t);
}, o(t);
}
function a(t, i) {
return a = Object.setPrototypeOf || function(t, i) {
return t.__proto__ = i, t;
}, a(t, i);
}
function u() {
if ("undefined" == typeof Reflect || !Reflect.construct) return !1;
if (Reflect.construct.sham) return !1;
if ("function" == typeof Proxy) return !0;
try {
return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {})), !0;
} catch (t) {
return !1;
}
}
function c(t, i, e) {
return c = u() ? Reflect.construct : function(t, i, e) {
var n = [
null
];
n.push.apply(n, i);
var s = new (Function.bind.apply(t, n));
return e && a(s, e.prototype), s;
}, c.apply(null, arguments);
}
function d(t) {
var i = "function" == typeof Map ? new Map : void 0;
return d = function(t) {
if (null === t || -1 === Function.toString.call(t).indexOf("[native code]")) return t;
if ("function" != typeof t) throw new TypeError("Super expression must either be null or a function");
if (void 0 !== i) {
if (i.has(t)) return i.get(t);
i.set(t, e);
}
function e() {
return c(t, arguments, o(this).constructor);
}
return e.prototype = Object.create(t.prototype, {
constructor: {
value: e,
enumerable: !1,
writable: !0,
configurable: !0
}
}), a(e, t);
}, d(t);
}
function l(t) {
if (void 0 === t) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
return t;
}
function f(t, i) {
(null == i || i > t.length) && (i = t.length);
for(var e = 0, n = new Array(i); e < i; e++)n[e] = t[e];
return n;
}
var v = 0;
function b(t) {
return "__private_" + v++ + "_" + t;
}
function w(t, i) {
if (!Object.prototype.hasOwnProperty.call(t, i)) throw new TypeError("attempted to use private field on non-instance");
return t;
}
var m = {};
m.CustomEvent = "function" == typeof CustomEvent ? CustomEvent : function(t) {
return i[t] = new i("").constructor[t], i;
function i(t, i) {
i || (i = {});
var e = document.createEvent("CustomEvent");
return e.initCustomEvent(t, !!i.bubbles, !!i.cancelable, i.detail), e;
}
}("prototype");
var p, y, O = m.CustomEvent, j = b("mediaElement"), g = b("currentTime"), A = b("enabled"), k = function() {
function t(t) {
Object.defineProperty(this, j, {
writable: !0,
value: void 0
}), Object.defineProperty(this, g, {
writable: !0,
value: void 0
}), Object.defineProperty(this, A, {
writable: !0,
value: void 0
}), this.seeking = void 0, w(this, j)[j] = t, w(this, g)[g] = 0, w(this, A)[A] = !1, this.seeking = !1, this.t = this.t.bind(this), this.i = this.i.bind(this), this.h = this.h.bind(this), this.enable();
}
var i = t.prototype;
return i.i = function() {
this.seeking = !0;
}, i.h = function() {
this.seeking = !1;
}, i.t = function() {
var t, i;
this.seeking || null != (t = w(this, j)[j]) && t.paused || (w(this, g)[g] = null == (i = w(this, j)[j]) ? void 0 : i.currentTime);
}, i.enable = function() {
var t, i, e;
w(this, A)[A] || (null == (t = w(this, j)[j]) || t.addEventListener("seeking", this.i), null == (i = w(this, j)[j]) || i.addEventListener("seeked", this.h), null == (e = w(this, j)[j]) || e.addEventListener("timeupdate", this.t), w(this, A)[A] = !0);
}, i.disable = function() {
var t, i, e;
w(this, A)[A] && (null == (t = w(this, j)[j]) || t.removeEventListener("seeking", this.i), null == (i = w(this, j)[j]) || i.removeEventListener("seeked", this.h), null == (e = w(this, j)[j]) || e.removeEventListener("timeupdate", this.t), w(this, A)[A] = !1);
}, i.play = function() {
var t = this;
return new Promise(function(i) {
var e;
i(null == (e = w(t, j)[j]) ? void 0 : e.play());
});
}, i.pause = function() {
var t;
null == (t = w(this, j)[j]) || t.pause();
}, i.reset = function() {
w(this, g)[g] = 0, w(this, A)[A] = !1, this.seeking = !1, this.enable();
}, i.destroy = function() {
w(this, g)[g] = 0, w(this, A)[A] = !1, this.seeking = !1, this.disable(), w(this, j)[j] = void 0;
}, s(t, [
{
key: "enabled",
get: function() {
return w(this, A)[A];
}
},
{
key: "currentTime",
get: function() {
return w(this, g)[g];
}
},
{
key: "duration",
get: function() {
var t;
return null == (t = w(this, j)[j]) ? void 0 : t.duration;
}
},
{
key: "muted",
get: function() {
var t;
return null == (t = w(this, j)[j]) ? void 0 : t.muted;
}
},
{
key: "volume",
get: function() {
var t;
return null == (t = w(this, j)[j]) ? void 0 : t.volume;
}
}
]), t;
}(), C = function() {
function t() {
this.delegate = document.createDocumentFragment();
}
var i = t.prototype;
return i.addEventListener = function() {
this.delegate.addEventListener.apply(this.delegate, [].slice.call(arguments));
}, i.dispatchEvent = function() {
return this.delegate.dispatchEvent.apply(this.delegate, [].slice.call(arguments));
}, i.removeEventListener = function() {
return this.delegate.removeEventListener.apply(this.delegate, [].slice.call(arguments));
}, t;
}(), P = [
"abort",
"canplay",
"canplaythrough",
"durationchange",
"emptied",
"ended",
"error",
"loadeddata",
"loadedmetadata",
"loadstart",
"pause",
"play",
"playing",
"progress",
"ratechange",
"seeked",
"seeking",
"stalled",
"suspend",
"timeupdate",
"volumechange",
"waiting"
];
!function(t) {
t.MEDIA_START = "MediaStart", t.MEDIA_IMPRESSION = "MediaImpression", t.MEDIA_STOP = "MediaStop", t.MEDIA_CUE_POINTS_CHANGE = "MediaCuePointsChange", t.MEDIA_RESUMED = "MediaResumed";
}(p || (p = {})), function(t) {
t.AD_ERROR = "AdError", t.AD_BUFFERING = "AdBuffering", t.LOADED = "AdLoaded", t.IMPRESSION = "AdImpression", t.STARTED = "AdStarted", t.FIRST_QUARTILE = "AdFirstQuartile", t.MIDPOINT = "AdMidpoint", t.THIRD_QUARTILE = "AdThirdQuartile", t.AD_PROGRESS = "AdProgress", t.COMPLETE = "AdComplete", t.CLICK = "AdClick", t.PAUSED = "AdPaused", t.RESUMED = "AdResumed", t.SKIPPED = "AdSkipped", t.SKIPPABLE_STATE_CHANGED = "AdSkippableStateChanged", t.VOLUME_CHANGED = "AdVolumeChanged", t.VOLUME_MUTED = "AdMuted", t.AD_METADATA = "AdMetadata", t.AD_BREAK_READY = "AdBreakReady", t.CONTENT_PAUSE_REQUESTED = "AdContentPauseRequested", t.CONTENT_RESUME_REQUESTED = "AdContentResumeRequested", t.ALL_ADS_COMPLETED = "AdAllAdsCompleted", t.DURATION_CHANGE = "AdDurationChange", t.INTERACTION = "AdInteraction", t.LINEAR_CHANGED = "AdLinearChanged", t.LOG = "AdLog", t.USER_CLOSE = "AdUserClose", t.AD_CAN_PLAY = "AdCanPlay", t.EXPANDED_CHANGED = "AdExpandedChanged", t.VIEWABLE_IMPRESSION = "AdViewableImpression";
}(y || (y = {}));
var R = h({}, y, p), E = function() {
this.disableCustomPlaybackForIOS10Plus = !1, this.autoResize = !0, this.clickTrackingElement = void 0;
}, T = function(t) {
function i() {
var i;
return (i = t.call.apply(t, [
this
].concat([].slice.call(arguments))) || this).errorCode = void 0, i.innerError = void 0, i.type = void 0, i.vastErrorCode = void 0, i;
}
return r(i, t), i;
}(d(Error));
T.ERROR_CODE_ADS_MANAGER_LOADED_TIMEOUT = 9e3, T.ERROR_CODE_REQUEST_ADS_TIMEOUT = 9001;
var S = b("mediaElement"), M = b("adElement"), x = b("customPlayhead"), I = b("adsRenderingSettings"), B = b("ima"), L = b("adDisplayContainer"), D = b("adsManager"), W = b("width"), _ = b("height"), q = b("adsLoader"), F = b("playerOptions"), N = b("resizeObserver"), V = b("currentAd"), G = b("loadedAd"), Q = b("mediaStartTriggered"), U = b("mediaImpressionTriggered"), z = b("mediaInActivation"), Z = b("customPlaybackTimeAdjustedOnEnded"), $ = b("cuePoints"), H = b("adCurrentTime"), J = b("adDuration"), K = b("startAdCallback"), X = b("adsManagerLoadedTimeout"), Y = b("requestAdsTimeout"), tt = b("wasExternallyPaused"), it = b("lastNonZeroAdVolume"), et = b("activatePromise"), nt = function(t) {
function i(i, e, n, s, h) {
var r;
void 0 === s && (s = new i.AdsRenderingSettings), void 0 === h && (h = new E), r = t.call(this) || this, Object.defineProperty(l(r), S, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), M, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), x, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), I, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), B, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), L, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), D, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), W, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), _, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), q, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), F, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), N, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), V, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), G, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), Q, {
writable: !0,
value: !1
}), Object.defineProperty(l(r), U, {
writable: !0,
value: !1
}), Object.defineProperty(l(r), z, {
writable: !0,
value: !1
}), Object.defineProperty(l(r), Z, {
writable: !0,
value: !1
}), Object.defineProperty(l(r), $, {
writable: !0,
value: []
}), Object.defineProperty(l(r), H, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), J, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), K, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), X, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), Y, {
writable: !0,
value: void 0
}), Object.defineProperty(l(r), tt, {
writable: !0,
value: !1
}), Object.defineProperty(l(r), it, {
writable: !0,
value: 1
}), Object.defineProperty(l(r), et, {
writable: !0,
value: Promise.resolve()
}), w(l(r), S)[S] = e, w(l(r), M)[M] = n, w(l(r), B)[B] = i, w(l(r), F)[F] = h, w(l(r), I)[I] = s, w(l(r), I)[I].restoreCustomPlaybackStateOnAdBreakComplete = !0, h.disableCustomPlaybackForIOS10Plus && !w(l(r), S)[S].hasAttribute("playsinline") && w(l(r), S)[S].setAttribute("playsinline", ""), w(l(r), B)[B].settings.setDisableCustomPlaybackForIOS10Plus(h.disableCustomPlaybackForIOS10Plus), w(l(r), x)[x] = new k(w(l(r), S)[S]), r.o = r.o.bind(l(r)), P.forEach(function(t) {
w(l(r), S)[S].addEventListener(t, r.o);
}), r.u = r.u.bind(l(r)), r.l = r.l.bind(l(r));
var o = w(l(r), S)[S], a = o.offsetHeight, u = o.offsetWidth;
return w(l(r), W)[W] = u, w(l(r), _)[_] = a, h.autoResize && window.ResizeObserver && (w(l(r), N)[N] = new window.ResizeObserver(function(t) {
return r.v(t);
}), w(l(r), N)[N].observe(w(l(r), S)[S])), r;
}
r(i, t);
var e = i.prototype;
return e.activate = function() {
var t = this;
if (!w(this, Q)[Q] && !w(this, z)[z] && (w(this, z)[z] = !0, w(this, S)[S].paused)) {
var i = function() {
return w(t, S)[S].pause(), new Promise(function(i) {
setTimeout(function() {
w(t, z)[z] = !1, i();
}, 1);
});
};
w(this, et)[et] = new Promise(function(i) {
return i(w(t, S)[S].play());
}).then(i).catch(i);
}
}, e.playAds = function(t) {
this.m(t);
}, e.loadAds = function(t, i) {
this.m(t, !1, i);
}, e.p = function() {
var t = this;
return w(this, et)[et].then(function() {
return new Promise(function(i) {
return i(w(t, S)[S].play());
});
});
}, e.m = function(t, i, e) {
var n = this;
void 0 === i && (i = !0), this.reset(), this.O(), w(this, B)[B].settings.setAutoPlayAdBreaks(i), w(this, S)[S].ended && (w(this, x)[x].reset(), w(this, S)[S].currentTime = 0), w(this, K)[K] = e, t.linearAdSlotWidth = w(this, W)[W], t.linearAdSlotHeight = w(this, _)[_], t.nonLinearAdSlotWidth = w(this, W)[W], t.nonLinearAdSlotHeight = w(this, _)[_], null == t.contentDuration && (t.contentDuration = -3), w(this, X)[X] = window.setTimeout(function() {
var t = new T("No adsManagerLoadedEvent within 5000ms.");
t.errorCode = T.ERROR_CODE_ADS_MANAGER_LOADED_TIMEOUT, n.j(t);
}, 5e3), w(this, Y)[Y] = window.setTimeout(function() {
var t = new T("No response for ads-request within 10000ms.");
t.errorCode = T.ERROR_CODE_REQUEST_ADS_TIMEOUT, n.j(t);
}, 1e4), w(this, q)[q].requestAds(t);
}, e.O = function() {
w(this, L)[L] = new (w(this, B))[B].AdDisplayContainer(w(this, M)[M], w(this, F)[F].disableCustomPlaybackForIOS10Plus ? void 0 : w(this, S)[S], w(this, F)[F].clickTrackingElement), w(this, q)[q] = new (w(this, B))[B].AdsLoader(w(this, L)[L]), w(this, q)[q].addEventListener(w(this, B)[B].AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, this.u, !1), w(this, q)[q].addEventListener(w(this, B)[B].AdErrorEvent.Type.AD_ERROR, this.l, !1);
}, e.skipAd = function() {
w(this, D)[D] && w(this, D)[D].skip();
}, e.discardAdBreak = function() {
w(this, D)[D] && w(this, D)[D].discardAdBreak();
}, e.play = function() {
var t = this;
w(this, tt)[tt] = !1, !w(this, x)[x].enabled && w(this, D)[D] ? w(this, D)[D].resume() : w(this, X)[X] || this.p().then(function() {}).catch(function() {
t.dispatchEvent(new O("pause"));
});
}, e.pause = function() {
w(this, tt)[tt] = !0, !w(this, x)[x].enabled && w(this, D)[D] ? w(this, D)[D].pause() : w(this, S)[S].pause();
}, e.g = function(t) {
w(this, $)[$] = [].concat(t), this.dispatchEvent(new O(R.MEDIA_CUE_POINTS_CHANGE, {
detail: {
cuePoints: [].concat(w(this, $)[$])
}
}));
}, e.A = function(t) {
var i = this.cuePoints.indexOf(t);
i > -1 && (w(this, $)[$].splice(i, 1), this.g(w(this, $)[$]));
}, e.resizeAd = function(t, i) {
w(this, W)[W] = t, w(this, _)[_] = i, w(this, D)[D] && w(this, D)[D].resize(t, i, this.k()), w(this, M)[M].style.width = t + "px", w(this, M)[M].style.height = i + "px";
}, e.reset = function(t) {
void 0 === t && (t = !1), t && (w(this, U)[U] = !1, w(this, Q)[Q] = !1, w(this, Z)[Z] = !1), this.C(), w(this, $)[$] = [], w(this, tt)[tt] = !1, w(this, K)[K] = void 0, w(this, D)[D] && w(this, D)[D].destroy(), w(this, D)[D] = void 0, w(this, B)[B].settings.setAutoPlayAdBreaks(!0), t && this.P(), w(this, M)[M].style.display = "none";
}, e.P = function() {
w(this, q)[q] && (w(this, q)[q].removeEventListener(w(this, B)[B].AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, this.u, !1), w(this, q)[q].removeEventListener(w(this, B)[B].AdErrorEvent.Type.AD_ERROR, this.l, !1), w(this, q)[q].destroy()), w(this, L)[L] && w(this, L)[L].destroy();
}, e.destroy = function() {
var t, i, e, n, s = this;
this.reset(!0), w(this, x)[x].destroy(), P.forEach(function(t) {
w(s, S)[S].removeEventListener(t, s.o);
}), null == (t = w(this, q)[q]) || t.removeEventListener(w(this, B)[B].AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, this.u, !1), null == (i = w(this, L)[L]) || i.destroy(), null == (e = w(this, q)[q]) || e.destroy(), w(this, U)[U] = !1, w(this, Z)[Z] = !1, w(this, Q)[Q] = !1, null == (n = w(this, N)[N]) || n.disconnect();
}, e.isCustomPlaybackUsed = function() {
return !1 === w(this, B)[B].settings.getDisableCustomPlaybackForIOS10Plus() && !w(this, M)[M].querySelector("video");
}, e.C = function() {
window.clearTimeout(w(this, X)[X]), window.clearTimeout(w(this, Y)[Y]), w(this, X)[X] = void 0, w(this, Y)[Y] = void 0, w(this, V)[V] = void 0, w(this, H)[H] = void 0, w(this, J)[J] = void 0, w(this, M)[M].style.display = "none", w(this, M)[M].classList.remove("nonlinear"), w(this, D)[D] && this.R();
}, e.o = function(t) {
var i = this;
if (w(this, x)[x].enabled || "volumechange" === t.type) {
if ("timeupdate" === t.type) {
if (w(this, S)[S].currentTime < .5) return;
if (w(this, D)[D]) {
var e = w(this, D)[D].getCuePoints().filter(function(t) {
return t >= 0 && t < w(i, x)[x].currentTime;
}).pop();
this.A(e);
}
!w(this, U)[U] && w(this, Q)[Q] && (this.dispatchEvent(new O(R.MEDIA_IMPRESSION)), w(this, U)[U] = !0);
}
if ("play" !== t.type || w(this, Q)[Q] || w(this, z)[z] || (this.dispatchEvent(new O(R.MEDIA_START)), w(this, Q)[Q] = !0), "ended" === t.type && (this.isCustomPlaybackUsed() && w(this, S)[S].currentTime === w(this, S)[S].duration && w(this, $)[$].indexOf(-1) > -1 && (w(this, S)[S].currentTime = w(this, S)[S].duration - 1e-5, w(this, Z)[Z] = !0), w(this, q)[q].contentComplete(), w(this, D)[D] || this.T()), !window.ResizeObserver && w(this, F)[F].autoResize && "loadedmetadata" === t.type) {
var n = w(this, S)[S], s = n.offsetHeight, h = n.offsetWidth;
w(this, W)[W] = h, w(this, _)[_] = s, this.R();
}
w(this, z)[z] && "volumechange" !== t.type || this.dispatchEvent(new O(t.type));
}
}, e.S = function(t) {
var i = this, e = w(this, B)[B].AdEvent;
switch(t.type){
case e.Type.LOADED:
var n = t.getAd();
w(this, K)[K] && 0 === w(this, $)[$].length ? w(this, K)[K]({
ad: n,
start: function() {
i.M(), w(i, K)[K] = void 0;
},
startWithoutReset: function() {
i.M();
}
}) : w(this, G)[G] = n;
break;
case e.Type.AD_BREAK_READY:
this.C(), w(this, K)[K] ? (w(this, K)[K]({
ad: w(this, G)[G],
adBreakTime: t.getAdData().adBreakTime,
start: function() {
i.M(), w(i, K)[K] = void 0;
},
startWithoutReset: function() {
i.M();
}
}), w(this, G)[G] = void 0) : this.M();
break;
case e.Type.STARTED:
var s = w(this, V)[V] = t.getAd();
s.getAdPodInfo().getAdPosition() > 1 && w(this, D)[D].setVolume(w(this, D)[D].getVolume()), w(this, M)[M].classList.remove("nonlinear"), this.R(), s.isLinear() ? (w(this, x)[x].disable(), w(this, J)[J] = s.getDuration(), w(this, H)[H] = 0) : (w(this, M)[M].classList.add("nonlinear"), this.I()), w(this, M)[M].style.display = "", w(this, tt)[tt] && (w(this, tt)[tt] = !1, w(this, D)[D].pause());
break;
case e.Type.ALL_ADS_COMPLETED:
if (w(this, Z)[Z]) return;
this.isCustomPlaybackUsed() && Boolean(w(this, V)[V]) && -1 !== w(this, V)[V].getAdPodInfo().getTimeOffset() && this.I(), this.reset();
break;
case e.Type.CONTENT_PAUSE_REQUESTED:
this.C(), w(this, V)[V] = t.getAd(), w(this, M)[M].style.display = "", w(this, S)[S].pause(), this.R(), w(this, V)[V] && this.A(w(this, V)[V].getAdPodInfo().getTimeOffset()), w(this, D)[D].setVolume(w(this, S)[S].muted ? 0 : w(this, S)[S].volume), w(this, x)[x].disable(), w(this, J)[J] = w(this, V)[V].getDuration(), w(this, H)[H] = 0;
break;
case e.Type.CONTENT_RESUME_REQUESTED:
var h = Boolean(w(this, V)[V]);
if (h) {
var r = w(this, D)[D].getVolume();
w(this, S)[S].muted = 0 === r, w(this, S)[S].volume = w(this, it)[it];
}
w(this, Z)[Z] && (w(this, S)[S].currentTime = w(this, S)[S].duration + 1, w(this, Z)[Z] = !1), w(this, S)[S].ended ? (this.reset(), this.T()) : this.C(), h && (w(this, tt)[tt] = !1, this.I());
break;
case e.Type.AD_METADATA:
this.g(w(this, D)[D].getCuePoints()), -1 === w(this, $)[$].indexOf(0) && (w(this, K)[K] ? w(this, K)[K]({
start: function() {
i.I(), w(i, K)[K] = void 0;
},
startWithoutReset: function() {
i.I();
}
}) : this.I());
break;
case e.Type.AD_PROGRESS:
var o = t.getAdData();
w(this, H)[H] = o.currentTime, w(this, J)[J] = o.duration;
break;
case e.Type.LOG:
var a = t.getAdData();
w(this, K)[K] ? w(this, K)[K]({
start: function() {
i.I(), w(i, K)[K] = void 0;
},
startWithoutReset: function() {
i.I();
}
}) : a.adError && !w(this, V)[V] && this.I();
break;
case e.Type.VOLUME_CHANGED:
var u = w(this, D)[D].getVolume();
u > 0 && (w(this, it)[it] = u);
}
}, e.l = function(t) {
this.j(this.B(t));
}, e.u = function(t) {
var i = this, e = w(this, B)[B], n = e.AdEvent, s = e.AdErrorEvent.Type.AD_ERROR;
window.clearTimeout(w(this, X)[X]);
var h = w(this, D)[D] = t.getAdsManager(w(this, x)[x], w(this, I)[I]);
Object.keys(n.Type).forEach(function(t) {
h.addEventListener(n.Type[t], function(e) {
if (i.S(e), R[t]) {
var n = [
"LOG",
"AD_PROGRESS"
].indexOf(t) > -1;
i.dispatchEvent(new O(R[t], {
detail: {
ad: e.getAd() || w(i, V)[V],
adData: n ? e.getAdData() : {}
}
}));
}
});
}), h.addEventListener(s, function(t) {
return i.j(i.B(t));
});
try {
var r;
h.init(w(this, W)[W], w(this, _)[_], this.k()), h.setVolume(w(this, S)[S].muted ? 0 : w(this, S)[S].volume), null == (r = w(this, L)[L]) || r.initialize(), w(this, K)[K] || this.M();
} catch (t) {
this.j(new T(t.message));
}
}, e.M = function() {
if (w(this, Q)[Q] || (this.dispatchEvent(new O(R.MEDIA_START)), w(this, Q)[Q] = !0), w(this, D)[D]) try {
w(this, D)[D].start();
} catch (t) {
this.j(new T(t.message));
}
else this.I();
}, e.T = function() {
var t = this;
setTimeout(function() {
w(t, U)[U] = !1, w(t, Q)[Q] = !1, w(t, Z)[Z] = !1, t.dispatchEvent(new O(R.MEDIA_STOP));
}, 1);
}, e.v = function(t) {
for(var i, e = function(t, i) {
var e = "undefined" != typeof Symbol && t[Symbol.iterator] || t["@@iterator"];
if (e) return (e = e.call(t)).next.bind(e);
if (Array.isArray(t) || (e = function(t, i) {
if (t) {
if ("string" == typeof t) return f(t, i);
var e = Object.prototype.toString.call(t).slice(8, -1);
return "Object" === e && t.constructor && (e = t.constructor.name), "Map" === e || "Set" === e ? Array.from(t) : "Arguments" === e || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e) ? f(t, i) : void 0;
}
}(t))) {
e && (t = e);
var n = 0;
return function() {
return n >= t.length ? {
done: !0
} : {
done: !1,
value: t[n++]
};
};
}
throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
}(t); !(i = e()).done;){
var n = i.value;
n.contentBoxSize && 1 === n.contentBoxSize.length ? (w(this, W)[W] = n.contentBoxSize[0].inlineSize, w(this, _)[_] = n.contentBoxSize[0].blockSize) : n.contentBoxSize && n.contentBoxSize.inlineSize ? (w(this, W)[W] = n.contentBoxSize.inlineSize, w(this, _)[_] = n.contentBoxSize.blockSize) : (w(this, W)[W] = n.contentRect.width, w(this, _)[_] = n.contentRect.height);
}
this.R();
}, e.R = function() {
if (w(this, F)[F].autoResize && w(this, D)[D]) {
var t = w(this, V)[V], i = this.k();
t && !t.isLinear() ? t && (t.getWidth() > w(this, W)[W] || t.getHeight() > w(this, _)[_] ? this.resizeAd(w(this, W)[W], w(this, _)[_]) : (w(this, D)[D].resize(t.getWidth(), t.getHeight() + 20, i), w(this, M)[M].style.width = t.getWidth() + "px", w(this, M)[M].style.height = t.getHeight() + 20 + "px")) : this.resizeAd(w(this, W)[W], w(this, _)[_]);
}
}, e.k = function() {
return document.fullscreenElement || document.webkitFullscreenElement || document.mozFullScreenElement || document.msFullscreenElement || w(this, S)[S].webkitDisplayingFullscreen ? w(this, B)[B].ViewMode.FULLSCREEN : w(this, B)[B].ViewMode.NORMAL;
}, e.I = function() {
var t = this;
w(this, M)[M].style.display = "none", w(this, S)[S].ended || (w(this, x)[x].enable(), w(this, tt)[tt] ? (w(this, S)[S].pause(), this.dispatchEvent(new O("pause"))) : (this.p().then(function() {}).catch(function() {
t.dispatchEvent(new O("pause"));
}), this.dispatchEvent(new O("play")), this.dispatchEvent(new O(R.MEDIA_RESUMED))), w(this, tt)[tt] = !1);
}, e.B = function(t) {
var i = t.getError(), e = new T(i.getMessage());
return e.type = i.getType(), e.errorCode = i.getErrorCode(), e.vastErrorCode = i.getVastErrorCode && i.getVastErrorCode(), e.innerError = i.getInnerError(), e;
}, e.j = function(t) {
var i = this;
this.dispatchEvent(new O(R.AD_ERROR, {
detail: {
error: t
}
})), this.C(), w(this, K)[K] ? w(this, K)[K]({
start: function() {
i.I(), w(i, K)[K] = void 0;
},
startWithoutReset: function() {
i.I();
}
}) : this.I();
}, s(i, [
{
key: "volume",
get: function() {
return !w(this, x)[x].enabled && w(this, D)[D] ? w(this, D)[D].getVolume() : w(this, S)[S].volume;
},
set: function(t) {
!w(this, x)[x].enabled && w(this, D)[D] && w(this, D)[D].setVolume(t), w(this, S)[S].volume = t;
}
},
{
key: "muted",
get: function() {
return !w(this, x)[x].enabled && w(this, D)[D] ? 0 === w(this, D)[D].getVolume() : w(this, S)[S].muted;
},
set: function(t) {
!w(this, x)[x].enabled && w(this, D)[D] && w(this, D)[D].setVolume(t ? 0 : w(this, it)[it]), w(this, S)[S].muted = t;
}
},
{
key: "currentTime",
get: function() {
return void 0 !== w(this, H)[H] ? w(this, H)[H] : w(this, S)[S].currentTime;
},
set: function(t) {
w(this, x)[x].enabled && (w(this, S)[S].currentTime = t);
}
},
{
key: "duration",
get: function() {
return void 0 !== w(this, J)[J] ? w(this, J)[J] : w(this, S)[S].duration;
}
},
{
key: "cuePoints",
get: function() {
return [].concat(w(this, $)[$]);
}
}
]), i;
}(C);
},{"bundle-text:./style.less":"8l0EI","@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"8l0EI":[function(require,module,exports) {
module.exports = "\n";
},{}],"5dUr6":[function(require,module,exports) {
},{"@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"5dUr6":[function(require,module,exports) {
exports.interopDefault = function(a) {
return a && a.__esModule ? a : {
default: a
@@ -1 +1 @@
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAEwB;AAFxB;;AAEe,SAAS,oBAAoB,MAAM;IAC9C,OAAO,CAAC;QACJ,OAAO;YACH,MAAM;QACV;IACJ;AACJ;AAEA,IAAI,OAAO,aAAa,aAAa;IACjC,MAAM,KAAK;IACX,MAAM,SAAS,SAAS,cAAc,CAAC;IACvC,IAAI,QACA,OAAO,WAAW,GAAG,CAAA,GAAA,yBAAK,AAAD;SACtB;QACH,MAAM,SAAS,SAAS,aAAa,CAAC;QACtC,OAAO,EAAE,GAAG;QACZ,OAAO,WAAW,GAAG,CAAA,GAAA,yBAAK,AAAD;QACzB,SAAS,IAAI,CAAC,WAAW,CAAC;IAC9B;AACJ;AAEA,IAAI,OAAO,WAAW,aAClB,MAAM,CAAC,sBAAsB,GAAG;;;ACxBpC,OAAO,OAAO,GAAG;;;ACAjB,QAAQ,cAAc,GAAG,SAAU,CAAC;IAClC,OAAO,KAAK,EAAE,UAAU,GAAG,IAAI;QAAC,SAAS;IAAC;AAC5C;AAEA,QAAQ,iBAAiB,GAAG,SAAU,CAAC;IACrC,OAAO,cAAc,CAAC,GAAG,cAAc;QAAC,OAAO;IAAI;AACrD;AAEA,QAAQ,SAAS,GAAG,SAAU,MAAM,EAAE,IAAI;IACxC,OAAO,IAAI,CAAC,QAAQ,OAAO,CAAC,SAAU,GAAG;QACvC,IACE,QAAQ,aACR,QAAQ,gBACR,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,MAE3C;QAGF,OAAO,cAAc,CAAC,MAAM,KAAK;YAC/B,YAAY;YACZ,KAAK;gBACH,OAAO,MAAM,CAAC,IAAI;YACpB;QACF;IACF;IAEA,OAAO;AACT;AAEA,QAAQ,MAAM,GAAG,SAAU,IAAI,EAAE,QAAQ,EAAE,GAAG;IAC5C,OAAO,cAAc,CAAC,MAAM,UAAU;QACpC,YAAY;QACZ,KAAK;IACP;AACF","sources":["packages/artplayer-plugin-vast/src/index.js","node_modules/@parcel/runtime-js/lib/bundles/runtime-51ac63d836a077a2.js","node_modules/@parcel/transformer-js/src/esmodule-helpers.js"],"sourcesContent":["import style from 'bundle-text:./style.less';\n\nexport default function artplayerPluginVast(option) {\n return (art) => {\n return {\n name: 'artplayerPluginVast',\n };\n };\n}\n\nif (typeof document !== 'undefined') {\n const id = 'artplayer-plugin-vast';\n const $style = document.getElementById(id);\n if ($style) {\n $style.textContent = style;\n } else {\n const $style = document.createElement('style');\n $style.id = id;\n $style.textContent = style;\n document.head.appendChild($style);\n }\n}\n\nif (typeof window !== 'undefined') {\n window['ArtplayerPluginVast'] = artplayerPluginVast;\n}\n","module.exports = \"91964bfa4021818a\";","exports.interopDefault = function (a) {\n return a && a.__esModule ? a : {default: a};\n};\n\nexports.defineInteropFlag = function (a) {\n Object.defineProperty(a, '__esModule', {value: true});\n};\n\nexports.exportAll = function (source, dest) {\n Object.keys(source).forEach(function (key) {\n if (\n key === 'default' ||\n key === '__esModule' ||\n Object.prototype.hasOwnProperty.call(dest, key)\n ) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function () {\n return source[key];\n },\n });\n });\n\n return dest;\n};\n\nexports.export = function (dest, destName, get) {\n Object.defineProperty(dest, destName, {\n enumerable: true,\n get: get,\n });\n};\n"],"names":[],"version":3,"file":"index.js.map","sourceRoot":"../../../"}
{"mappings":"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 truncated
@@ -1,188 +0,0 @@
// modules are defined as an array
// [ module function, map of requires ]
//
// map of requires is short require name -> numeric require
//
// anything defined in a previous bundle is accessed via the
// orig method which is the require for previous bundles
(function (modules, entry, mainEntry, parcelRequireName, globalName) {
/* eslint-disable no-undef */
var globalObject =
typeof globalThis !== 'undefined'
? globalThis
: typeof self !== 'undefined'
? self
: typeof window !== 'undefined'
? window
: typeof global !== 'undefined'
? global
: {};
/* eslint-enable no-undef */
// Save the require from previous bundle to this closure if any
var previousRequire =
typeof globalObject[parcelRequireName] === 'function' &&
globalObject[parcelRequireName];
var cache = previousRequire.cache || {};
// Do not use `require` to prevent Webpack from trying to bundle this call
var nodeRequire =
typeof module !== 'undefined' &&
typeof module.require === 'function' &&
module.require.bind(module);
function newRequire(name, jumped) {
if (!cache[name]) {
if (!modules[name]) {
// if we cannot find the module within our internal map or
// cache jump to the current global require ie. the last bundle
// that was added to the page.
var currentRequire =
typeof globalObject[parcelRequireName] === 'function' &&
globalObject[parcelRequireName];
if (!jumped && currentRequire) {
return currentRequire(name, true);
}
// If there are other bundles on this page the require from the
// previous one is saved to 'previousRequire'. Repeat this as
// many times as there are bundles until the module is found or
// we exhaust the require chain.
if (previousRequire) {
return previousRequire(name, true);
}
// Try the node require function if it exists.
if (nodeRequire && typeof name === 'string') {
return nodeRequire(name);
}
var err = new Error("Cannot find module '" + name + "'");
err.code = 'MODULE_NOT_FOUND';
throw err;
}
localRequire.resolve = resolve;
localRequire.cache = {};
var module = (cache[name] = new newRequire.Module(name));
modules[name][0].call(
module.exports,
localRequire,
module,
module.exports,
this
);
}
return cache[name].exports;
function localRequire(x) {
var res = localRequire.resolve(x);
return res === false ? {} : newRequire(res);
}
function resolve(x) {
var id = modules[name][1][x];
return id != null ? id : x;
}
}
function Module(moduleName) {
this.id = moduleName;
this.bundle = newRequire;
this.exports = {};
}
newRequire.isParcelRequire = true;
newRequire.Module = Module;
newRequire.modules = modules;
newRequire.cache = cache;
newRequire.parent = previousRequire;
newRequire.register = function (id, exports) {
modules[id] = [
function (require, module) {
module.exports = exports;
},
{},
];
};
Object.defineProperty(newRequire, 'root', {
get: function () {
return globalObject[parcelRequireName];
},
});
globalObject[parcelRequireName] = newRequire;
for (var i = 0; i < entry.length; i++) {
newRequire(entry[i]);
}
if (mainEntry) {
// Expose entry point to Node, AMD or browser globals
// Based on https://github.com/ForbesLindesay/umd/blob/master/template.js
var mainExports = newRequire(mainEntry);
// CommonJS
if (typeof exports === 'object' && typeof module !== 'undefined') {
module.exports = mainExports;
// RequireJS
} else if (typeof define === 'function' && define.amd) {
define(function () {
return mainExports;
});
// <script>
} else if (globalName) {
this[globalName] = mainExports;
}
}
})({"9cz2W":[function(require,module,exports) {
var parcelHelpers = require("@parcel/transformer-js/src/esmodule-helpers.js");
parcelHelpers.defineInteropFlag(exports);
parcelHelpers.export(exports, "default", ()=>artplayerProxyLibmedia);
function artplayerProxyLibmedia(option) {
return (art)=>{
return document.createElement("video");
};
}
if (typeof window !== "undefined") window["artplayerProxyLibmedia"] = artplayerProxyLibmedia;
},{"@parcel/transformer-js/src/esmodule-helpers.js":"5dUr6"}],"5dUr6":[function(require,module,exports) {
exports.interopDefault = function(a) {
return a && a.__esModule ? a : {
default: a
};
};
exports.defineInteropFlag = function(a) {
Object.defineProperty(a, "__esModule", {
value: true
});
};
exports.exportAll = function(source, dest) {
Object.keys(source).forEach(function(key) {
if (key === "default" || key === "__esModule" || Object.prototype.hasOwnProperty.call(dest, key)) return;
Object.defineProperty(dest, key, {
enumerable: true,
get: function() {
return source[key];
}
});
});
return dest;
};
exports.export = function(dest, destName, get) {
Object.defineProperty(dest, destName, {
enumerable: true,
get: get
});
};
},{}]},["9cz2W"], "9cz2W", "parcelRequire4dc0")
//# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAAwB;AAAT,SAAS,uBAAuB,MAAM;IACjD,OAAO,CAAC;QACJ,OAAO,SAAS,aAAa,CAAC;IAClC;AACJ;AAEA,IAAI,OAAO,WAAW,aAClB,MAAM,CAAC,yBAAyB,GAAG;;;ACPvC,QAAQ,cAAc,GAAG,SAAU,CAAC;IAClC,OAAO,KAAK,EAAE,UAAU,GAAG,IAAI;QAAC,SAAS;IAAC;AAC5C;AAEA,QAAQ,iBAAiB,GAAG,SAAU,CAAC;IACrC,OAAO,cAAc,CAAC,GAAG,cAAc;QAAC,OAAO;IAAI;AACrD;AAEA,QAAQ,SAAS,GAAG,SAAU,MAAM,EAAE,IAAI;IACxC,OAAO,IAAI,CAAC,QAAQ,OAAO,CAAC,SAAU,GAAG;QACvC,IACE,QAAQ,aACR,QAAQ,gBACR,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,MAE3C;QAGF,OAAO,cAAc,CAAC,MAAM,KAAK;YAC/B,YAAY;YACZ,KAAK;gBACH,OAAO,MAAM,CAAC,IAAI;YACpB;QACF;IACF;IAEA,OAAO;AACT;AAEA,QAAQ,MAAM,GAAG,SAAU,IAAI,EAAE,QAAQ,EAAE,GAAG;IAC5C,OAAO,cAAc,CAAC,MAAM,UAAU;QACpC,YAAY;QACZ,KAAK;IACP;AACF","sources":["packages/artplayer-proxy-libmedia/src/index.js","node_modules/@parcel/transformer-js/src/esmodule-helpers.js"],"sourcesContent":["export default function artplayerProxyLibmedia(option) {\n return (art) => {\n return document.createElement('video');\n };\n}\n\nif (typeof window !== 'undefined') {\n window['artplayerProxyLibmedia'] = artplayerProxyLibmedia;\n}\n","exports.interopDefault = function (a) {\n return a && a.__esModule ? a : {default: a};\n};\n\nexports.defineInteropFlag = function (a) {\n Object.defineProperty(a, '__esModule', {value: true});\n};\n\nexports.exportAll = function (source, dest) {\n Object.keys(source).forEach(function (key) {\n if (\n key === 'default' ||\n key === '__esModule' ||\n Object.prototype.hasOwnProperty.call(dest, key)\n ) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function () {\n return source[key];\n },\n });\n });\n\n return dest;\n};\n\nexports.export = function (dest, destName, get) {\n Object.defineProperty(dest, destName, {\n enumerable: true,\n get: get,\n });\n};\n"],"names":[],"version":3,"file":"index.js.map","sourceRoot":"../../../"}
File diff suppressed because it is too large. Load diff
@@ -1 +1 @@
{"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6CAAwB;AAAT,SAAS,oBAAoB,MAAM;IAC9C,OAAO,CAAC;QACJ,OAAO,SAAS,aAAa,CAAC;IAClC;AACJ;AAEA,IAAI,OAAO,WAAW,aAClB,MAAM,CAAC,sBAAsB,GAAG;;;ACPpC,QAAQ,cAAc,GAAG,SAAU,CAAC;IAClC,OAAO,KAAK,EAAE,UAAU,GAAG,IAAI;QAAC,SAAS;IAAC;AAC5C;AAEA,QAAQ,iBAAiB,GAAG,SAAU,CAAC;IACrC,OAAO,cAAc,CAAC,GAAG,cAAc;QAAC,OAAO;IAAI;AACrD;AAEA,QAAQ,SAAS,GAAG,SAAU,MAAM,EAAE,IAAI;IACxC,OAAO,IAAI,CAAC,QAAQ,OAAO,CAAC,SAAU,GAAG;QACvC,IACE,QAAQ,aACR,QAAQ,gBACR,OAAO,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,MAE3C;QAGF,OAAO,cAAc,CAAC,MAAM,KAAK;YAC/B,YAAY;YACZ,KAAK;gBACH,OAAO,MAAM,CAAC,IAAI;YACpB;QACF;IACF;IAEA,OAAO;AACT;AAEA,QAAQ,MAAM,GAAG,SAAU,IAAI,EAAE,QAAQ,EAAE,GAAG;IAC5C,OAAO,cAAc,CAAC,MAAM,UAAU;QACpC,YAAY;QACZ,KAAK;IACP;AACF","sources":["packages/artplayer-proxy-webav/src/index.js","node_modules/@parcel/transformer-js/src/esmodule-helpers.js"],"sourcesContent":["export default function artplayerProxyWebAV(option) {\n return (art) => {\n return document.createElement('video');\n };\n}\n\nif (typeof window !== 'undefined') {\n window['artplayerProxyWebAV'] = artplayerProxyWebAV;\n}\n","exports.interopDefault = function (a) {\n return a && a.__esModule ? a : {default: a};\n};\n\nexports.defineInteropFlag = function (a) {\n Object.defineProperty(a, '__esModule', {value: true});\n};\n\nexports.exportAll = function (source, dest) {\n Object.keys(source).forEach(function (key) {\n if (\n key === 'default' ||\n key === '__esModule' ||\n Object.prototype.hasOwnProperty.call(dest, key)\n ) {\n return;\n }\n\n Object.defineProperty(dest, key, {\n enumerable: true,\n get: function () {\n return source[key];\n },\n });\n });\n\n return dest;\n};\n\nexports.export = function (dest, destName, get) {\n Object.defineProperty(dest, destName, {\n enumerable: true,\n get: get,\n });\n};\n"],"names":[],"version":3,"file":"index.js.map","sourceRoot":"../../../"}
{"mappings":"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 truncated
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -1 +1 @@
{"mappings":"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 truncated
{"mappings":"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 truncated
@@ -495,6 +495,7 @@ export default class Danmuku {
// 获取准备好发送的弹幕,可能包含ready和wait状态的弹幕
const readys = this.readys;
for (let index = 0; index < readys.length; index++) {
const danmu = readys[index];
+25 -22
View File
@@ -1,24 +1,27 @@
{
"license": "MIT",
"version": "1.0.0",
"name": "artplayer-plugin-vast",
"types": "types/artplayer-plugin-vast.d.ts",
"description": "vast plugin for ArtPlayer",
"main": "dist/artplayer-plugin-vast.js",
"legacy": "dist/artplayer-plugin-vast.legacy.js",
"author": "Harvey Zack <laozhaochaguan@gmail.com>",
"browserslist": "last 1 Chrome version",
"homepage": "https://artplayer.org",
"repository": {
"type": "git",
"url": "git+https://github.com/zhw2590582/ArtPlayer.git"
},
"bugs": {
"url": "https://github.com/zhw2590582/ArtPlayer/issues"
},
"keywords": [
"html5",
"video",
"player"
]
"license": "MIT",
"version": "1.0.0",
"name": "artplayer-plugin-vast",
"types": "types/artplayer-plugin-vast.d.ts",
"description": "vast plugin for ArtPlayer",
"main": "dist/artplayer-plugin-vast.js",
"legacy": "dist/artplayer-plugin-vast.legacy.js",
"author": "Harvey Zack <laozhaochaguan@gmail.com>",
"browserslist": "last 1 Chrome version",
"homepage": "https://artplayer.org",
"repository": {
"type": "git",
"url": "git+https://github.com/zhw2590582/ArtPlayer.git"
},
"bugs": {
"url": "https://github.com/zhw2590582/ArtPlayer/issues"
},
"keywords": [
"html5",
"video",
"player"
],
"dependencies": {
"@glomex/vast-ima-player": "^1.21.0"
}
}
+45 -16
View File
@@ -1,26 +1,55 @@
import style from 'bundle-text:./style.less';
import { Player, PlayerOptions, loadImaSdk } from '@glomex/vast-ima-player';
export default function artplayerPluginVast(callback) {
return async (art) => {
const { template, constructor } = art;
const { createElement, setStyles, append } = constructor.utils;
const { $video, $player } = template;
await loadImaSdk();
const google = window.google;
const ima = google.ima;
const adsRenderingSettings = new ima.AdsRenderingSettings();
const playerOptions = new PlayerOptions();
const id = `art-${Date.now()}`;
const $container = createElement('div');
append($player, $container);
$container.id = id;
setStyles($container, {
position: 'absolute',
inset: '0',
width: '100%',
height: '100%',
zIndex: '150',
display: 'none',
});
const imaPlayer = new Player(ima, $video, $container, adsRenderingSettings, playerOptions);
function playUrl(url) {
const playAdsRequest = new ima.AdsRequest();
playAdsRequest.adTagUrl = url;
imaPlayer.playAds(playAdsRequest);
}
function playRes(res) {
const playAdsRequest = new ima.AdsRequest();
playAdsRequest.adsResponse = res;
imaPlayer.playAds(playAdsRequest);
}
if (typeof callback === 'function') {
await callback({ art, id, ima, imaPlayer, $container, playUrl, playRes });
}
export default function artplayerPluginVast(option) {
return (art) => {
return {
name: 'artplayerPluginVast',
};
};
}
if (typeof document !== 'undefined') {
const id = 'artplayer-plugin-vast';
const $style = document.getElementById(id);
if ($style) {
$style.textContent = style;
} else {
const $style = document.createElement('style');
$style.id = id;
$style.textContent = style;
document.head.appendChild($style);
}
}
if (typeof window !== 'undefined') {
window['artplayerPluginVast'] = artplayerPluginVast;
}
@@ -1,3 +0,0 @@
.artplayer-plugin-vast {
//
}
@@ -3,9 +3,15 @@ import type Artplayer from 'artplayer';
export = artplayerPluginVast;
export as namespace artplayerPluginVast;
type Option = {
//
};
type Option = (params: {
art: Artplayer;
id: string;
ima: any;
imaPlayer: any;
$container: HTMLDivElement;
playUrl: (url: string) => void;
playRes: (res: string) => void;
}) => void;
type Result = {
name: 'artplayerPluginVast';
@@ -1,11 +0,0 @@
# artplayer-proxy-libmedia
libmedia proxy for ArtPlayer
## Demo
[https://artplayer.org](https://artplayer.org/?libs=./uncompiled/artplayer-proxy-libmedia/index.js&example=libmedia)
## License
MIT © Harvey Zack
@@ -1,24 +0,0 @@
{
"license": "MIT",
"version": "1.0.0",
"name": "artplayer-proxy-libmedia",
"types": "types/artplayer-proxy-libmedia.d.ts",
"description": "libmedia proxy for ArtPlayer",
"main": "dist/artplayer-proxy-libmedia.js",
"legacy": "dist/artplayer-proxy-libmedia.legacy.js",
"author": "Harvey Zack <laozhaochaguan@gmail.com>",
"browserslist": "last 1 Chrome version",
"homepage": "https://artplayer.org",
"repository": {
"type": "git",
"url": "git+https://github.com/zhw2590582/ArtPlayer.git"
},
"bugs": {
"url": "https://github.com/zhw2590582/ArtPlayer/issues"
},
"keywords": [
"html5",
"video",
"player"
]
}
@@ -1,9 +0,0 @@
export default function artplayerProxyLibmedia(option) {
return (art) => {
return document.createElement('video');
};
}
if (typeof window !== 'undefined') {
window['artplayerProxyLibmedia'] = artplayerProxyLibmedia;
}
@@ -1,14 +0,0 @@
import type Artplayer from 'artplayer';
export = artplayerProxyLibmedia;
export as namespace artplayerProxyLibmedia;
type Option = {
//
};
type Result = {
name: 'artplayerProxyLibmedia';
};
declare const artplayerProxyLibmedia: (option: Option) => (art: Artplayer) => Result;
@@ -0,0 +1,8 @@
/*!
* artplayer-proxy-webav.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(t,e,r,s,n){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},o="function"==typeof a[s]&&a[s],h=o.cache||{},l="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function u(e,r){if(!h[e]){if(!t[e]){var n="function"==typeof a[s]&&a[s];if(!r&&n)return n(e,!0);if(o)return o(e,!0);if(l&&"string"==typeof e)return l(e);var d=Error("Cannot find module '"+e+"'");throw d.code="MODULE_NOT_FOUND",d}p.resolve=function(r){var s=t[e][1][r];return null!=s?s:r},p.cache={};var f=h[e]=new u.Module(e);t[e][0].call(f.exports,p,f,f.exports,this)}return h[e].exports;function p(t){var e=p.resolve(t);return!1===e?{}:u(e)}}u.isParcelRequire=!0,u.Module=function(t){this.id=t,this.bundle=u,this.exports={}},u.modules=t,u.cache=h,u.parent=o,u.register=function(e,r){t[e]=[function(t,e){e.exports=r},{}]},Object.defineProperty(u,"root",{get:function(){return a[s]}}),a[s]=u;for(var d=0;d<e.length;d++)u(e[d]);if(r){var f=u(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=f:"function"==typeof define&&define.amd&&define(function(){return f})}}({jc2x7:[function(t,e,r){var s=t("@parcel/transformer-js/src/esmodule-helpers.js");s.defineInteropFlag(r),s.export(r,"default",()=>a);var n=t("@webav/av-cliper");function a(){return t=>{let e,r;let{option:s,constructor:a}=t,{createElement:o,def:h}=a.utils,l=o("canvas"),u=l.getContext("2d"),d=null,f=null,p=null,c=null,m=0,g={playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:s.muted,volume:s.volume,autoplay:s.autoplay};function y(){p&&(clearInterval(p),p=null),f&&(f.stop(),f=null)}function _(){if(r){let t=g.muted?0:g.volume;r.gain.setValueAtTime(t,e.currentTime)}}async function b(){e||(r=(e=new AudioContext).createGain()).connect(e.destination);let s=1e6*g.currentTime,n=0,a=!0,o=performance.now();async function h(){if(!g.playing)return;let h=performance.now(),l=h-o;o=h,null!==c?(s=1e6*c,c=null,a=!0):s+=1e3*l*g.playbackRate,g.currentTime=s/1e6;let{state:p,video:m,audio:_}=await d.tick(Math.round(s));if(t.emit("video:timeupdate",{type:"timeupdate"}),"done"===p){y(),g.ended=!0,g.playing=!1,g.paused=!0,t.emit("video:ended",{type:"ended"});return}if(m&&"success"===p&&(u.clearRect(0,0,g.videoWidth,g.videoHeight),u.drawImage(m,0,0,g.videoWidth,g.videoHeight),m.close()),a)a=!1;else if(_?.[0]?.length){let t=e.createBuffer(2,_[0].length,48e3);t.copyToChannel(_[0],0),t.copyToChannel(_[1],1),(f=e.createBufferSource()).buffer=t,f.connect(r),f.playbackRate.setValueAtTime(g.playbackRate,e.currentTime),n=Math.max(e.currentTime,n),f.start(n),n+=t.duration/g.playbackRate}}y(),_(),g.playing=!0,g.paused=!1,p=setInterval(h,1e3/60)}async function w(t){let{video:e}=await d.tick(1e6*t);e&&(u.clearRect(0,0,l.width,l.height),u.drawImage(e,0,0,l.width,l.height),e.close())}function v(){let e=t.template?.$player;if(!e||s.autoSize)return;let r=l.videoWidth/l.videoHeight,n=e.clientWidth,a=e.clientHeight,o=0,h=0;n/a>r?o=(n-a*r)/2:h=(a-n/r)/2,Object.assign(l.style,{padding:`${h}px ${o}px`})}async function S(){if(!await (0,n.Combinator).isSupported())throw t.notice.show="WebAV is not supported",Error("WebAV is not supported");y(),Object.assign(g,{playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:s.muted,volume:s.volume,autoplay:s.autoplay}),d&&(d.destroy(),t.emit("video:abort",{type:"abort"}),t.emit("video:emptied",{type:"emptied"}));try{await Promise.resolve(),t.emit("video:loadstart",{type:"loadstart"});let e=await fetch(s.url);if(!e.body)throw Error("No response body");d=new n.MP4Clip(e.body)}catch(e){throw t.emit("video:error",e),e}let e=await d.ready;Object.assign(g,{readyState:4,duration:Math.round(e.duration/1e6),videoWidth:e.width,videoHeight:e.height}),l.width=g.videoWidth,l.height=g.videoHeight,await w(.1),v(),t.emit("video:loadedmetadata",{type:"loadedmetadata"}),t.emit("video:durationchange",{type:"durationchange"}),t.emit("video:loadeddata",{type:"loadeddata"}),t.emit("video:canplay",{type:"canplay"}),t.emit("video:canplaythrough",{type:"canplaythrough"})}return h(l,"textTracks",{get:()=>[]}),h(l,"duration",{get:()=>g.duration}),h(l,"videoWidth",{get:()=>g.videoWidth}),h(l,"videoHeight",{get:()=>g.videoHeight}),h(l,"volume",{get:()=>g.volume,set:e=>{g.volume=Math.max(0,Math.min(1,e)),_(),t.emit("video:volumechange",{type:"volumechange"})}}),h(l,"currentTime",{get:()=>g.currentTime,set:e=>{let r=Math.max(0,Math.min(e,g.duration)),s=performance.now();s-m>16&&(m=s,c=r,g.currentTime=r,g.playing||w(r),t.emit("video:timeupdate",{type:"timeupdate"}))}}),h(l,"autoplay",{get:()=>g.autoplay,set:t=>{g.autoplay=t,t&&g.readyState>=4&&l.play()}}),h(l,"src",{get:()=>s.url,set:t=>{s.url=t,S().then(()=>{s.autoplay&&l.play()})}}),h(l,"playbackRate",{get:()=>g.playbackRate,set:r=>{g.playbackRate=Math.max(.25,Math.min(2,r)),f&&fLine truncated
@@ -0,0 +1,8 @@
/*!
* artplayer-proxy-webav.js v1.0.0
* Github: https://github.com/zhw2590582/ArtPlayer
* (c) 2017-2024 Harvey Zack
* Released under the MIT License.
*/
!function(t,e,r,n,s){var a="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:"undefined"!=typeof global?global:{},o="function"==typeof a[n]&&a[n],u=o.cache||{},l="undefined"!=typeof module&&"function"==typeof module.require&&module.require.bind(module);function c(e,r){if(!u[e]){if(!t[e]){var s="function"==typeof a[n]&&a[n];if(!r&&s)return s(e,!0);if(o)return o(e,!0);if(l&&"string"==typeof e)return l(e);var h=Error("Cannot find module '"+e+"'");throw h.code="MODULE_NOT_FOUND",h}d.resolve=function(r){var n=t[e][1][r];return null!=n?n:r},d.cache={};var f=u[e]=new c.Module(e);t[e][0].call(f.exports,d,f,f.exports,this)}return u[e].exports;function d(t){var e=d.resolve(t);return!1===e?{}:c(e)}}c.isParcelRequire=!0,c.Module=function(t){this.id=t,this.bundle=c,this.exports={}},c.modules=t,c.cache=u,c.parent=o,c.register=function(e,r){t[e]=[function(t,e){e.exports=r},{}]},Object.defineProperty(c,"root",{get:function(){return a[n]}}),a[n]=c;for(var h=0;h<e.length;h++)c(e[h]);if(r){var f=c(r);"object"==typeof exports&&"undefined"!=typeof module?module.exports=f:"function"==typeof define&&define.amd&&define(function(){return f})}}({c4SNP:[function(t,e,r){var n=t("@parcel/transformer-js/src/esmodule-helpers.js");n.defineInteropFlag(r),n.export(r,"default",function(){return u});var s=t("@swc/helpers/_/_async_to_generator"),a=t("@swc/helpers/_/_ts_generator"),o=t("@webav/av-cliper");function u(){return function(t){var e,r,n=t.option,u=t.constructor.utils,l=u.createElement,c=u.def,h=l("canvas"),f=h.getContext("2d"),d=null,p=null,m=null,_=null,y=0,g={playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:n.muted,volume:n.volume,autoplay:n.autoplay};function v(){m&&(clearInterval(m),m=null),p&&(p.stop(),p=null)}function b(){if(r){var t=g.muted?0:g.volume;r.gain.setValueAtTime(t,e.currentTime)}}function w(){return(w=(0,s._)(function(){var n,o,u,l;function c(){return h.apply(this,arguments)}function h(){return(h=(0,s._)(function(){var s,c,h,m,y,b,w,S;return(0,a._)(this,function(a){switch(a.label){case 0:if(!g.playing)return[2];return h=(c=performance.now())-l,l=c,null!==_?(n=1e6*_,_=null,u=!0):n+=1e3*h*g.playbackRate,g.currentTime=n/1e6,[4,d.tick(Math.round(n))];case 1:if(y=(m=a.sent()).state,b=m.video,w=m.audio,t.emit("video:timeupdate",{type:"timeupdate"}),"done"===y)return v(),g.ended=!0,g.playing=!1,g.paused=!0,t.emit("video:ended",{type:"ended"}),[2];return b&&"success"===y&&(f.clearRect(0,0,g.videoWidth,g.videoHeight),f.drawImage(b,0,0,g.videoWidth,g.videoHeight),b.close()),u?u=!1:(null==w?void 0:null===(s=w[0])||void 0===s?void 0:s.length)&&((S=e.createBuffer(2,w[0].length,48e3)).copyToChannel(w[0],0),S.copyToChannel(w[1],1),(p=e.createBufferSource()).buffer=S,p.connect(r),p.playbackRate.setValueAtTime(g.playbackRate,e.currentTime),o=Math.max(e.currentTime,o),p.start(o),o+=S.duration/g.playbackRate),[2]}})})).apply(this,arguments)}return(0,a._)(this,function(t){return e||(r=(e=new AudioContext).createGain()).connect(e.destination),n=1e6*g.currentTime,o=0,u=!0,l=performance.now(),v(),b(),g.playing=!0,g.paused=!1,m=setInterval(c,1e3/60),[2]})})).apply(this,arguments)}function S(t){return x.apply(this,arguments)}function x(){return(x=(0,s._)(function(t){var e;return(0,a._)(this,function(r){switch(r.label){case 0:return[4,d.tick(1e6*t)];case 1:return(e=r.sent().video)&&(f.clearRect(0,0,h.width,h.height),f.drawImage(e,0,0,h.width,h.height),e.close()),[2]}})})).apply(this,arguments)}function E(){var e,r=null===(e=t.template)||void 0===e?void 0:e.$player;if(r&&!n.autoSize){var s=h.videoWidth/h.videoHeight,a=r.clientWidth,o=r.clientHeight,u=0,l=0;a/o>s?u=(a-o*s)/2:l=(o-a/s)/2,Object.assign(h.style,{padding:"".concat(l,"px ").concat(u,"px")})}}function U(){return(U=(0,s._)(function(){var e,r,s;return(0,a._)(this,function(a){switch(a.label){case 0:return[4,(0,o.Combinator).isSupported()];case 1:if(!a.sent())throw t.notice.show="WebAV is not supported",Error("WebAV is not supported");v(),Object.assign(g,{playing:!1,duration:0,videoWidth:0,videoHeight:0,currentTime:0,playbackRate:1,paused:!0,ended:!1,readyState:0,buffered:0,muted:n.muted,volume:n.volume,autoplay:n.autoplay}),d&&(d.destroy(),t.emit("video:abort",{type:"abort"}),t.emit("video:emptied",{type:"emptied"})),a.label=2;case 2:return a.trys.push([2,5,,6]),[4,Promise.resolve()];case 3:return a.sent(),t.emit("video:loadstart",{type:"loadstart"}),[4,fetch(n.url)];case 4:if(!(e=a.sent()).body)throw Error("No response body");return d=new o.MP4Clip(e.body),[3,6];case 5:throw r=a.sent(),t.emit("video:error",r),r;case 6:return[4,d.ready];case 7:return Object.assign(g,{readyState:4,duration:Math.round((s=a.sent()).duration/1e6),videoWidth:s.width,videoHeight:s.height}),h.width=g.videoWidth,h.height=g.videoHeight,[4,S(.1)];case 8:return a.sent(),E(),t.emit("video:loadedmetadata",{type:"loadedmetadata"}),t.emit("video:durationchange",{type:"durationchange"})Line truncated
+26 -23
View File
@@ -1,24 +1,27 @@
{
"license": "MIT",
"version": "1.0.0",
"name": "artplayer-proxy-webav",
"types": "types/artplayer-proxy-webav.d.ts",
"description": "webav proxy for ArtPlayer",
"main": "dist/artplayer-proxy-webav.js",
"legacy": "dist/artplayer-proxy-webav.legacy.js",
"author": "Harvey Zack <laozhaochaguan@gmail.com>",
"browserslist": "last 1 Chrome version",
"homepage": "https://artplayer.org",
"repository": {
"type": "git",
"url": "git+https://github.com/zhw2590582/ArtPlayer.git"
},
"bugs": {
"url": "https://github.com/zhw2590582/ArtPlayer/issues"
},
"keywords": [
"html5",
"video",
"player"
]
}
"license": "MIT",
"version": "1.0.0",
"name": "artplayer-proxy-webav",
"types": "types/artplayer-proxy-webav.d.ts",
"description": "webav proxy for ArtPlayer",
"main": "dist/artplayer-proxy-webav.js",
"legacy": "dist/artplayer-proxy-webav.legacy.js",
"author": "Harvey Zack <laozhaochaguan@gmail.com>",
"browserslist": "last 1 Chrome version",
"homepage": "https://artplayer.org",
"repository": {
"type": "git",
"url": "git+https://github.com/zhw2590582/ArtPlayer.git"
},
"bugs": {
"url": "https://github.com/zhw2590582/ArtPlayer/issues"
},
"keywords": [
"html5",
"video",
"player"
],
"dependencies": {
"@webav/av-cliper": "^0.14.14"
}
}
+365 -2
View File
@@ -1,6 +1,369 @@
export default function artplayerProxyWebAV(option) {
import { MP4Clip, Combinator } from '@webav/av-cliper';
export default function artplayerProxyWebAV(opt = {}) {
return (art) => {
return document.createElement('video');
const { option, constructor } = art;
const { createElement, def } = constructor.utils;
const canvas = createElement('canvas');
const ctx = canvas.getContext('2d');
let audioCtx;
let gainNode;
let clip = null;
let audioSource = null;
let intervalId = null;
let seekTarget = null;
let lastSeekTime = 0;
const state = {
playing: false,
duration: 0,
videoWidth: 0,
videoHeight: 0,
currentTime: 0,
playbackRate: 1,
paused: true,
ended: false,
readyState: 0,
buffered: 0,
muted: option.muted,
volume: option.volume,
autoplay: option.autoplay,
};
function reset() {
Object.assign(state, {
playing: false,
duration: 0,
videoWidth: 0,
videoHeight: 0,
currentTime: 0,
playbackRate: 1,
paused: true,
ended: false,
readyState: 0,
buffered: 0,
muted: option.muted,
volume: option.volume,
autoplay: option.autoplay,
});
}
function stop() {
if (intervalId) {
clearInterval(intervalId);
intervalId = null;
}
if (audioSource) {
audioSource.stop();
audioSource = null;
}
}
function updateVolume() {
if (gainNode) {
const effectiveVolume = state.muted ? 0 : state.volume;
gainNode.gain.setValueAtTime(effectiveVolume, audioCtx.currentTime);
}
}
async function play() {
if (!audioCtx) {
audioCtx = new AudioContext();
gainNode = audioCtx.createGain();
gainNode.connect(audioCtx.destination);
}
let curTime = state.currentTime * 1e6;
let startAt = 0;
let first = true;
let lastFrameTime = performance.now();
stop();
updateVolume();
async function frameHandler() {
if (!state.playing) return;
const currentFrameTime = performance.now();
const deltaTime = currentFrameTime - lastFrameTime;
lastFrameTime = currentFrameTime;
if (seekTarget !== null) {
curTime = seekTarget * 1e6;
seekTarget = null;
first = true;
} else {
curTime += deltaTime * 1000 * state.playbackRate;
}
state.currentTime = curTime / 1e6;
const { state: clipState, video, audio } = await clip.tick(Math.round(curTime));
art.emit('video:timeupdate', { type: 'timeupdate' });
if (clipState === 'done') {
stop();
state.ended = true;
state.playing = false;
state.paused = true;
art.emit('video:ended', { type: 'ended' });
return;
}
if (video && clipState === 'success') {
ctx.clearRect(0, 0, state.videoWidth, state.videoHeight);
ctx.drawImage(video, 0, 0, state.videoWidth, state.videoHeight);
video.close();
}
if (first) {
first = false;
} else if (audio?.[0]?.length) {
const buf = audioCtx.createBuffer(2, audio[0].length, 48000);
buf.copyToChannel(audio[0], 0);
buf.copyToChannel(audio[1], 1);
audioSource = audioCtx.createBufferSource();
audioSource.buffer = buf;
audioSource.connect(gainNode);
audioSource.playbackRate.setValueAtTime(state.playbackRate, audioCtx.currentTime);
startAt = Math.max(audioCtx.currentTime, startAt);
audioSource.start(startAt);
startAt += buf.duration / state.playbackRate;
}
}
state.playing = true;
state.paused = false;
intervalId = setInterval(frameHandler, 1000 / 60); // 约60fps
}
async function preview(time) {
const { video } = await clip.tick(time * 1e6);
if (video) {
ctx.clearRect(0, 0, canvas.width, canvas.height);
ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
video.close();
}
}
function resize() {
const player = art.template?.$player;
if (!player || option.autoSize) return;
const aspectRatio = canvas.videoWidth / canvas.videoHeight;
const containerWidth = player.clientWidth;
const containerHeight = player.clientHeight;
const containerRatio = containerWidth / containerHeight;
let paddingLeft = 0;
let paddingTop = 0;
if (containerRatio > aspectRatio) {
const canvasWidth = containerHeight * aspectRatio;
paddingLeft = (containerWidth - canvasWidth) / 2;
} else {
const canvasHeight = containerWidth / aspectRatio;
paddingTop = (containerHeight - canvasHeight) / 2;
}
Object.assign(canvas.style, {
padding: `${paddingTop}px ${paddingLeft}px`,
});
}
async function init() {
const isSupported = await Combinator.isSupported();
if (!isSupported) {
art.notice.show = 'WebAV is not supported';
throw new Error('WebAV is not supported');
}
stop();
reset();
if (clip) {
clip.destroy();
art.emit('video:abort', { type: 'abort' });
art.emit('video:emptied', { type: 'emptied' });
}
try {
await Promise.resolve();
state.readyState = 1;
art.emit('video:loadstart', { type: 'loadstart' });
const response = await fetch(option.url);
if (!response.body) {
throw new Error('No response body');
}
clip = new MP4Clip(response.body, opt);
} catch (error) {
state.readyState = 0;
art.emit('video:error', error);
throw error;
}
const info = await clip.ready;
Object.assign(state, {
readyState: 4,
duration: Math.round(info.duration / 1e6),
videoWidth: info.width,
videoHeight: info.height,
});
canvas.width = state.videoWidth;
canvas.height = state.videoHeight;
await preview(0.1);
resize();
art.emit('video:loadedmetadata', { type: 'loadedmetadata' });
art.emit('video:durationchange', { type: 'durationchange' });
art.emit('video:loadeddata', { type: 'loadeddata' });
art.emit('video:canplay', { type: 'canplay' });
art.emit('video:canplaythrough', { type: 'canplaythrough' });
}
def(canvas, 'duration', {
get: () => state.duration,
});
def(canvas, 'videoWidth', {
get: () => state.videoWidth,
});
def(canvas, 'videoHeight', {
get: () => state.videoHeight,
});
def(canvas, 'volume', {
get: () => state.volume,
set: (val) => {
state.volume = Math.max(0, Math.min(1, val));
updateVolume();
art.emit('video:volumechange', { type: 'volumechange' });
},
});
def(canvas, 'currentTime', {
get: () => state.currentTime,
set: (val) => {
if (state.readyState < 4) return;
const newTime = Math.max(0, Math.min(val, state.duration));
const now = performance.now();
if (now - lastSeekTime > 16) {
lastSeekTime = now;
seekTarget = newTime;
state.currentTime = newTime;
if (!state.playing) {
preview(newTime);
}
art.emit('video:timeupdate', { type: 'timeupdate' });
}
},
});
def(canvas, 'autoplay', {
get: () => state.autoplay,
set: (val) => {
state.autoplay = val;
if (val && state.readyState >= 4) {
canvas.play();
}
},
});
def(canvas, 'src', {
get: () => option.url,
set: (val) => {
option.url = val;
init().then(() => {
if (option.autoplay) {
canvas.play();
}
});
},
});
def(canvas, 'playbackRate', {
get: () => state.playbackRate,
set: (val) => {
state.playbackRate = Math.max(0.25, Math.min(2, val));
if (audioSource) {
audioSource.playbackRate.setValueAtTime(state.playbackRate, audioCtx.currentTime);
}
art.emit('video:ratechange', { type: 'ratechange' });
},
});
def(canvas, 'playing', {
get: () => state.playing,
});
def(canvas, 'paused', {
get: () => state.paused,
});
def(canvas, 'ended', {
get: () => state.ended,
});
def(canvas, 'readyState', {
get: () => state.readyState,
});
def(canvas, 'muted', {
get: () => state.muted,
set: (val) => {
state.muted = val;
updateVolume();
art.emit('video:volumechange', { type: 'volumechange' });
},
});
def(canvas, 'buffered', {
get: () => ({
start: () => 0,
end: () => state.buffered,
length: 1,
}),
});
def(canvas, 'play', {
value: async () => {
if (state.readyState < 4) return false;
await play();
art.emit('video:play', { type: 'play' });
art.emit('video:playing', { type: 'playing' });
return true;
},
});
def(canvas, 'pause', {
value: () => {
stop();
state.playing = false;
state.paused = true;
art.emit('video:pause', { type: 'pause' });
},
});
art.on('destroy', () => {
stop();
if (clip) {
clip.destroy();
}
});
art.on('resize', resize);
return canvas;
};
}
@@ -7,8 +7,6 @@ type Option = {
//
};
type Result = {
name: 'artplayerProxyWebAV';
};
type Result = HTMLCanvasElement;
declare const artplayerProxyWebAV: (option: Option) => (art: Artplayer) => Result;
@@ -53,7 +53,6 @@ console.info(art.template.$video);
- `proxy` 方法用于代理 `DOM` 事件
- `hover` 方法用于代理自定义的 `hover` 事件
- `loadImg` 方法用于监听图片的 `load` 加载事件
<div className="run-code">▶ Run Code</div>
@@ -74,10 +73,6 @@ art.events.hover(container, (event) => {
}, (event) => {
console.info('mouseleave', event);
});
art.events.loadImg('/assets/sample/poster.jpg').then(img => {
console.info('loadImg', img);
});
```
:::warning 提示
@@ -52,7 +52,6 @@ Manages all `DOM` events in the player, which is essentially a proxy for `addEve
- The `proxy` method is used to proxy `DOM` events
- The `hover` method is used to proxy custom `hover` events
- The `loadImg` method is used to listen for the `load` event of images
<div className="run-code">▶ Run Code</div>
@@ -73,10 +72,6 @@ art.events.hover(container, (event) => {
}, (event) => {
console.info('mouseleave', event);
});
art.events.loadImg('/assets/sample/poster.jpg').then(img => {
console.info('loadImg', img);
});
```
:::warning Warning
@@ -412,13 +412,13 @@ var art = new Artplayer({
});
```
| Hotkey | Description |
| ------- | --------------------- |
| `↑` | Increase volume |
| `↓` | Decrease volume |
| `←` | Fast forward video |
| `→` | Rewind video |
| `space` | Toggle play/pause |
| Hotkey | Description |
| ------- | ------------------ |
| `↑` | Increase volume |
| `↓` | Decrease volume |
| `←` | Fast forward video |
| `→` | Rewind video |
| `space` | Toggle play/pause |
:::warning Tip
@@ -734,11 +734,11 @@ var art = new Artplayer({
Whether to show the `quality selection` list in the bottom control bar
| Property | Type | Description |
| ---------- | --------- | -------------- |
| `default` | `Boolean` | Default quality|
| `html` | `String` | Quality name |
| `url` | `String` | Quality URL |
| Property | Type | Description |
| --------- | --------- | --------------- |
| `default` | `Boolean` | Default quality |
| `html` | `String` | Quality name |
| `url` | `String` | Quality URL |
<div className="run-code">▶ Run Code</div>
@@ -766,10 +766,10 @@ var art = new Artplayer({
Show `highlight information` on the progress bar
| Property | Type | Description |
| -------- | -------- | -------------------- |
| `time` | `Number` | Highlight time (in seconds)|
| `text` | `String` | Highlight text |
| Property | Type | Description |
| -------- | -------- | --------------------------- |
| `time` | `Number` | Highlight time (in seconds) |
| `text` | `String` | Highlight text |
<div className="run-code">▶ Run Code</div>
@@ -836,13 +836,14 @@ var art = new Artplayer({
Set `thumbnails` on the progress bar
| Property | Type | Description |
| -------- | -------- | ------------------- |
| `url` | `String` | Thumbnail URL |
| `number` | `Number` | Number of thumbnails|
| `column` | `Number` | Columns of thumbnails|
| `width` | `Number` | Thumbnail width |
| `height` | `Number` | Thumbnail height |
| Property | Type | Description |
| -------- | -------- | --------------------- |
| `url` | `String` | Thumbnail URL |
| `number` | `Number` | Number of thumbnails |
| `column` | `Number` | Columns of thumbnails |
| `width` | `Number` | Thumbnail width |
| `height` | `Number` | Thumbnail height |
| `scale` | `Number` | Thumbnail scale |
<div className="run-code">▶ Run Code</div>
@@ -870,11 +871,11 @@ var art = new Artplayer({
Set the video subtitles, supporting subtitle formats: `vtt`, `srt`, `ass`
| Property | Type | Description |
| ----------- | ---------- | ----------------------------------- |
| `name` | `String` | Subtitle name |
| `url` | `String` | Subtitle URL |
| `type` | `String` | Subtitle type, options: `vtt`, `srt`, `ass` |
| Property | Type | Description |
| -------- | -------- | ------------------------------------------- |
| `name` | `String` | Subtitle name |
| `url` | `String` | Subtitle URL |
| `type` | `String` | Subtitle type, options: `vtt`, `srt`, `ass` |
| `style` | `Object` | Subtitle style |
| `encoding` | `String` | Subtitle encoding, default `utf-8` |
@@ -853,6 +853,7 @@ var art = new Artplayer({
| `column` | `Number` | 预览图列数 |
| `width` | `Number` | 预览图宽度 |
| `height` | `Number` | 预览图高度 |
| `scale` | `Number` | 预览图缩放 |
<div className="run-code">▶ Run Code</div>
@@ -883,7 +884,7 @@ var art = new Artplayer({
| 属性 | 类型 | 描述 |
| ----------- | ---------- | ----------------------------------- |
| `name` | `String` | 字幕名字 |
| `name` | `String` | 字幕名字 |
| `url` | `String` | 字幕地址 |
| `type` | `String` | 字幕类型,可选 `vtt`, `srt`, `ass` |
| `style` | `Object` | 字幕样式 |
-24
View File
@@ -1,4 +1,3 @@
import { ArtPlayerError } from '../utils/error';
import clickInit from './clickInit';
import hoverInit from './hoverInit';
import moveInit from './moveInit';
@@ -13,7 +12,6 @@ export default class Events {
this.destroyEvents = [];
this.proxy = this.proxy.bind(this);
this.hover = this.hover.bind(this);
this.loadImg = this.loadImg.bind(this);
clickInit(art, this);
hoverInit(art, this);
@@ -45,28 +43,6 @@ export default class Events {
}
}
loadImg(img) {
return new Promise((resolve, reject) => {
let image;
if (img instanceof HTMLImageElement) {
image = img;
} else if (typeof img === 'string') {
image = new Image();
image.src = img;
} else {
return reject(new ArtPlayerError('Unable to get Image'));
}
if (image.complete) {
return resolve(image);
}
this.proxy(image, 'load', () => resolve(image));
this.proxy(image, 'error', () => reject(new ArtPlayerError(`Failed to load Image: ${image.src}`)));
});
}
remove(destroyEvent) {
const index = this.destroyEvents.indexOf(destroyEvent);
if (index > -1) {
+1
View File
@@ -170,6 +170,7 @@ export default class Artplayer extends Emitter {
column: 10,
width: 0,
height: 0,
scale: 1,
},
subtitle: {
url: '',
+3 -1
View File
@@ -8,6 +8,8 @@ export default function seekMix(art) {
});
def(art, 'loadedTime', {
get: () => ($video.buffered.length ? $video.buffered.end($video.buffered.length - 1) : 0),
get: () => {
return $video.buffered.length ? $video.buffered.end($video.buffered.length - 1) : 0;
},
});
}
+4 -1
View File
@@ -3,6 +3,9 @@ import { def } from '../utils';
export default function playingMix(art) {
const { $video } = art.template;
def(art, 'playing', {
get: () => !!($video.currentTime > 0 && !$video.paused && !$video.ended && $video.readyState > 2),
get: () => {
if (typeof $video.playing === 'boolean') return $video.playing;
return !!($video.currentTime > 0 && !$video.paused && !$video.ended && $video.readyState > 2);
},
});
}
@@ -1,9 +1,8 @@
import { def, setStyle, isMobile } from '../utils';
import { def, setStyle, isMobile, loadImg } from '../utils';
export default function thumbnailsMix(art) {
const {
option,
events: { loadImg },
template: { $progress, $video },
} = art;
@@ -24,14 +23,14 @@ export default function thumbnailsMix(art) {
const $thumbnails = art.controls?.thumbnails;
if (!$thumbnails) return;
const { url, number, column, width, height } = option.thumbnails;
const width2 = width || image.naturalWidth / column;
const height2 = height || width2 / ($video.videoWidth / $video.videoHeight);
const { number, column, width, height, scale } = option.thumbnails;
const width2 = width * scale || image.naturalWidth / column;
const height2 = height * scale || width2 / ($video.videoWidth / $video.videoHeight);
const perWidth = $progress.clientWidth / number;
const perIndex = Math.floor(posWidth / perWidth);
const yIndex = Math.ceil(perIndex / column) - 1;
const xIndex = perIndex % column || column - 1;
setStyle($thumbnails, 'backgroundImage', `url(${url})`);
setStyle($thumbnails, 'backgroundImage', `url(${image.src})`);
setStyle($thumbnails, 'height', `${height2}px`);
setStyle($thumbnails, 'width', `${width2}px`);
setStyle($thumbnails, 'backgroundPosition', `-${xIndex * width2}px -${yIndex * height2}px`);
@@ -46,7 +45,7 @@ export default function thumbnailsMix(art) {
art.on('setBar', async (type, percentage, event) => {
const $thumbnails = art.controls?.thumbnails;
const { url } = option.thumbnails;
const { url, scale } = option.thumbnails;
if (!$thumbnails || !url) return;
const isMobileDroging = type === 'played' && event && isMobile;
@@ -54,7 +53,7 @@ export default function thumbnailsMix(art) {
if (type === 'hover' || isMobileDroging) {
if (!loading) {
loading = true;
image = await loadImg(url);
image = await loadImg(url, scale);
isLoad = true;
}
+13 -4
View File
@@ -22,6 +22,9 @@ export default function autoPlayback(art) {
const $last = query('.art-auto-playback-last', $autoPlayback);
const $jump = query('.art-auto-playback-jump', $autoPlayback);
const $close = query('.art-auto-playback-close', $autoPlayback);
append($close, icons.close);
let timer = null;
art.on('video:timeupdate', () => {
if (art.playing) {
@@ -35,11 +38,14 @@ export default function autoPlayback(art) {
}
});
art.on('ready', () => {
function init() {
const times = storage.get('times') || {};
const currentTime = times[art.option.id || art.option.url];
clearTimeout(timer);
setStyle($autoPlayback, 'display', 'none');
if (currentTime && currentTime >= constructor.AUTO_PLAYBACK_MIN) {
append($close, icons.close);
setStyle($autoPlayback, 'display', 'flex');
$last.innerText = `${i18n.get('Last Seen')} ${secondToTime(currentTime)}`;
@@ -57,12 +63,15 @@ export default function autoPlayback(art) {
});
art.once('video:timeupdate', () => {
setTimeout(() => {
timer = setTimeout(() => {
setStyle($autoPlayback, 'display', 'none');
}, constructor.AUTO_PLAYBACK_TIMEOUT);
});
}
});
}
art.on('ready', init);
art.on('restart', init);
return {
name: 'auto-playback',
+1
View File
@@ -104,6 +104,7 @@ export default {
column: n,
width: n,
height: n,
scale: n,
},
subtitle: {
url: s,
+3 -1
View File
@@ -42,10 +42,11 @@ export default class Subtitle extends Component {
}
get textTrack() {
return this.art.template.$video.textTracks[0];
return this.art.template.$video?.textTracks?.[0];
}
get activeCue() {
if (!this.textTrack) return null;
return this.textTrack.activeCues[0];
}
@@ -108,6 +109,7 @@ export default class Subtitle extends Component {
template: { $subtitle },
} = this.art;
if (!this.textTrack) return null;
validator(subtitleOption, scheme.subtitle);
if (!subtitleOption.url) return;
this.style(subtitleOption.style);
+41
View File
@@ -117,3 +117,44 @@ export function supportsFlex() {
export function getRect(el) {
return el.getBoundingClientRect();
}
export function loadImg(url, scale) {
return new Promise((resolve, reject) => {
const img = new Image();
img.crossOrigin = 'Anonymous';
img.onload = function () {
if (!scale || scale === 1) {
resolve(img);
} else {
const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
canvas.width = img.width * scale;
canvas.height = img.height * scale;
ctx.drawImage(img, 0, 0, canvas.width, canvas.height);
canvas.toBlob((blob) => {
const blobUrl = URL.createObjectURL(blob);
const scaledImg = new Image();
scaledImg.onload = function () {
resolve(scaledImg);
};
scaledImg.onerror = function () {
URL.revokeObjectURL(blobUrl);
reject(new Error(`Image load failed: ${url}`));
};
scaledImg.src = blobUrl;
});
}
};
img.onerror = function () {
reject(new Error(`Image load failed: ${url}`));
};
img.src = url;
});
}
-1
View File
@@ -118,7 +118,6 @@ declare class Artplayer extends Player {
options?: boolean | AddEventListenerOptions,
): () => void;
hover(element: HTMLElement, mouseenter?: (event: Event) => any, mouseleave?: (event: Event) => any): void;
loadImg(element: HTMLImageElement | string): Promise<HTMLImageElement>;
remove(event: Event): void;
};
+6 -1
View File
@@ -34,6 +34,11 @@ export type Thumbnails = {
* The thumbnail height
*/
height?: number;
/**
* The thumbnail scale
*/
scale?: number;
};
export type Option = {
@@ -210,7 +215,7 @@ export type Option = {
/**
* Custom video proxy
*/
proxy?: null | ((this: Artplayer, art: Artplayer) => HTMLCanvasElement | HTMLVideoElement);
proxy?: (this: Artplayer, art: Artplayer) => HTMLCanvasElement | HTMLVideoElement;
/**
* Custom plugin list
+1
View File
@@ -54,4 +54,5 @@ export type Utils = {
supportsFlex(): boolean;
setStyleText(element: HTMLElement, text: string): void;
getRect(el: HTMLElement): { top: number; left: number; width: number; height: number };
loadImg(url: string, scale?: Number): Promise<HTMLImageElement>;
};