Files
googlevideo/protos/video_streaming/video_playback_abr_request.proto
2024-09-15 08:50:38 -03:00

174 lines
4.2 KiB
Protocol Buffer

syntax = "proto3";
package video_streaming;
import "misc/common.proto";
import "video_streaming/time_range.proto";
message VideoPlaybackAbrRequest {
optional MediaInfo media_info = 1;
repeated .misc.FormatId format_ids = 2;
repeated Zpa ud = 3;
optional bytes video_playback_ustreamer_config = 5;
optional Lo lo = 6;
repeated .misc.FormatId audio_format_ids = 16;
repeated .misc.FormatId video_format_ids = 17;
optional Upa sc = 19;
optional OQa field21 = 21;
optional int32 field22 = 22;
optional int32 field23 = 23;
repeated Pqa field1000 = 1000;
}
message MediaInfo {
message MediaCapabilities {
repeated VideoFormatCapability video_format_capabilities = 1;
repeated AudioFormatCapability audio_format_capabilities = 2;
optional int32 hdr_mode_bitmask = 5;
message VideoFormatCapability {
optional int32 video_codec = 1;
optional int32 max_height = 3;
optional int32 max_width = 4;
optional int32 max_framerate = 11;
optional int32 max_bitrate_bps = 12;
optional bool is_10_bit_supported = 15;
}
message AudioFormatCapability {
optional int32 audio_codec = 1;
optional int32 num_channels = 2;
optional int32 max_bitrate_bps = 3;
optional int32 spatial_capability_bitmask = 6;
}
}
optional int32 time_since_last_manual_format_selection_ms = 13;
optional int32 last_manual_direction = 14;
optional int32 video_width = 16;
optional int32 detailed_network_type = 17;
optional int32 B7 = 18;
optional int32 A7 = 19;
optional int32 iea = 21;
optional int32 r7 = 23;
optional int32 startTimeMs = 28;
optional int32 zea = 29;
optional int32 visibility = 34;
optional int32 d8 = 36;
optional MediaCapabilities media_capabilities = 38;
optional int32 yea = 39;
// optional int32 Gw = 40;
optional MediaType media_type = 40;
optional int32 player_state = 44;
optional bool a8 = 46;
optional int32 Jda = 48;
optional int32 qw = 50;
optional int32 Ky = 51;
optional int32 Eq = 54;
optional bool l = 56;
optional int32 G7 = 57;
optional bool No = 58;
optional int32 qj = 59;
optional int32 Hx = 60;
optional bool is_prefetch = 61;
optional int32 Iz = 62;
optional bytes sabr_license_constraint = 63;
optional int32 l2 = 64;
optional int32 k2 = 66;
optional int32 Tqb = 67;
optional int32 c = 68;
enum MediaType {
MEDIA_TYPE_DEFAULT = 0;
MEDIA_TYPE_AUDIO = 1;
MEDIA_TYPE_VIDEO = 2;
}
}
message Lo {
message Field4 {
optional int32 field1 = 1;
optional int32 field2 = 2;
optional int32 field3 = 3;
}
optional .misc.FormatId format_id = 1;
optional int32 Lj = 2;
optional int32 sequence_number = 3;
optional Field4 field4 = 4;
optional int32 MZ = 5;
}
message Kob {
message Pa {
optional string video_id = 1;
optional uint64 lmt = 2;
}
repeated Pa EW = 1;
}
message YPa {
optional int32 field1 = 1;
optional int32 field2 = 2;
optional int32 field3 = 3;
}
message Zpa {
.misc.FormatId format_id = 1;
int64 start_time_ms = 2;
int64 duration_ms = 3;
int32 field4 = 4;
int32 sequence_number = 5;
optional TimeRange time_range = 6;
optional Kob field9 = 9;
optional YPa field11 = 11;
optional YPa field12 = 12;
}
message Upa {
message ClientInfo {
optional string device_make = 12;
optional string device_model = 13;
optional int32 client_name = 16;
optional string client_version = 17;
optional string os_name = 18;
optional string os_version = 19;
}
message Fqa {
optional int32 type = 1;
optional bytes value = 2;
}
message Gqa {
message Hqa {
optional int32 code = 1;
optional string message = 2;
}
optional bytes field1 = 1;
optional Hqa field2 = 2;
}
optional ClientInfo client_info = 1;
optional bytes po_token = 2;
optional bytes playback_cookie = 3;
optional bytes gp = 4;
repeated Fqa field5 = 5;
repeated int32 field6 = 6;
optional string field7 = 7;
optional Gqa field8 = 8;
}
message OQa {
repeated string field1 = 1;
optional bytes field2 = 2;
optional string field3 = 3;
optional int32 field4 = 4;
optional int32 field5 = 5;
optional string field6 = 6;
}
message Pqa {
repeated .misc.FormatId format_ids = 1;
repeated Zpa ud = 2;
optional string clip_id = 3;
}