mirror of
https://github.com/AynaLivePlayer/miaosic.git
synced 2025-12-06 13:02:48 +08:00
update netease qualities
This commit is contained in:
@@ -191,6 +191,7 @@ func (k *Kugou) quality2str(quality miaosic.Quality) string {
|
||||
return qualityStr
|
||||
}
|
||||
|
||||
// todo using new api https://github.com/MakcRe/KuGouMusicApi/blob/main/module/song_url_new.js
|
||||
func (k *Kugou) GetMediaUrl(meta miaosic.MetaData, quality miaosic.Quality) ([]miaosic.MediaUrl, error) {
|
||||
//albumId := jsonResp.Get("data.0.audio_id").String()
|
||||
currentUnix := time.Now().UnixMilli()
|
||||
|
||||
@@ -8,6 +8,7 @@ import (
|
||||
neteaseUtil "github.com/XiaoMengXinX/Music163Api-Go/utils"
|
||||
"github.com/spf13/cast"
|
||||
"regexp"
|
||||
"slices"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
@@ -21,7 +22,14 @@ type Netease struct {
|
||||
}
|
||||
|
||||
func (n *Netease) Qualities() []miaosic.Quality {
|
||||
return []miaosic.Quality{miaosic.QualityAny}
|
||||
return []miaosic.Quality{
|
||||
QualityStandard,
|
||||
QualityHigher,
|
||||
QualityExHigh,
|
||||
QualityLossless,
|
||||
QualityHiRes,
|
||||
QualityJyMaster,
|
||||
}
|
||||
}
|
||||
|
||||
func NewNetease() *Netease {
|
||||
@@ -118,10 +126,20 @@ func (n *Netease) GetMediaInfo(meta miaosic.MetaData) (media miaosic.MediaInfo,
|
||||
return media, nil
|
||||
}
|
||||
|
||||
func (n *Netease) quality2str(quality miaosic.Quality) string {
|
||||
if slices.Contains(n.Qualities(), quality) {
|
||||
return string(quality)
|
||||
}
|
||||
return "standard"
|
||||
}
|
||||
|
||||
func (n *Netease) GetMediaUrl(meta miaosic.MetaData, quality miaosic.Quality) ([]miaosic.MediaUrl, error) {
|
||||
result, err := neteaseApi.GetSongURL(
|
||||
n.ReqData,
|
||||
neteaseApi.SongURLConfig{Ids: []int{cast.ToInt(meta.Identifier)}})
|
||||
neteaseApi.SongURLConfig{
|
||||
Ids: []int{cast.ToInt(meta.Identifier)},
|
||||
Level: n.quality2str(quality),
|
||||
})
|
||||
if err != nil || result.Code != 200 {
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -136,9 +154,13 @@ func (n *Netease) GetMediaUrl(meta miaosic.MetaData, quality miaosic.Quality) ([
|
||||
}
|
||||
urls := make([]miaosic.MediaUrl, 0)
|
||||
for _, u := range result.Data {
|
||||
qualityStr, ok := u.Level.(string)
|
||||
if !ok {
|
||||
qualityStr = "unknown"
|
||||
}
|
||||
urls = append(urls, miaosic.MediaUrl{
|
||||
Url: u.Url,
|
||||
Quality: miaosic.QualityUnk,
|
||||
Quality: miaosic.Quality(qualityStr),
|
||||
})
|
||||
}
|
||||
return urls, nil
|
||||
|
||||
18
providers/netease/quality.go
Normal file
18
providers/netease/quality.go
Normal file
@@ -0,0 +1,18 @@
|
||||
package netease
|
||||
|
||||
import "github.com/AynaLivePlayer/miaosic"
|
||||
|
||||
// todo jyeffect => 高清环绕声, Audio Vivid, 高清臻音(spatial audio)
|
||||
|
||||
// 如果不存在会获取最高的
|
||||
const (
|
||||
// 音质
|
||||
QualityStandard miaosic.Quality = "standard" // 标准 128kbps vip
|
||||
QualityHigher miaosic.Quality = "higher" // 较高 vip
|
||||
QualityExHigh miaosic.Quality = "exhigh" // 极高(HQ) 最高320kbps vip
|
||||
QualityLossless miaosic.Quality = "lossless" // 无损(SQ) 最高 48kHz/16bit vip
|
||||
QualityHiRes miaosic.Quality = "hires" // 高解析度无损(Hi-Res) 最高192kHz/24bit vip
|
||||
QualityJyMaster miaosic.Quality = "jymaster" // 超清母带 192kHz/24bit svip
|
||||
// 空间音感
|
||||
QualitySky miaosic.Quality = "sky" // 沉浸环绕声 Surround Audio svip
|
||||
)
|
||||
Reference in New Issue
Block a user