123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- package model
- // Playurl is http://git.bilibili.co/video/playurl_doc/blob/master/PlayurlV2%E6%8E%A5%E5%8F%A3%E6%96%87%E6%A1%A3.md
- type Playurl struct {
- From string `json:"from"`
- Result string `json:"result"`
- Quality int64 `json:"quality"`
- Format string `json:"format"`
- Timelength int64 `json:"timelength"`
- AcceptFormat string `json:"accept_format"`
- AcceptDescription []string `json:"accept_description,omitempty"`
- AcceptQuality []int64 `json:"accept_quality"`
- VideoCodecid int `json:"video_codecid"`
- Fnver int `json:"fnver"`
- Fnval int `json:"fnval"`
- VideoProject bool `json:"video_project"`
- SeekParam string `json:"seek_param"`
- SeekType string `json:"seek_type"`
- Abtid int `json:"abtid,omitempty"`
- Durl []*Durl `json:"durl,omitempty"`
- Dash *Dash `json:"dash,omitempty"`
- }
- // FormatDash dash 驼峰 -> 下划线
- func (p *Playurl) FormatDash() {
- if p.Dash != nil {
- var as, vs []*DashItem
- for _, a := range p.Dash.Audio {
- as = append(as, &DashItem{
- ID: a.ID,
- BaseURL: a.BaseURLRes,
- BackupURL: a.BackupURLRes,
- Bandwidth: a.Bandwidth,
- Codecid: a.Codecid,
- })
- }
- for _, v := range p.Dash.Video {
- vs = append(vs, &DashItem{
- ID: v.ID,
- BaseURL: v.BaseURLRes,
- BackupURL: v.BackupURLRes,
- Bandwidth: v.Bandwidth,
- Codecid: v.Codecid,
- })
- }
- p.Dash.Audio = as
- p.Dash.Video = vs
- }
- }
- // Durl is
- type Durl struct {
- Order int `json:"order"`
- Length int64 `json:"length"`
- Size int64 `json:"size"`
- AHead string `json:"ahead,omitempty"`
- VHead string `json:"vhead,omitempty"`
- URL string `json:"url"`
- BackupURL []string `json:"backup_url,omitempty"`
- }
- //Param is
- type Param struct {
- AID int64 `form:"aid"`
- CID int64 `form:"cid"`
- Qn int64 `form:"qn"`
- Npcybs int `form:"npcybs"`
- Otype string `form:"otype"`
- MobiApp string `form:"mobi_app"`
- Fnver int `form:"fnver"`
- Fnval int `form:"fnval"`
- Session string `form:"session"`
- Build int `form:"build"`
- Device string `form:"device"`
- ForceHost int `form:"force_host"`
- }
- // Dash is
- type Dash struct {
- Video []*DashItem `json:"video"`
- Audio []*DashItem `json:"audio"`
- }
- // DashItem is
- type DashItem struct {
- ID int64 `json:"id"`
- BaseURL string `json:"base_url"`
- BackupURL []string `json:"backup_url,omitempty"`
- BaseURLRes string `json:"baseUrl,omitempty"`
- BackupURLRes []string `json:"backupUrl,omitempty"`
- Bandwidth int64 `json:"bandwidth"`
- Codecid int64 `json:"codecid"`
- }
|