添加第三方播放器路径设置

This commit is contained in:
haiyangcui
2020-08-25 14:38:46 +02:00
parent 5b8d883af4
commit 3f2def4455
2 changed files with 42 additions and 5 deletions

View File

@@ -544,9 +544,14 @@ export default {
playWithExternalPalyerEvent () {
this.fetchM3u8List().then(m3u8Arr => {
var m3u8Link = m3u8Arr[this.video.info.index]
var potPlayer = 'C:\\Program Files\\DAUM/PotPlayer\\PotPlayerMini64.exe'
var exec = require('child_process').execFile
exec(potPlayer, [m3u8Link])
const fs = require('fs')
var externalPlayer = this.setting.externalPlayer
if (fs.existsSync(externalPlayer)) {
var exec = require('child_process').execFile
exec(externalPlayer, [m3u8Link])
} else {
this.$message.error('请设置第三方播放器路径')
}
})
},
checkStar () {

View File

@@ -61,6 +61,14 @@
<input type="checkbox" v-model="setting.searchAllSites" @change="updateSearchOption($event)"> 搜索所有资源
</div>
</div>
<div class='site'>
<div class="title">第三方播放器</div>
<div class="site-box">
<div class="zy-select">
<div class="vs-placeholder vs-noAfter" @click="selectExternalPlayer">选择</div>
</div>
</div>
</div>
<div class="site">
<div class="title">源管理</div>
<div class="site-box">
@@ -155,7 +163,8 @@ export default {
theme: '',
shortcut: true,
searchAllSites: true,
view: 'picture'
view: 'picture',
externalPlayer: ''
}
}
},
@@ -182,7 +191,8 @@ export default {
theme: res.theme,
shortcut: res.shortcut,
view: res.view,
searchAllSites: res.searchAllSites
searchAllSites: res.searchAllSites,
externalPlayer: res.externalPlayer
}
this.setting = this.d
})
@@ -267,6 +277,28 @@ export default {
this.$message.error(err)
})
},
selectExternalPlayer () {
const options = {
filters: [
{ name: 'Executable file', extensions: ['exe'] },
{ name: 'All types', extensions: ['*'] }
],
properties: ['openFile']
}
remote.dialog.showOpenDialog(options).then(result => {
if (!result.canceled) {
var playerPath = result.filePaths[0].replace(/\\/g, '/')
this.$message.success(result.filePaths[0])
this.$message.success('设定第三方播放器路径为:' + result.filePaths[0])
this.d.externalPlayer = playerPath
setting.update(this.d).then(res => {
this.setting = this.d
})
}
}).catch(err => {
this.$message.error(err)
})
},
expSites () {
const arr = [...this.sitesList]
const str = JSON.stringify(arr, null, 4)