Merge branch 'dev' into v1
This commit is contained in:
@@ -639,9 +639,7 @@ export default {
|
||||
this.setMediaDeviceId('default')
|
||||
})
|
||||
},
|
||||
handleDeviceChangeStopPlay(devices, device, mediaDeviceId) {
|
||||
if (!device) device = devices.find(device => device.deviceId === 'default')
|
||||
if (!device) device = { label: null }
|
||||
handleDeviceChangeStopPlay(device, mediaDeviceId) {
|
||||
// console.log(device)
|
||||
// console.log(this.setting.player.isMediaDeviceRemovedStopPlay, this.isPlay, device.label, this.prevDeviceLabel)
|
||||
if (
|
||||
@@ -654,10 +652,12 @@ export default {
|
||||
let mediaDeviceId = this.setting.player.mediaDeviceId
|
||||
const devices = await navigator.mediaDevices.enumerateDevices()
|
||||
let device = devices.find(device => device.deviceId === mediaDeviceId)
|
||||
this.handleDeviceChangeStopPlay(devices, device, mediaDeviceId)
|
||||
if (device) return
|
||||
if (!device) device = devices.find(device => device.deviceId === 'default')
|
||||
if (!device) device = { label: null, deviceId: null }
|
||||
|
||||
this.setMediaDeviceId('default')
|
||||
this.handleDeviceChangeStopPlay(device, mediaDeviceId)
|
||||
|
||||
this.setMediaDeviceId(device.deviceId)
|
||||
},
|
||||
handlePlayDetailAction({ type, data }) {
|
||||
switch (type) {
|
||||
|
||||
@@ -21,6 +21,7 @@ export default {
|
||||
},
|
||||
],
|
||||
regExps: {
|
||||
mInfo: /bitrate:(\d+),format:(\w+),size:([\w.]+)/,
|
||||
// http://www.kuwo.cn/playlist_detail/2886046289
|
||||
// https://m.kuwo.cn/h5app/playlist/2736267853?t=qqfriend
|
||||
listDetailLink: /^.+\/playlist(?:_detail)?\/(\d+)(?:\?.*|&.*$|#.*$|$)/,
|
||||
@@ -189,29 +190,42 @@ export default {
|
||||
})
|
||||
},
|
||||
filterListDetail(rawData) {
|
||||
// console.log(rawList)
|
||||
return rawData.map((item, inedx) => {
|
||||
let formats = item.formats.split('|')
|
||||
// console.log(rawData)
|
||||
return rawData.map(item => {
|
||||
let infoArr = item.MINFO.split(';')
|
||||
let types = []
|
||||
let _types = {}
|
||||
if (formats.includes('MP3128')) {
|
||||
types.push({ type: '128k', size: null })
|
||||
_types['128k'] = {
|
||||
size: null,
|
||||
}
|
||||
}
|
||||
if (formats.includes('MP3H')) {
|
||||
types.push({ type: '320k', size: null })
|
||||
_types['320k'] = {
|
||||
size: null,
|
||||
}
|
||||
}
|
||||
if (formats.includes('ALFLAC')) {
|
||||
types.push({ type: 'flac', size: null })
|
||||
_types.flac = {
|
||||
size: null,
|
||||
for (let info of infoArr) {
|
||||
info = info.match(this.regExps.mInfo)
|
||||
if (info) {
|
||||
switch (info[2]) {
|
||||
case 'flac':
|
||||
types.push({ type: 'flac', size: info[3] })
|
||||
_types.flac = {
|
||||
size: info[3].toLocaleUpperCase(),
|
||||
}
|
||||
break
|
||||
case 'mp3':
|
||||
switch (info[1]) {
|
||||
case '320':
|
||||
types.push({ type: '320k', size: info[3] })
|
||||
_types['320k'] = {
|
||||
size: info[3].toLocaleUpperCase(),
|
||||
}
|
||||
break
|
||||
case '192':
|
||||
case '128':
|
||||
types.push({ type: '128k', size: info[3] })
|
||||
_types['128k'] = {
|
||||
size: info[3].toLocaleUpperCase(),
|
||||
}
|
||||
break
|
||||
}
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
types.reverse()
|
||||
|
||||
return {
|
||||
singer: formatSinger(decodeName(item.artist)),
|
||||
|
||||
@@ -107,7 +107,7 @@ export const httpFetch = (url, options = { method: 'get' }) => {
|
||||
* @param {*} index
|
||||
*/
|
||||
export const cancelHttp = requestObj => {
|
||||
console.log(requestObj)
|
||||
// console.log(requestObj)
|
||||
if (!requestObj) return
|
||||
console.log('cancel:', requestObj.href)
|
||||
requestObj.abort()
|
||||
|
||||
Reference in New Issue
Block a user