add: new united playurl grpc interface (#642)

This commit is contained in:
陈寒彤
2023-03-28 04:08:46 +03:00
committed by GitHub
parent 280f69f7ee
commit 28e8a7cbf0
6 changed files with 2590 additions and 2485 deletions

View File

@@ -0,0 +1,14 @@
syntax = "proto3";
package bilibili.app.playerunite.pgcanymodel;
import "bilibili/pgc/gateway/player/v2/playurl.proto";
message PGCAnyModel {
bilibili.pgc.gateway.player.v2.PlayViewBusinessInfo business = 3;
bilibili.pgc.gateway.player.v2.Event event = 4;
bilibili.pgc.gateway.player.v2.ViewInfo view_info = 5;
bilibili.pgc.gateway.player.v2.PlayAbilityExtConf play_ext_conf = 6;
bilibili.pgc.gateway.player.v2.PlayExtInfo play_ext_info = 7;
}

View File

@@ -0,0 +1,27 @@
syntax = "proto3";
package bilibili.app.playerunite.ugcanymodel;
message ButtonStyle {
string text = 1;
string text_color = 2;
string bg_color = 3;
string jump_link = 4;
}
enum PlayLimitCode {
PLC_UNKNOWN = 0;
PLC_NOTPAYED = 1;
}
message PlayLimit {
PlayLimitCode code = 1;
string message = 2;
string sub_message = 3;
ButtonStyle button = 4;
}
message UGCAnyModel {
PlayLimit play_limit = 1;
}

View File

@@ -0,0 +1,45 @@
syntax = "proto3";
package bilibili.app.playerunite.v1;
import "bilibili/playershared/playershared.proto";
import "google/protobuf/any.proto";
// 统一视频url
service Player {
// 视频地址
rpc PlayViewUnite (PlayViewUniteReq) returns (PlayViewUniteReply);
}
//
message PlayViewUniteReq {
// 请求资源VOD信息
bilibili.playershared.VideoVod vod = 1;
//
string spmid = 2;
//
string from_spmid = 3;
// 补充信息, 如ep_id等
map<string, string> extra_content = 4;
}
//
message PlayViewUniteReply {
// 音视频流信息
bilibili.playershared.VodInfo vod_info = 1;
//
bilibili.playershared.PlayArcConf play_arc_conf = 2;
//
bilibili.playershared.PlayDeviceConf play_device_conf = 3;
//
bilibili.playershared.Event event = 4;
// 使用 pgcanymodel / ugcanymodel 进行proto any转换成对应业务码结构体
google.protobuf.Any supplement = 5;
//
bilibili.playershared.PlayArc play_arc = 6;
//
bilibili.playershared.QnTrialInfo qn_trial_info = 7;
//
bilibili.playershared.History history = 8;
}

View File

@@ -2,17 +2,27 @@ syntax = "proto3";
package bilibili.playershared;
//
message ArcConf {
bool is_support = 1;
bool disable = 2;
ExtraContent extra_connent = 3;
ExtraContent extra_content = 3;
repeated int32 unsupport_scene = 4;
}
// 按钮组件
message Button {
// 按钮文本
string text = 1;
// 按钮跳转链接
string link = 2;
// 埋点上报相关
map<string, string> report_params = 3;
}
// 视频编码
enum CodeType {
NOCODE = 0; //
NOCODE = 0; // 不指定
CODE264 = 1; // H264
CODE265 = 2; // H265
CODEAV1 = 3; // AV1
@@ -59,15 +69,17 @@ enum ConfType {
LISTEN = 36;
}
//
message ConfValue {
oneof value {
// dash
// DASH
int32 switch_val = 1;
// 分段流
int32 selected_val = 2;
}
}
//
message DeviceConf {
ConfValue conf_value = 1;
}
@@ -94,15 +106,22 @@ message ExtraContent {
// 播放历史
message History {
// 播放进度
uint64 progress = 1;
//
string toast = 2;
HistoryInfo current_video = 1;
//
uint64 last_play_cid = 3;
HistoryInfo related_video = 2;
}
message HistoryInfo {
//
int64 progress = 1;
//
int64 last_play_cid = 2;
}
//
message PlayDeviceConf {
//
map<int32, DeviceConf> arc_confs = 1;
}
@@ -118,7 +137,9 @@ message Scheme {
UNKNOWN = 0;
SHOW_TOAST = 1;
}
//
ActionType action_type = 1;
//
string toast = 2;
}
@@ -337,7 +358,7 @@ message DolbyItem {
// 杜比类型
Type type = 1;
// 音频流
DashItem audio = 2;
repeated DashItem audio = 2;
}
// HIRES伴音流信息
@@ -370,21 +391,19 @@ message VolumeInfo {
//
message PlayArc {
//
VideoType video_type = 1;
//
uint64 aid = 2;
//
uint64 cid = 3;
//
DrmTechType drm_tech_type = 4;
}
// 播放页信息-响应: PlayArcConf
message PlayArcConf {
map<int32, PlayArc> arc_confs = 1;
}
// 高画质试看信息: 按钮
message QnTrialButton {
string text = 1;
string link = 2;
map<int32, ArcConf> arc_confs = 1;
}
// 播放页信息-响应: 高画质试看信息
@@ -398,19 +417,19 @@ message QnTrialInfo {
//
int32 time_length = 4;
//
QnTrialToast start_toast = 5;
Toast start_toast = 5;
//
QnTrialToast end_toast = 6;
Toast end_toast = 6;
//
QnTrialButton quality_open_tip_btn = 8;
Button quality_open_tip_btn = 8;
}
// 高画质试看信息: Toast信息
message QnTrialToast {
// toast文案 老字段
// Toast信息
message Toast {
// toast文案
string text = 1;
// toast按钮
QnTrialButton button = 2;
Button button = 2;
}
// 事件

View File

@@ -2,11 +2,11 @@ syntax = "proto3";
package bilibili.web.interfaces.v1;
//
// 用户信息
message AccInfo {
//
// 用户UID
int64 mid = 1;
//
// 用户昵称
string name = 2;
//
string sex = 3;