From d4e23a3e75fc8f0dddfbc4d66a2a371c949dcec4 Mon Sep 17 00:00:00 2001 From: vapormusic Date: Wed, 14 Sep 2022 23:57:48 +0700 Subject: [PATCH] improved radio support --- src/renderer/main/vueapp.js | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/src/renderer/main/vueapp.js b/src/renderer/main/vueapp.js index f90b176f..c3aff1d4 100644 --- a/src/renderer/main/vueapp.js +++ b/src/renderer/main/vueapp.js @@ -20,6 +20,7 @@ const app = new Vue({ pluginMenuEntries: [], lz: ipcRenderer.sendSync("get-i18n", "en_US"), lzListing: ipcRenderer.sendSync("get-i18n-listing"), + radiohls: null, search: { term: "", cursor: -1, @@ -5056,7 +5057,35 @@ const app = new Vue({ }); // Load first source let src = sources[0]; - app.mk._services.mediaItemPlayback._currentPlayer._playAssetURL(src, false); + if (src.includes("http")){ + app.mk._services.mediaItemPlayback._currentPlayer._playAssetURL(src, false);} else { + if (Hls.isSupported()) { + let d = "WIDEVINE_SOFTWARE" + let h = { + initDataTypes: ["cenc", "keyids"], + distinctiveIdentifier: "optional", + persistentState: "required" + } + let p = { + platformInfo: { requiresCDMAttachOnStart: !0, maxSecurityLevel: d, keySystemConfig: h }, + appData: { serviceName: "Apple Music" } + } + if (app.radiohls != null && app.radiohls.destroy != null){ + app.radiohls.destroy() + setTimeout(()=>{ + app.radiohls = new CiderHls(); + app.radiohls.loadSource(e); + app.radiohls.attachMedia(app.mk._services.mediaItemPlayback._currentPlayer._targetElement); + app.mk._services.mediaItemPlayback._currentPlayer._targetElement.play()},500) + } else { + app.radiohls = new CiderHls(); + app.radiohls.loadSource(e); + app.radiohls.attachMedia(app.mk._services.mediaItemPlayback._currentPlayer._targetElement); + app.mk._services.mediaItemPlayback._currentPlayer._targetElement.play()} + } + } + + } } },