52 lines
1.4 KiB
Go
52 lines
1.4 KiB
Go
package consts
|
|
|
|
// Resolution 视频分辨率
|
|
type Resolution string
|
|
|
|
const (
|
|
Resolution480P Resolution = "480p" // 标清
|
|
Resolution720P Resolution = "720p" // 高清
|
|
Resolution1080P Resolution = "1080p" // 全高清
|
|
Resolution2K Resolution = "2k" // 2K超清
|
|
Resolution4K Resolution = "4k" // 4K超高清
|
|
Resolution8K Resolution = "8k" // 8K超高清
|
|
)
|
|
|
|
// Text 获取分辨率文本描述
|
|
func (r Resolution) Text() string {
|
|
switch r {
|
|
case Resolution480P:
|
|
return "标清 (480p)"
|
|
case Resolution720P:
|
|
return "高清 (720p)"
|
|
case Resolution1080P:
|
|
return "全高清 (1080p)"
|
|
case Resolution2K:
|
|
return "2K超清 (1440p)"
|
|
case Resolution4K:
|
|
return "4K超高清 (2160p)"
|
|
case Resolution8K:
|
|
return "8K超高清 (4320p)"
|
|
default:
|
|
return string(r)
|
|
}
|
|
}
|
|
|
|
// ResolutionKeyValue 分辨率键值对(用于前端选项)
|
|
type ResolutionKeyValue struct {
|
|
Key string `json:"key"`
|
|
Value string `json:"value"`
|
|
}
|
|
|
|
// GetResolutionOptions 获取所有分辨率选项
|
|
func GetResolutionOptions() []ResolutionKeyValue {
|
|
return []ResolutionKeyValue{
|
|
{Key: string(Resolution480P), Value: Resolution480P.Text()},
|
|
{Key: string(Resolution720P), Value: Resolution720P.Text()},
|
|
{Key: string(Resolution1080P), Value: Resolution1080P.Text()},
|
|
{Key: string(Resolution2K), Value: Resolution2K.Text()},
|
|
{Key: string(Resolution4K), Value: Resolution4K.Text()},
|
|
{Key: string(Resolution8K), Value: Resolution8K.Text()},
|
|
}
|
|
}
|