// ==UserScript== // @name Emby Local Player // @namespace http://tampermonkey.net/ // @version 0.1.1 // @description Play video on Emby in local via Pot Player。 // @description:zh 调用本地的 Pot Player 来播放 Emby 中的视频。 // @author Cybit // @grant none // @match none // @downloadURL none // ==/UserScript== /* jshint esversion:8 */ class PotPlayer { constructor() { this.id = 'potplayer' this.type = 'mediaplayer' this.name = 'Pot Player' function dummy() {} for (const k of ['volume', 'isMuted', 'paused', 'currentTime', 'currentSrc']) { this[k] = dummy; } } canPlayMediaType() { return true; } canPlayItem() { return true; } async play(item, options) { console.log(item, options); const potUrl = `potplayer://${encodeURI(item.url)}`; window.open(potUrl, '_blank'); } async stop() {} async getDeviceProfile(item, options) { return null; } } (async function() { 'use strict'; while (!window.require || !window.ConnectionManager) { await new Promise(resolve => setTimeout(resolve, 500)); } window.require(['pluginManager'], (pluginManager) => { pluginManager.register(new PotPlayer()); console.log('Pot Player plugin registered'); }) })();