diff --git a/src/renderer/components/core/Player.vue b/src/renderer/components/core/Player.vue index e3967892..6609056b 100644 --- a/src/renderer/components/core/Player.vue +++ b/src/renderer/components/core/Player.vue @@ -582,11 +582,11 @@ export default { if (!mediaDeviceName) return const devices = await navigator.mediaDevices.enumerateDevices() let device = devices.find(device => device.label === mediaDeviceName) - if (!device) return this.setMediaDeviceId(null) + if (!device) return this.setMediaDeviceId('default') console.log(device) this.audio.setSinkId(device.deviceId).catch((err) => { console.log(err) - this.setMediaDeviceId(null) + this.setMediaDeviceId('default') }) }, handleSetTransition() { diff --git a/src/renderer/components/material/Selection.vue b/src/renderer/components/material/Selection.vue index aefec186..8cf08817 100644 --- a/src/renderer/components/material/Selection.vue +++ b/src/renderer/components/material/Selection.vue @@ -40,8 +40,8 @@ export default { label() { if (!this.value) return '' if (!this.itemName) return this.value - const item = this.list.find(l => l.id == this.value) - if (!item) return this.value + const item = this.list.find(l => l[this.itemKey] == this.value) + if (!item) return '' return item[this.itemName] }, }, diff --git a/src/renderer/utils/index.js b/src/renderer/utils/index.js index 5491147b..d4ed8e09 100644 --- a/src/renderer/utils/index.js +++ b/src/renderer/utils/index.js @@ -190,7 +190,7 @@ export const updateSetting = (setting, version) => { highQuality: false, isShowTaskProgess: true, volume: 1, - mediaDeviceId: null, + mediaDeviceId: 'default', }, list: { isShowAlbumName: true, diff --git a/src/renderer/views/Setting.vue b/src/renderer/views/Setting.vue index 968321ed..c2c026b6 100644 --- a/src/renderer/views/Setting.vue +++ b/src/renderer/views/Setting.vue @@ -52,7 +52,7 @@ div.scroll(:class="$style.setting") dd(:title="$t('view.setting.play_mediaDevice_title')") h3 {{$t('view.setting.play_mediaDevice')}} div - material-selection(:list="mediaDevices" @change="handleMediaDeviceChange" v-model="current_setting.player.mediaDeviceName" item-key="label" item-name="label") + material-selection(:list="mediaDevices" @change="handleMediaDeviceChange" v-model="current_setting.player.mediaDeviceId" item-key="deviceId" item-name="label") dt {{$t('view.setting.list')}} dd(:title="$t('view.setting.list_source_title')") @@ -289,7 +289,7 @@ export default { highQuality: false, isShowTaskProgess: true, volume: 1, - mediaDeviceName: null, + mediaDeviceId: 'default', }, list: { isShowAlbumName: true,