Files
googlevideo/protos/generated/video_streaming/client_abr_state.ts
Luan c240c97c23 fix(generate-proto): Use forceLong=string option
Noticed YouTube returning very large int64 values, causing the protobuf library to throw.
2025-09-14 19:58:07 -03:00

660 lines
19 KiB
TypeScript

// Code generated by protoc-gen-ts_proto. DO NOT EDIT.
// versions:
// protoc-gen-ts_proto v2.7.5
// protoc v5.28.0
// source: video_streaming/client_abr_state.proto
/* eslint-disable */
import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
import {
AudioQuality,
NetworkMeteredState,
PlaybackAudioRouteOutputType,
PlaybackAuthorization,
VideoQualitySetting,
} from "../misc/common.js";
import { MediaCapabilities } from "./media_capabilities.js";
export const protobufPackage = "video_streaming";
export interface ClientAbrState {
timeSinceLastManualFormatSelectionMs?: string | undefined;
lastManualDirection?: number | undefined;
lastManualSelectedResolution?: number | undefined;
detailedNetworkType?: number | undefined;
clientViewportWidth?: number | undefined;
clientViewportHeight?: number | undefined;
clientBitrateCapBytesPerSec?: string | undefined;
stickyResolution?: number | undefined;
clientViewportIsFlexible?: boolean | undefined;
bandwidthEstimate?: string | undefined;
minAudioQuality?: AudioQuality | undefined;
maxAudioQuality?: AudioQuality | undefined;
videoQualitySetting?: VideoQualitySetting | undefined;
audioRoute?: PlaybackAudioRouteOutputType | undefined;
playerTimeMs?: string | undefined;
timeSinceLastSeek?: string | undefined;
dataSaverMode?: boolean | undefined;
networkMeteredState?: NetworkMeteredState | undefined;
visibility?: number | undefined;
playbackRate?: number | undefined;
elapsedWallTimeMs?: string | undefined;
mediaCapabilities?: MediaCapabilities | undefined;
timeSinceLastActionMs?: string | undefined;
enabledTrackTypesBitfield?: number | undefined;
maxPacingRate?: number | undefined;
playerState?: string | undefined;
drcEnabled?: boolean | undefined;
field48?: number | undefined;
field50?: number | undefined;
field51?: number | undefined;
sabrReportRequestCancellationInfo?: number | undefined;
disableStreamingXhr?: boolean | undefined;
field57?: string | undefined;
preferVp9?:
| boolean
| undefined;
/** 2160 */
av1QualityThreshold?: number | undefined;
field60?: number | undefined;
isPrefetch?: boolean | undefined;
sabrSupportQualityConstraints?: boolean | undefined;
sabrLicenseConstraint?: Uint8Array | undefined;
allowProximaLiveLatency?: number | undefined;
sabrForceProxima?: number | undefined;
field67?: number | undefined;
sabrForceMaxNetworkInterruptionDurationMs?: string | undefined;
audioTrackId?: string | undefined;
enableVoiceBoost?: boolean | undefined;
playbackAuthorization?: PlaybackAuthorization | undefined;
}
function createBaseClientAbrState(): ClientAbrState {
return {
timeSinceLastManualFormatSelectionMs: "0",
lastManualDirection: 0,
lastManualSelectedResolution: 0,
detailedNetworkType: 0,
clientViewportWidth: 0,
clientViewportHeight: 0,
clientBitrateCapBytesPerSec: "0",
stickyResolution: 0,
clientViewportIsFlexible: false,
bandwidthEstimate: "0",
minAudioQuality: 0,
maxAudioQuality: 0,
videoQualitySetting: 0,
audioRoute: 0,
playerTimeMs: "0",
timeSinceLastSeek: "0",
dataSaverMode: false,
networkMeteredState: 0,
visibility: 0,
playbackRate: 0,
elapsedWallTimeMs: "0",
mediaCapabilities: undefined,
timeSinceLastActionMs: "0",
enabledTrackTypesBitfield: 0,
maxPacingRate: 0,
playerState: "0",
drcEnabled: false,
field48: 0,
field50: 0,
field51: 0,
sabrReportRequestCancellationInfo: 0,
disableStreamingXhr: false,
field57: "0",
preferVp9: false,
av1QualityThreshold: 0,
field60: 0,
isPrefetch: false,
sabrSupportQualityConstraints: false,
sabrLicenseConstraint: new Uint8Array(0),
allowProximaLiveLatency: 0,
sabrForceProxima: 0,
field67: 0,
sabrForceMaxNetworkInterruptionDurationMs: "0",
audioTrackId: "",
enableVoiceBoost: false,
playbackAuthorization: undefined,
};
}
export const ClientAbrState: MessageFns<ClientAbrState> = {
encode(message: ClientAbrState, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
if (
message.timeSinceLastManualFormatSelectionMs !== undefined && message.timeSinceLastManualFormatSelectionMs !== "0"
) {
writer.uint32(104).int64(message.timeSinceLastManualFormatSelectionMs);
}
if (message.lastManualDirection !== undefined && message.lastManualDirection !== 0) {
writer.uint32(112).sint32(message.lastManualDirection);
}
if (message.lastManualSelectedResolution !== undefined && message.lastManualSelectedResolution !== 0) {
writer.uint32(128).int32(message.lastManualSelectedResolution);
}
if (message.detailedNetworkType !== undefined && message.detailedNetworkType !== 0) {
writer.uint32(136).int32(message.detailedNetworkType);
}
if (message.clientViewportWidth !== undefined && message.clientViewportWidth !== 0) {
writer.uint32(144).int32(message.clientViewportWidth);
}
if (message.clientViewportHeight !== undefined && message.clientViewportHeight !== 0) {
writer.uint32(152).int32(message.clientViewportHeight);
}
if (message.clientBitrateCapBytesPerSec !== undefined && message.clientBitrateCapBytesPerSec !== "0") {
writer.uint32(160).int64(message.clientBitrateCapBytesPerSec);
}
if (message.stickyResolution !== undefined && message.stickyResolution !== 0) {
writer.uint32(168).int32(message.stickyResolution);
}
if (message.clientViewportIsFlexible !== undefined && message.clientViewportIsFlexible !== false) {
writer.uint32(176).bool(message.clientViewportIsFlexible);
}
if (message.bandwidthEstimate !== undefined && message.bandwidthEstimate !== "0") {
writer.uint32(184).int64(message.bandwidthEstimate);
}
if (message.minAudioQuality !== undefined && message.minAudioQuality !== 0) {
writer.uint32(192).int32(message.minAudioQuality);
}
if (message.maxAudioQuality !== undefined && message.maxAudioQuality !== 0) {
writer.uint32(200).int32(message.maxAudioQuality);
}
if (message.videoQualitySetting !== undefined && message.videoQualitySetting !== 0) {
writer.uint32(208).int32(message.videoQualitySetting);
}
if (message.audioRoute !== undefined && message.audioRoute !== 0) {
writer.uint32(216).int32(message.audioRoute);
}
if (message.playerTimeMs !== undefined && message.playerTimeMs !== "0") {
writer.uint32(224).int64(message.playerTimeMs);
}
if (message.timeSinceLastSeek !== undefined && message.timeSinceLastSeek !== "0") {
writer.uint32(232).int64(message.timeSinceLastSeek);
}
if (message.dataSaverMode !== undefined && message.dataSaverMode !== false) {
writer.uint32(240).bool(message.dataSaverMode);
}
if (message.networkMeteredState !== undefined && message.networkMeteredState !== 0) {
writer.uint32(256).int32(message.networkMeteredState);
}
if (message.visibility !== undefined && message.visibility !== 0) {
writer.uint32(272).int32(message.visibility);
}
if (message.playbackRate !== undefined && message.playbackRate !== 0) {
writer.uint32(285).float(message.playbackRate);
}
if (message.elapsedWallTimeMs !== undefined && message.elapsedWallTimeMs !== "0") {
writer.uint32(288).int64(message.elapsedWallTimeMs);
}
if (message.mediaCapabilities !== undefined) {
MediaCapabilities.encode(message.mediaCapabilities, writer.uint32(306).fork()).join();
}
if (message.timeSinceLastActionMs !== undefined && message.timeSinceLastActionMs !== "0") {
writer.uint32(312).int64(message.timeSinceLastActionMs);
}
if (message.enabledTrackTypesBitfield !== undefined && message.enabledTrackTypesBitfield !== 0) {
writer.uint32(320).int32(message.enabledTrackTypesBitfield);
}
if (message.maxPacingRate !== undefined && message.maxPacingRate !== 0) {
writer.uint32(344).int32(message.maxPacingRate);
}
if (message.playerState !== undefined && message.playerState !== "0") {
writer.uint32(352).int64(message.playerState);
}
if (message.drcEnabled !== undefined && message.drcEnabled !== false) {
writer.uint32(368).bool(message.drcEnabled);
}
if (message.field48 !== undefined && message.field48 !== 0) {
writer.uint32(384).int32(message.field48);
}
if (message.field50 !== undefined && message.field50 !== 0) {
writer.uint32(400).int32(message.field50);
}
if (message.field51 !== undefined && message.field51 !== 0) {
writer.uint32(408).int32(message.field51);
}
if (message.sabrReportRequestCancellationInfo !== undefined && message.sabrReportRequestCancellationInfo !== 0) {
writer.uint32(432).int32(message.sabrReportRequestCancellationInfo);
}
if (message.disableStreamingXhr !== undefined && message.disableStreamingXhr !== false) {
writer.uint32(448).bool(message.disableStreamingXhr);
}
if (message.field57 !== undefined && message.field57 !== "0") {
writer.uint32(456).int64(message.field57);
}
if (message.preferVp9 !== undefined && message.preferVp9 !== false) {
writer.uint32(464).bool(message.preferVp9);
}
if (message.av1QualityThreshold !== undefined && message.av1QualityThreshold !== 0) {
writer.uint32(472).int32(message.av1QualityThreshold);
}
if (message.field60 !== undefined && message.field60 !== 0) {
writer.uint32(480).int32(message.field60);
}
if (message.isPrefetch !== undefined && message.isPrefetch !== false) {
writer.uint32(488).bool(message.isPrefetch);
}
if (message.sabrSupportQualityConstraints !== undefined && message.sabrSupportQualityConstraints !== false) {
writer.uint32(496).bool(message.sabrSupportQualityConstraints);
}
if (message.sabrLicenseConstraint !== undefined && message.sabrLicenseConstraint.length !== 0) {
writer.uint32(506).bytes(message.sabrLicenseConstraint);
}
if (message.allowProximaLiveLatency !== undefined && message.allowProximaLiveLatency !== 0) {
writer.uint32(512).int32(message.allowProximaLiveLatency);
}
if (message.sabrForceProxima !== undefined && message.sabrForceProxima !== 0) {
writer.uint32(528).int32(message.sabrForceProxima);
}
if (message.field67 !== undefined && message.field67 !== 0) {
writer.uint32(536).int32(message.field67);
}
if (
message.sabrForceMaxNetworkInterruptionDurationMs !== undefined &&
message.sabrForceMaxNetworkInterruptionDurationMs !== "0"
) {
writer.uint32(544).int64(message.sabrForceMaxNetworkInterruptionDurationMs);
}
if (message.audioTrackId !== undefined && message.audioTrackId !== "") {
writer.uint32(554).string(message.audioTrackId);
}
if (message.enableVoiceBoost !== undefined && message.enableVoiceBoost !== false) {
writer.uint32(608).bool(message.enableVoiceBoost);
}
if (message.playbackAuthorization !== undefined) {
PlaybackAuthorization.encode(message.playbackAuthorization, writer.uint32(634).fork()).join();
}
return writer;
},
decode(input: BinaryReader | Uint8Array, length?: number): ClientAbrState {
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
const end = length === undefined ? reader.len : reader.pos + length;
const message = createBaseClientAbrState();
while (reader.pos < end) {
const tag = reader.uint32();
switch (tag >>> 3) {
case 13: {
if (tag !== 104) {
break;
}
message.timeSinceLastManualFormatSelectionMs = reader.int64().toString();
continue;
}
case 14: {
if (tag !== 112) {
break;
}
message.lastManualDirection = reader.sint32();
continue;
}
case 16: {
if (tag !== 128) {
break;
}
message.lastManualSelectedResolution = reader.int32();
continue;
}
case 17: {
if (tag !== 136) {
break;
}
message.detailedNetworkType = reader.int32();
continue;
}
case 18: {
if (tag !== 144) {
break;
}
message.clientViewportWidth = reader.int32();
continue;
}
case 19: {
if (tag !== 152) {
break;
}
message.clientViewportHeight = reader.int32();
continue;
}
case 20: {
if (tag !== 160) {
break;
}
message.clientBitrateCapBytesPerSec = reader.int64().toString();
continue;
}
case 21: {
if (tag !== 168) {
break;
}
message.stickyResolution = reader.int32();
continue;
}
case 22: {
if (tag !== 176) {
break;
}
message.clientViewportIsFlexible = reader.bool();
continue;
}
case 23: {
if (tag !== 184) {
break;
}
message.bandwidthEstimate = reader.int64().toString();
continue;
}
case 24: {
if (tag !== 192) {
break;
}
message.minAudioQuality = reader.int32() as any;
continue;
}
case 25: {
if (tag !== 200) {
break;
}
message.maxAudioQuality = reader.int32() as any;
continue;
}
case 26: {
if (tag !== 208) {
break;
}
message.videoQualitySetting = reader.int32() as any;
continue;
}
case 27: {
if (tag !== 216) {
break;
}
message.audioRoute = reader.int32() as any;
continue;
}
case 28: {
if (tag !== 224) {
break;
}
message.playerTimeMs = reader.int64().toString();
continue;
}
case 29: {
if (tag !== 232) {
break;
}
message.timeSinceLastSeek = reader.int64().toString();
continue;
}
case 30: {
if (tag !== 240) {
break;
}
message.dataSaverMode = reader.bool();
continue;
}
case 32: {
if (tag !== 256) {
break;
}
message.networkMeteredState = reader.int32() as any;
continue;
}
case 34: {
if (tag !== 272) {
break;
}
message.visibility = reader.int32();
continue;
}
case 35: {
if (tag !== 285) {
break;
}
message.playbackRate = reader.float();
continue;
}
case 36: {
if (tag !== 288) {
break;
}
message.elapsedWallTimeMs = reader.int64().toString();
continue;
}
case 38: {
if (tag !== 306) {
break;
}
message.mediaCapabilities = MediaCapabilities.decode(reader, reader.uint32());
continue;
}
case 39: {
if (tag !== 312) {
break;
}
message.timeSinceLastActionMs = reader.int64().toString();
continue;
}
case 40: {
if (tag !== 320) {
break;
}
message.enabledTrackTypesBitfield = reader.int32();
continue;
}
case 43: {
if (tag !== 344) {
break;
}
message.maxPacingRate = reader.int32();
continue;
}
case 44: {
if (tag !== 352) {
break;
}
message.playerState = reader.int64().toString();
continue;
}
case 46: {
if (tag !== 368) {
break;
}
message.drcEnabled = reader.bool();
continue;
}
case 48: {
if (tag !== 384) {
break;
}
message.field48 = reader.int32();
continue;
}
case 50: {
if (tag !== 400) {
break;
}
message.field50 = reader.int32();
continue;
}
case 51: {
if (tag !== 408) {
break;
}
message.field51 = reader.int32();
continue;
}
case 54: {
if (tag !== 432) {
break;
}
message.sabrReportRequestCancellationInfo = reader.int32();
continue;
}
case 56: {
if (tag !== 448) {
break;
}
message.disableStreamingXhr = reader.bool();
continue;
}
case 57: {
if (tag !== 456) {
break;
}
message.field57 = reader.int64().toString();
continue;
}
case 58: {
if (tag !== 464) {
break;
}
message.preferVp9 = reader.bool();
continue;
}
case 59: {
if (tag !== 472) {
break;
}
message.av1QualityThreshold = reader.int32();
continue;
}
case 60: {
if (tag !== 480) {
break;
}
message.field60 = reader.int32();
continue;
}
case 61: {
if (tag !== 488) {
break;
}
message.isPrefetch = reader.bool();
continue;
}
case 62: {
if (tag !== 496) {
break;
}
message.sabrSupportQualityConstraints = reader.bool();
continue;
}
case 63: {
if (tag !== 506) {
break;
}
message.sabrLicenseConstraint = reader.bytes();
continue;
}
case 64: {
if (tag !== 512) {
break;
}
message.allowProximaLiveLatency = reader.int32();
continue;
}
case 66: {
if (tag !== 528) {
break;
}
message.sabrForceProxima = reader.int32();
continue;
}
case 67: {
if (tag !== 536) {
break;
}
message.field67 = reader.int32();
continue;
}
case 68: {
if (tag !== 544) {
break;
}
message.sabrForceMaxNetworkInterruptionDurationMs = reader.int64().toString();
continue;
}
case 69: {
if (tag !== 554) {
break;
}
message.audioTrackId = reader.string();
continue;
}
case 76: {
if (tag !== 608) {
break;
}
message.enableVoiceBoost = reader.bool();
continue;
}
case 79: {
if (tag !== 634) {
break;
}
message.playbackAuthorization = PlaybackAuthorization.decode(reader, reader.uint32());
continue;
}
}
if ((tag & 7) === 4 || tag === 0) {
break;
}
reader.skip(tag & 7);
}
return message;
},
};
export interface MessageFns<T> {
encode(message: T, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): T;
}