完善音频输出设置功能
This commit is contained in:
@@ -153,7 +153,7 @@ export default {
|
||||
'setting.player.togglePlayMethod'(n) {
|
||||
this.audio.loop = n === 'singleLoop'
|
||||
},
|
||||
'setting.player.mediaDeviceName'(n) {
|
||||
'setting.player.mediaDeviceId'(n) {
|
||||
this.setMediaDevice()
|
||||
},
|
||||
list(n, o) {
|
||||
@@ -578,10 +578,10 @@ export default {
|
||||
this.mediaBuffer.playTime = 0
|
||||
},
|
||||
async setMediaDevice() {
|
||||
let mediaDeviceName = this.setting.player.mediaDeviceName
|
||||
if (!mediaDeviceName) return
|
||||
let mediaDeviceId = this.setting.player.mediaDeviceId
|
||||
if (!mediaDeviceId) return
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
let device = devices.find(device => device.label === mediaDeviceName)
|
||||
let device = devices.find(device => device.deviceId === mediaDeviceId)
|
||||
if (!device) return this.setMediaDeviceId('default')
|
||||
console.log(device)
|
||||
this.audio.setSinkId(device.deviceId).catch((err) => {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template lang="pug">
|
||||
div(:class="[$style.select, show ? $style.active : '']")
|
||||
div(:class="$style.label" ref="dom_btn" @click="handleShow") {{label}}
|
||||
ul(:class="$style.list")
|
||||
ul.scroll(:class="$style.list")
|
||||
li(v-for="item in list" :class="(itemKey ? item[itemKey] : item) == value ? $style.active : null" @click="handleClick(item)" :title="itemName ? item[itemName] : item") {{itemName ? item[itemName] : item}}
|
||||
</template>
|
||||
|
||||
@@ -121,8 +121,9 @@ export default {
|
||||
transition-property: transform, opacity;
|
||||
z-index: 10;
|
||||
border-radius: @form-radius;
|
||||
overflow: hidden;
|
||||
box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
|
||||
box-shadow: 0 0 4px rgba(0, 0, 0, .15);
|
||||
overflow: auto;
|
||||
max-height: 200px;
|
||||
|
||||
li {
|
||||
cursor: pointer;
|
||||
|
||||
@@ -566,7 +566,7 @@ export default {
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
const audioDevices = devices.filter(device => device.kind === 'audiooutput')
|
||||
this.mediaDevices = audioDevices
|
||||
console.log(this.mediaDevices)
|
||||
// console.log(this.mediaDevices)
|
||||
},
|
||||
handleMediaDeviceChange(audioDevice) {
|
||||
this.setMediaDeviceId(audioDevice.deviceId)
|
||||
|
||||
Reference in New Issue
Block a user