@stinkycomputing/sesame-api-client 1.9.0-alpha.1 → 1.10.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/proto/api.js CHANGED
@@ -10231,6 +10231,7 @@ export const sesame = $root.sesame = (() => {
10231
10231
  * @property {number} SOURCE_TYPE_SRT_STREAM=8 SOURCE_TYPE_SRT_STREAM value
10232
10232
  * @property {number} SOURCE_TYPE_WEBSOCKET=9 SOURCE_TYPE_WEBSOCKET value
10233
10233
  * @property {number} SOURCE_TYPE_MOQ=10 SOURCE_TYPE_MOQ value
10234
+ * @property {number} SOURCE_TYPE_SCOPE=11 SOURCE_TYPE_SCOPE value
10234
10235
  */
10235
10236
  sources.SourceType = (function() {
10236
10237
  const valuesById = {}, values = Object.create(valuesById);
@@ -10245,6 +10246,7 @@ export const sesame = $root.sesame = (() => {
10245
10246
  values[valuesById[8] = "SOURCE_TYPE_SRT_STREAM"] = 8;
10246
10247
  values[valuesById[9] = "SOURCE_TYPE_WEBSOCKET"] = 9;
10247
10248
  values[valuesById[10] = "SOURCE_TYPE_MOQ"] = 10;
10249
+ values[valuesById[11] = "SOURCE_TYPE_SCOPE"] = 11;
10248
10250
  return values;
10249
10251
  })();
10250
10252
 
@@ -10351,16 +10353,16 @@ export const sesame = $root.sesame = (() => {
10351
10353
  * @name sesame.v1.sources.PreprocessStep
10352
10354
  * @enum {number}
10353
10355
  * @property {number} PREPROCESS_STEP_UNSPECIFIED=0 PREPROCESS_STEP_UNSPECIFIED value
10354
- * @property {number} PREPROCESS_STEP_VIDEO_SCOPES=1 PREPROCESS_STEP_VIDEO_SCOPES value
10355
10356
  * @property {number} PREPROCESS_STEP_CHROMA_KEY=2 PREPROCESS_STEP_CHROMA_KEY value
10356
10357
  * @property {number} PREPROCESS_STEP_BLUR=3 PREPROCESS_STEP_BLUR value
10358
+ * @property {number} PREPROCESS_STEP_COLOR_CORRECT=4 PREPROCESS_STEP_COLOR_CORRECT value
10357
10359
  */
10358
10360
  sources.PreprocessStep = (function() {
10359
10361
  const valuesById = {}, values = Object.create(valuesById);
10360
10362
  values[valuesById[0] = "PREPROCESS_STEP_UNSPECIFIED"] = 0;
10361
- values[valuesById[1] = "PREPROCESS_STEP_VIDEO_SCOPES"] = 1;
10362
10363
  values[valuesById[2] = "PREPROCESS_STEP_CHROMA_KEY"] = 2;
10363
10364
  values[valuesById[3] = "PREPROCESS_STEP_BLUR"] = 3;
10365
+ values[valuesById[4] = "PREPROCESS_STEP_COLOR_CORRECT"] = 4;
10364
10366
  return values;
10365
10367
  })();
10366
10368
 
@@ -10768,9 +10770,9 @@ export const sesame = $root.sesame = (() => {
10768
10770
  default:
10769
10771
  return "type: enum value expected";
10770
10772
  case 0:
10771
- case 1:
10772
10773
  case 2:
10773
10774
  case 3:
10775
+ case 4:
10774
10776
  break;
10775
10777
  }
10776
10778
  if (message.params != null && message.hasOwnProperty("params")) {
@@ -10810,10 +10812,6 @@ export const sesame = $root.sesame = (() => {
10810
10812
  case 0:
10811
10813
  message.type = 0;
10812
10814
  break;
10813
- case "PREPROCESS_STEP_VIDEO_SCOPES":
10814
- case 1:
10815
- message.type = 1;
10816
- break;
10817
10815
  case "PREPROCESS_STEP_CHROMA_KEY":
10818
10816
  case 2:
10819
10817
  message.type = 2;
@@ -10822,6 +10820,10 @@ export const sesame = $root.sesame = (() => {
10822
10820
  case 3:
10823
10821
  message.type = 3;
10824
10822
  break;
10823
+ case "PREPROCESS_STEP_COLOR_CORRECT":
10824
+ case 4:
10825
+ message.type = 4;
10826
+ break;
10825
10827
  }
10826
10828
  if (object.params) {
10827
10829
  if (!Array.isArray(object.params))
@@ -12442,6 +12444,312 @@ export const sesame = $root.sesame = (() => {
12442
12444
  return RTTSourceConfig;
12443
12445
  })();
12444
12446
 
12447
+ /**
12448
+ * ScopeMode enum.
12449
+ * @name sesame.v1.sources.ScopeMode
12450
+ * @enum {number}
12451
+ * @property {number} SCOPE_MODE_UNSPECIFIED=0 SCOPE_MODE_UNSPECIFIED value
12452
+ * @property {number} SCOPE_MODE_WAVEFORM=1 SCOPE_MODE_WAVEFORM value
12453
+ * @property {number} SCOPE_MODE_RGB_PARADE=2 SCOPE_MODE_RGB_PARADE value
12454
+ * @property {number} SCOPE_MODE_VECTORSCOPE=3 SCOPE_MODE_VECTORSCOPE value
12455
+ * @property {number} SCOPE_MODE_AUDIO_PHASE=4 SCOPE_MODE_AUDIO_PHASE value
12456
+ */
12457
+ sources.ScopeMode = (function() {
12458
+ const valuesById = {}, values = Object.create(valuesById);
12459
+ values[valuesById[0] = "SCOPE_MODE_UNSPECIFIED"] = 0;
12460
+ values[valuesById[1] = "SCOPE_MODE_WAVEFORM"] = 1;
12461
+ values[valuesById[2] = "SCOPE_MODE_RGB_PARADE"] = 2;
12462
+ values[valuesById[3] = "SCOPE_MODE_VECTORSCOPE"] = 3;
12463
+ values[valuesById[4] = "SCOPE_MODE_AUDIO_PHASE"] = 4;
12464
+ return values;
12465
+ })();
12466
+
12467
+ sources.ScopeSourceConfig = (function() {
12468
+
12469
+ /**
12470
+ * Properties of a ScopeSourceConfig.
12471
+ * @memberof sesame.v1.sources
12472
+ * @interface IScopeSourceConfig
12473
+ * @property {string|null} [compositorId] ScopeSourceConfig compositorId
12474
+ * @property {string|null} [audioMix] ScopeSourceConfig audioMix
12475
+ * @property {sesame.v1.sources.ScopeMode|null} [mode] ScopeSourceConfig mode
12476
+ */
12477
+
12478
+ /**
12479
+ * Constructs a new ScopeSourceConfig.
12480
+ * @memberof sesame.v1.sources
12481
+ * @classdesc Represents a ScopeSourceConfig.
12482
+ * @implements IScopeSourceConfig
12483
+ * @constructor
12484
+ * @param {sesame.v1.sources.IScopeSourceConfig=} [properties] Properties to set
12485
+ */
12486
+ function ScopeSourceConfig(properties) {
12487
+ if (properties)
12488
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12489
+ if (properties[keys[i]] != null)
12490
+ this[keys[i]] = properties[keys[i]];
12491
+ }
12492
+
12493
+ /**
12494
+ * ScopeSourceConfig compositorId.
12495
+ * @member {string} compositorId
12496
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12497
+ * @instance
12498
+ */
12499
+ ScopeSourceConfig.prototype.compositorId = "";
12500
+
12501
+ /**
12502
+ * ScopeSourceConfig audioMix.
12503
+ * @member {string} audioMix
12504
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12505
+ * @instance
12506
+ */
12507
+ ScopeSourceConfig.prototype.audioMix = "";
12508
+
12509
+ /**
12510
+ * ScopeSourceConfig mode.
12511
+ * @member {sesame.v1.sources.ScopeMode} mode
12512
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12513
+ * @instance
12514
+ */
12515
+ ScopeSourceConfig.prototype.mode = 0;
12516
+
12517
+ /**
12518
+ * Creates a new ScopeSourceConfig instance using the specified properties.
12519
+ * @function create
12520
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12521
+ * @static
12522
+ * @param {sesame.v1.sources.IScopeSourceConfig=} [properties] Properties to set
12523
+ * @returns {sesame.v1.sources.ScopeSourceConfig} ScopeSourceConfig instance
12524
+ */
12525
+ ScopeSourceConfig.create = function create(properties) {
12526
+ return new ScopeSourceConfig(properties);
12527
+ };
12528
+
12529
+ /**
12530
+ * Encodes the specified ScopeSourceConfig message. Does not implicitly {@link sesame.v1.sources.ScopeSourceConfig.verify|verify} messages.
12531
+ * @function encode
12532
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12533
+ * @static
12534
+ * @param {sesame.v1.sources.IScopeSourceConfig} message ScopeSourceConfig message or plain object to encode
12535
+ * @param {$protobuf.Writer} [writer] Writer to encode to
12536
+ * @returns {$protobuf.Writer} Writer
12537
+ */
12538
+ ScopeSourceConfig.encode = function encode(message, writer) {
12539
+ if (!writer)
12540
+ writer = $Writer.create();
12541
+ if (message.compositorId != null && Object.hasOwnProperty.call(message, "compositorId"))
12542
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.compositorId);
12543
+ if (message.audioMix != null && Object.hasOwnProperty.call(message, "audioMix"))
12544
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.audioMix);
12545
+ if (message.mode != null && Object.hasOwnProperty.call(message, "mode"))
12546
+ writer.uint32(/* id 3, wireType 0 =*/24).int32(message.mode);
12547
+ return writer;
12548
+ };
12549
+
12550
+ /**
12551
+ * Encodes the specified ScopeSourceConfig message, length delimited. Does not implicitly {@link sesame.v1.sources.ScopeSourceConfig.verify|verify} messages.
12552
+ * @function encodeDelimited
12553
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12554
+ * @static
12555
+ * @param {sesame.v1.sources.IScopeSourceConfig} message ScopeSourceConfig message or plain object to encode
12556
+ * @param {$protobuf.Writer} [writer] Writer to encode to
12557
+ * @returns {$protobuf.Writer} Writer
12558
+ */
12559
+ ScopeSourceConfig.encodeDelimited = function encodeDelimited(message, writer) {
12560
+ return this.encode(message, writer).ldelim();
12561
+ };
12562
+
12563
+ /**
12564
+ * Decodes a ScopeSourceConfig message from the specified reader or buffer.
12565
+ * @function decode
12566
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12567
+ * @static
12568
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12569
+ * @param {number} [length] Message length if known beforehand
12570
+ * @returns {sesame.v1.sources.ScopeSourceConfig} ScopeSourceConfig
12571
+ * @throws {Error} If the payload is not a reader or valid buffer
12572
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
12573
+ */
12574
+ ScopeSourceConfig.decode = function decode(reader, length, error) {
12575
+ if (!(reader instanceof $Reader))
12576
+ reader = $Reader.create(reader);
12577
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.ScopeSourceConfig();
12578
+ while (reader.pos < end) {
12579
+ let tag = reader.uint32();
12580
+ if (tag === error)
12581
+ break;
12582
+ switch (tag >>> 3) {
12583
+ case 1: {
12584
+ message.compositorId = reader.string();
12585
+ break;
12586
+ }
12587
+ case 2: {
12588
+ message.audioMix = reader.string();
12589
+ break;
12590
+ }
12591
+ case 3: {
12592
+ message.mode = reader.int32();
12593
+ break;
12594
+ }
12595
+ default:
12596
+ reader.skipType(tag & 7);
12597
+ break;
12598
+ }
12599
+ }
12600
+ return message;
12601
+ };
12602
+
12603
+ /**
12604
+ * Decodes a ScopeSourceConfig message from the specified reader or buffer, length delimited.
12605
+ * @function decodeDelimited
12606
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12607
+ * @static
12608
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12609
+ * @returns {sesame.v1.sources.ScopeSourceConfig} ScopeSourceConfig
12610
+ * @throws {Error} If the payload is not a reader or valid buffer
12611
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
12612
+ */
12613
+ ScopeSourceConfig.decodeDelimited = function decodeDelimited(reader) {
12614
+ if (!(reader instanceof $Reader))
12615
+ reader = new $Reader(reader);
12616
+ return this.decode(reader, reader.uint32());
12617
+ };
12618
+
12619
+ /**
12620
+ * Verifies a ScopeSourceConfig message.
12621
+ * @function verify
12622
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12623
+ * @static
12624
+ * @param {Object.<string,*>} message Plain object to verify
12625
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
12626
+ */
12627
+ ScopeSourceConfig.verify = function verify(message) {
12628
+ if (typeof message !== "object" || message === null)
12629
+ return "object expected";
12630
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
12631
+ if (!$util.isString(message.compositorId))
12632
+ return "compositorId: string expected";
12633
+ if (message.audioMix != null && message.hasOwnProperty("audioMix"))
12634
+ if (!$util.isString(message.audioMix))
12635
+ return "audioMix: string expected";
12636
+ if (message.mode != null && message.hasOwnProperty("mode"))
12637
+ switch (message.mode) {
12638
+ default:
12639
+ return "mode: enum value expected";
12640
+ case 0:
12641
+ case 1:
12642
+ case 2:
12643
+ case 3:
12644
+ case 4:
12645
+ break;
12646
+ }
12647
+ return null;
12648
+ };
12649
+
12650
+ /**
12651
+ * Creates a ScopeSourceConfig message from a plain object. Also converts values to their respective internal types.
12652
+ * @function fromObject
12653
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12654
+ * @static
12655
+ * @param {Object.<string,*>} object Plain object
12656
+ * @returns {sesame.v1.sources.ScopeSourceConfig} ScopeSourceConfig
12657
+ */
12658
+ ScopeSourceConfig.fromObject = function fromObject(object) {
12659
+ if (object instanceof $root.sesame.v1.sources.ScopeSourceConfig)
12660
+ return object;
12661
+ let message = new $root.sesame.v1.sources.ScopeSourceConfig();
12662
+ if (object.compositorId != null)
12663
+ message.compositorId = String(object.compositorId);
12664
+ if (object.audioMix != null)
12665
+ message.audioMix = String(object.audioMix);
12666
+ switch (object.mode) {
12667
+ default:
12668
+ if (typeof object.mode === "number") {
12669
+ message.mode = object.mode;
12670
+ break;
12671
+ }
12672
+ break;
12673
+ case "SCOPE_MODE_UNSPECIFIED":
12674
+ case 0:
12675
+ message.mode = 0;
12676
+ break;
12677
+ case "SCOPE_MODE_WAVEFORM":
12678
+ case 1:
12679
+ message.mode = 1;
12680
+ break;
12681
+ case "SCOPE_MODE_RGB_PARADE":
12682
+ case 2:
12683
+ message.mode = 2;
12684
+ break;
12685
+ case "SCOPE_MODE_VECTORSCOPE":
12686
+ case 3:
12687
+ message.mode = 3;
12688
+ break;
12689
+ case "SCOPE_MODE_AUDIO_PHASE":
12690
+ case 4:
12691
+ message.mode = 4;
12692
+ break;
12693
+ }
12694
+ return message;
12695
+ };
12696
+
12697
+ /**
12698
+ * Creates a plain object from a ScopeSourceConfig message. Also converts values to other types if specified.
12699
+ * @function toObject
12700
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12701
+ * @static
12702
+ * @param {sesame.v1.sources.ScopeSourceConfig} message ScopeSourceConfig
12703
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
12704
+ * @returns {Object.<string,*>} Plain object
12705
+ */
12706
+ ScopeSourceConfig.toObject = function toObject(message, options) {
12707
+ if (!options)
12708
+ options = {};
12709
+ let object = {};
12710
+ if (options.defaults) {
12711
+ object.compositorId = "";
12712
+ object.audioMix = "";
12713
+ object.mode = options.enums === String ? "SCOPE_MODE_UNSPECIFIED" : 0;
12714
+ }
12715
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
12716
+ object.compositorId = message.compositorId;
12717
+ if (message.audioMix != null && message.hasOwnProperty("audioMix"))
12718
+ object.audioMix = message.audioMix;
12719
+ if (message.mode != null && message.hasOwnProperty("mode"))
12720
+ object.mode = options.enums === String ? $root.sesame.v1.sources.ScopeMode[message.mode] === undefined ? message.mode : $root.sesame.v1.sources.ScopeMode[message.mode] : message.mode;
12721
+ return object;
12722
+ };
12723
+
12724
+ /**
12725
+ * Converts this ScopeSourceConfig to JSON.
12726
+ * @function toJSON
12727
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12728
+ * @instance
12729
+ * @returns {Object.<string,*>} JSON object
12730
+ */
12731
+ ScopeSourceConfig.prototype.toJSON = function toJSON() {
12732
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12733
+ };
12734
+
12735
+ /**
12736
+ * Gets the default type url for ScopeSourceConfig
12737
+ * @function getTypeUrl
12738
+ * @memberof sesame.v1.sources.ScopeSourceConfig
12739
+ * @static
12740
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
12741
+ * @returns {string} The default type url
12742
+ */
12743
+ ScopeSourceConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
12744
+ if (typeUrlPrefix === undefined) {
12745
+ typeUrlPrefix = "type.googleapis.com";
12746
+ }
12747
+ return typeUrlPrefix + "/sesame.v1.sources.ScopeSourceConfig";
12748
+ };
12749
+
12750
+ return ScopeSourceConfig;
12751
+ })();
12752
+
12445
12753
  sources.DecklinkSourceConfig = (function() {
12446
12754
 
12447
12755
  /**
@@ -14209,6 +14517,7 @@ export const sesame = $root.sesame = (() => {
14209
14517
  * @property {sesame.v1.sources.ISrtSourceConfig|null} [srtStream] SourceConfig srtStream
14210
14518
  * @property {sesame.v1.sources.IWebsocketSourceConfig|null} [websocket] SourceConfig websocket
14211
14519
  * @property {sesame.v1.sources.IMoqSourceConfig|null} [moq] SourceConfig moq
14520
+ * @property {sesame.v1.sources.IScopeSourceConfig|null} [scope] SourceConfig scope
14212
14521
  */
14213
14522
 
14214
14523
  /**
@@ -14314,17 +14623,25 @@ export const sesame = $root.sesame = (() => {
14314
14623
  */
14315
14624
  SourceConfig.prototype.moq = null;
14316
14625
 
14626
+ /**
14627
+ * SourceConfig scope.
14628
+ * @member {sesame.v1.sources.IScopeSourceConfig|null|undefined} scope
14629
+ * @memberof sesame.v1.sources.SourceConfig
14630
+ * @instance
14631
+ */
14632
+ SourceConfig.prototype.scope = null;
14633
+
14317
14634
  // OneOf field names bound to virtual getters and setters
14318
14635
  let $oneOfFields;
14319
14636
 
14320
14637
  /**
14321
14638
  * SourceConfig details.
14322
- * @member {"file"|"recorder"|"browser"|"rtt"|"decklink"|"signalGenerator"|"systemAudio"|"srtStream"|"websocket"|"moq"|undefined} details
14639
+ * @member {"file"|"recorder"|"browser"|"rtt"|"decklink"|"signalGenerator"|"systemAudio"|"srtStream"|"websocket"|"moq"|"scope"|undefined} details
14323
14640
  * @memberof sesame.v1.sources.SourceConfig
14324
14641
  * @instance
14325
14642
  */
14326
14643
  Object.defineProperty(SourceConfig.prototype, "details", {
14327
- get: $util.oneOfGetter($oneOfFields = ["file", "recorder", "browser", "rtt", "decklink", "signalGenerator", "systemAudio", "srtStream", "websocket", "moq"]),
14644
+ get: $util.oneOfGetter($oneOfFields = ["file", "recorder", "browser", "rtt", "decklink", "signalGenerator", "systemAudio", "srtStream", "websocket", "moq", "scope"]),
14328
14645
  set: $util.oneOfSetter($oneOfFields)
14329
14646
  });
14330
14647
 
@@ -14374,6 +14691,8 @@ export const sesame = $root.sesame = (() => {
14374
14691
  $root.sesame.v1.sources.WebsocketSourceConfig.encode(message.websocket, writer.uint32(/* id 18, wireType 2 =*/146).fork()).ldelim();
14375
14692
  if (message.moq != null && Object.hasOwnProperty.call(message, "moq"))
14376
14693
  $root.sesame.v1.sources.MoqSourceConfig.encode(message.moq, writer.uint32(/* id 19, wireType 2 =*/154).fork()).ldelim();
14694
+ if (message.scope != null && Object.hasOwnProperty.call(message, "scope"))
14695
+ $root.sesame.v1.sources.ScopeSourceConfig.encode(message.scope, writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim();
14377
14696
  return writer;
14378
14697
  };
14379
14698
 
@@ -14454,6 +14773,10 @@ export const sesame = $root.sesame = (() => {
14454
14773
  message.moq = $root.sesame.v1.sources.MoqSourceConfig.decode(reader, reader.uint32());
14455
14774
  break;
14456
14775
  }
14776
+ case 20: {
14777
+ message.scope = $root.sesame.v1.sources.ScopeSourceConfig.decode(reader, reader.uint32());
14778
+ break;
14779
+ }
14457
14780
  default:
14458
14781
  reader.skipType(tag & 7);
14459
14782
  break;
@@ -14593,6 +14916,16 @@ export const sesame = $root.sesame = (() => {
14593
14916
  return "moq." + error;
14594
14917
  }
14595
14918
  }
14919
+ if (message.scope != null && message.hasOwnProperty("scope")) {
14920
+ if (properties.details === 1)
14921
+ return "details: multiple values";
14922
+ properties.details = 1;
14923
+ {
14924
+ let error = $root.sesame.v1.sources.ScopeSourceConfig.verify(message.scope);
14925
+ if (error)
14926
+ return "scope." + error;
14927
+ }
14928
+ }
14596
14929
  return null;
14597
14930
  };
14598
14931
 
@@ -14663,6 +14996,11 @@ export const sesame = $root.sesame = (() => {
14663
14996
  throw TypeError(".sesame.v1.sources.SourceConfig.moq: object expected");
14664
14997
  message.moq = $root.sesame.v1.sources.MoqSourceConfig.fromObject(object.moq);
14665
14998
  }
14999
+ if (object.scope != null) {
15000
+ if (typeof object.scope !== "object")
15001
+ throw TypeError(".sesame.v1.sources.SourceConfig.scope: object expected");
15002
+ message.scope = $root.sesame.v1.sources.ScopeSourceConfig.fromObject(object.scope);
15003
+ }
14666
15004
  return message;
14667
15005
  };
14668
15006
 
@@ -14733,6 +15071,11 @@ export const sesame = $root.sesame = (() => {
14733
15071
  if (options.oneofs)
14734
15072
  object.details = "moq";
14735
15073
  }
15074
+ if (message.scope != null && message.hasOwnProperty("scope")) {
15075
+ object.scope = $root.sesame.v1.sources.ScopeSourceConfig.toObject(message.scope, options);
15076
+ if (options.oneofs)
15077
+ object.details = "scope";
15078
+ }
14736
15079
  return object;
14737
15080
  };
14738
15081
 
@@ -15465,6 +15808,7 @@ export const sesame = $root.sesame = (() => {
15465
15808
  * @property {sesame.v1.status.IFrameTiming|null} [decodeTiming] SourceStatus decodeTiming
15466
15809
  * @property {number|null} [videoBufAvg] SourceStatus videoBufAvg
15467
15810
  * @property {sesame.v1.status.ISRTReceiveStatistics|null} [srtStats] SourceStatus srtStats
15811
+ * @property {Array.<sesame.v1.sources.IVideoProcessor>|null} [videoProcessors] SourceStatus videoProcessors
15468
15812
  */
15469
15813
 
15470
15814
  /**
@@ -15476,6 +15820,7 @@ export const sesame = $root.sesame = (() => {
15476
15820
  * @param {sesame.v1.sources.ISourceStatus=} [properties] Properties to set
15477
15821
  */
15478
15822
  function SourceStatus(properties) {
15823
+ this.videoProcessors = [];
15479
15824
  if (properties)
15480
15825
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
15481
15826
  if (properties[keys[i]] != null)
@@ -15650,6 +15995,14 @@ export const sesame = $root.sesame = (() => {
15650
15995
  */
15651
15996
  SourceStatus.prototype.srtStats = null;
15652
15997
 
15998
+ /**
15999
+ * SourceStatus videoProcessors.
16000
+ * @member {Array.<sesame.v1.sources.IVideoProcessor>} videoProcessors
16001
+ * @memberof sesame.v1.sources.SourceStatus
16002
+ * @instance
16003
+ */
16004
+ SourceStatus.prototype.videoProcessors = $util.emptyArray;
16005
+
15653
16006
  // OneOf field names bound to virtual getters and setters
15654
16007
  let $oneOfFields;
15655
16008
 
@@ -15731,6 +16084,9 @@ export const sesame = $root.sesame = (() => {
15731
16084
  writer.uint32(/* id 20, wireType 1 =*/161).double(message.videoBufAvg);
15732
16085
  if (message.srtStats != null && Object.hasOwnProperty.call(message, "srtStats"))
15733
16086
  $root.sesame.v1.status.SRTReceiveStatistics.encode(message.srtStats, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim();
16087
+ if (message.videoProcessors != null && message.videoProcessors.length)
16088
+ for (let i = 0; i < message.videoProcessors.length; ++i)
16089
+ $root.sesame.v1.sources.VideoProcessor.encode(message.videoProcessors[i], writer.uint32(/* id 22, wireType 2 =*/178).fork()).ldelim();
15734
16090
  return writer;
15735
16091
  };
15736
16092
 
@@ -15851,6 +16207,12 @@ export const sesame = $root.sesame = (() => {
15851
16207
  message.srtStats = $root.sesame.v1.status.SRTReceiveStatistics.decode(reader, reader.uint32());
15852
16208
  break;
15853
16209
  }
16210
+ case 22: {
16211
+ if (!(message.videoProcessors && message.videoProcessors.length))
16212
+ message.videoProcessors = [];
16213
+ message.videoProcessors.push($root.sesame.v1.sources.VideoProcessor.decode(reader, reader.uint32()));
16214
+ break;
16215
+ }
15854
16216
  default:
15855
16217
  reader.skipType(tag & 7);
15856
16218
  break;
@@ -15905,6 +16267,7 @@ export const sesame = $root.sesame = (() => {
15905
16267
  case 8:
15906
16268
  case 9:
15907
16269
  case 10:
16270
+ case 11:
15908
16271
  break;
15909
16272
  }
15910
16273
  if (message.userId != null && message.hasOwnProperty("userId"))
@@ -15992,6 +16355,15 @@ export const sesame = $root.sesame = (() => {
15992
16355
  return "srtStats." + error;
15993
16356
  }
15994
16357
  }
16358
+ if (message.videoProcessors != null && message.hasOwnProperty("videoProcessors")) {
16359
+ if (!Array.isArray(message.videoProcessors))
16360
+ return "videoProcessors: array expected";
16361
+ for (let i = 0; i < message.videoProcessors.length; ++i) {
16362
+ let error = $root.sesame.v1.sources.VideoProcessor.verify(message.videoProcessors[i]);
16363
+ if (error)
16364
+ return "videoProcessors." + error;
16365
+ }
16366
+ }
15995
16367
  return null;
15996
16368
  };
15997
16369
 
@@ -16060,6 +16432,10 @@ export const sesame = $root.sesame = (() => {
16060
16432
  case 10:
16061
16433
  message.type = 10;
16062
16434
  break;
16435
+ case "SOURCE_TYPE_SCOPE":
16436
+ case 11:
16437
+ message.type = 11;
16438
+ break;
16063
16439
  }
16064
16440
  if (object.userId != null)
16065
16441
  message.userId = String(object.userId);
@@ -16190,6 +16566,16 @@ export const sesame = $root.sesame = (() => {
16190
16566
  throw TypeError(".sesame.v1.sources.SourceStatus.srtStats: object expected");
16191
16567
  message.srtStats = $root.sesame.v1.status.SRTReceiveStatistics.fromObject(object.srtStats);
16192
16568
  }
16569
+ if (object.videoProcessors) {
16570
+ if (!Array.isArray(object.videoProcessors))
16571
+ throw TypeError(".sesame.v1.sources.SourceStatus.videoProcessors: array expected");
16572
+ message.videoProcessors = [];
16573
+ for (let i = 0; i < object.videoProcessors.length; ++i) {
16574
+ if (typeof object.videoProcessors[i] !== "object")
16575
+ throw TypeError(".sesame.v1.sources.SourceStatus.videoProcessors: object expected");
16576
+ message.videoProcessors[i] = $root.sesame.v1.sources.VideoProcessor.fromObject(object.videoProcessors[i]);
16577
+ }
16578
+ }
16193
16579
  return message;
16194
16580
  };
16195
16581
 
@@ -16206,6 +16592,8 @@ export const sesame = $root.sesame = (() => {
16206
16592
  if (!options)
16207
16593
  options = {};
16208
16594
  let object = {};
16595
+ if (options.arrays || options.defaults)
16596
+ object.videoProcessors = [];
16209
16597
  if (options.defaults) {
16210
16598
  object.id = "";
16211
16599
  object.type = options.enums === String ? "SOURCE_TYPE_UNSPECIFIED" : 0;
@@ -16296,6 +16684,11 @@ export const sesame = $root.sesame = (() => {
16296
16684
  if (options.oneofs)
16297
16685
  object._srtStats = "srtStats";
16298
16686
  }
16687
+ if (message.videoProcessors && message.videoProcessors.length) {
16688
+ object.videoProcessors = [];
16689
+ for (let j = 0; j < message.videoProcessors.length; ++j)
16690
+ object.videoProcessors[j] = $root.sesame.v1.sources.VideoProcessor.toObject(message.videoProcessors[j], options);
16691
+ }
16299
16692
  return object;
16300
16693
  };
16301
16694
 
@@ -18250,6 +18643,7 @@ export const sesame = $root.sesame = (() => {
18250
18643
  * @interface ITransportControlRequest
18251
18644
  * @property {sesame.v1.sources.SourceTransportCommandType|null} [cmdType] TransportControlRequest cmdType
18252
18645
  * @property {sesame.v1.common.IPropValue|null} [value] TransportControlRequest value
18646
+ * @property {string|null} [sourceId] TransportControlRequest sourceId
18253
18647
  */
18254
18648
 
18255
18649
  /**
@@ -18283,6 +18677,14 @@ export const sesame = $root.sesame = (() => {
18283
18677
  */
18284
18678
  TransportControlRequest.prototype.value = null;
18285
18679
 
18680
+ /**
18681
+ * TransportControlRequest sourceId.
18682
+ * @member {string} sourceId
18683
+ * @memberof sesame.v1.sources.TransportControlRequest
18684
+ * @instance
18685
+ */
18686
+ TransportControlRequest.prototype.sourceId = "";
18687
+
18286
18688
  /**
18287
18689
  * Creates a new TransportControlRequest instance using the specified properties.
18288
18690
  * @function create
@@ -18311,6 +18713,8 @@ export const sesame = $root.sesame = (() => {
18311
18713
  writer.uint32(/* id 1, wireType 0 =*/8).int32(message.cmdType);
18312
18714
  if (message.value != null && Object.hasOwnProperty.call(message, "value"))
18313
18715
  $root.sesame.v1.common.PropValue.encode(message.value, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
18716
+ if (message.sourceId != null && Object.hasOwnProperty.call(message, "sourceId"))
18717
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.sourceId);
18314
18718
  return writer;
18315
18719
  };
18316
18720
 
@@ -18355,6 +18759,10 @@ export const sesame = $root.sesame = (() => {
18355
18759
  message.value = $root.sesame.v1.common.PropValue.decode(reader, reader.uint32());
18356
18760
  break;
18357
18761
  }
18762
+ case 3: {
18763
+ message.sourceId = reader.string();
18764
+ break;
18765
+ }
18358
18766
  default:
18359
18767
  reader.skipType(tag & 7);
18360
18768
  break;
@@ -18418,6 +18826,9 @@ export const sesame = $root.sesame = (() => {
18418
18826
  if (error)
18419
18827
  return "value." + error;
18420
18828
  }
18829
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
18830
+ if (!$util.isString(message.sourceId))
18831
+ return "sourceId: string expected";
18421
18832
  return null;
18422
18833
  };
18423
18834
 
@@ -18514,6 +18925,8 @@ export const sesame = $root.sesame = (() => {
18514
18925
  throw TypeError(".sesame.v1.sources.TransportControlRequest.value: object expected");
18515
18926
  message.value = $root.sesame.v1.common.PropValue.fromObject(object.value);
18516
18927
  }
18928
+ if (object.sourceId != null)
18929
+ message.sourceId = String(object.sourceId);
18517
18930
  return message;
18518
18931
  };
18519
18932
 
@@ -18533,11 +18946,14 @@ export const sesame = $root.sesame = (() => {
18533
18946
  if (options.defaults) {
18534
18947
  object.cmdType = options.enums === String ? "SOURCE_TRANSPORT_CMD_UNSPECIFIED" : 0;
18535
18948
  object.value = null;
18949
+ object.sourceId = "";
18536
18950
  }
18537
18951
  if (message.cmdType != null && message.hasOwnProperty("cmdType"))
18538
18952
  object.cmdType = options.enums === String ? $root.sesame.v1.sources.SourceTransportCommandType[message.cmdType] === undefined ? message.cmdType : $root.sesame.v1.sources.SourceTransportCommandType[message.cmdType] : message.cmdType;
18539
18953
  if (message.value != null && message.hasOwnProperty("value"))
18540
18954
  object.value = $root.sesame.v1.common.PropValue.toObject(message.value, options);
18955
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
18956
+ object.sourceId = message.sourceId;
18541
18957
  return object;
18542
18958
  };
18543
18959
 
@@ -18570,6 +18986,583 @@ export const sesame = $root.sesame = (() => {
18570
18986
  return TransportControlRequest;
18571
18987
  })();
18572
18988
 
18989
+ sources.VideoProcessorControlRequest = (function() {
18990
+
18991
+ /**
18992
+ * Properties of a VideoProcessorControlRequest.
18993
+ * @memberof sesame.v1.sources
18994
+ * @interface IVideoProcessorControlRequest
18995
+ * @property {string|null} [processorId] VideoProcessorControlRequest processorId
18996
+ * @property {Array.<sesame.v1.sources.IVideoProcessorParam>|null} [params] VideoProcessorControlRequest params
18997
+ */
18998
+
18999
+ /**
19000
+ * Constructs a new VideoProcessorControlRequest.
19001
+ * @memberof sesame.v1.sources
19002
+ * @classdesc Represents a VideoProcessorControlRequest.
19003
+ * @implements IVideoProcessorControlRequest
19004
+ * @constructor
19005
+ * @param {sesame.v1.sources.IVideoProcessorControlRequest=} [properties] Properties to set
19006
+ */
19007
+ function VideoProcessorControlRequest(properties) {
19008
+ this.params = [];
19009
+ if (properties)
19010
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19011
+ if (properties[keys[i]] != null)
19012
+ this[keys[i]] = properties[keys[i]];
19013
+ }
19014
+
19015
+ /**
19016
+ * VideoProcessorControlRequest processorId.
19017
+ * @member {string} processorId
19018
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19019
+ * @instance
19020
+ */
19021
+ VideoProcessorControlRequest.prototype.processorId = "";
19022
+
19023
+ /**
19024
+ * VideoProcessorControlRequest params.
19025
+ * @member {Array.<sesame.v1.sources.IVideoProcessorParam>} params
19026
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19027
+ * @instance
19028
+ */
19029
+ VideoProcessorControlRequest.prototype.params = $util.emptyArray;
19030
+
19031
+ /**
19032
+ * Creates a new VideoProcessorControlRequest instance using the specified properties.
19033
+ * @function create
19034
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19035
+ * @static
19036
+ * @param {sesame.v1.sources.IVideoProcessorControlRequest=} [properties] Properties to set
19037
+ * @returns {sesame.v1.sources.VideoProcessorControlRequest} VideoProcessorControlRequest instance
19038
+ */
19039
+ VideoProcessorControlRequest.create = function create(properties) {
19040
+ return new VideoProcessorControlRequest(properties);
19041
+ };
19042
+
19043
+ /**
19044
+ * Encodes the specified VideoProcessorControlRequest message. Does not implicitly {@link sesame.v1.sources.VideoProcessorControlRequest.verify|verify} messages.
19045
+ * @function encode
19046
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19047
+ * @static
19048
+ * @param {sesame.v1.sources.IVideoProcessorControlRequest} message VideoProcessorControlRequest message or plain object to encode
19049
+ * @param {$protobuf.Writer} [writer] Writer to encode to
19050
+ * @returns {$protobuf.Writer} Writer
19051
+ */
19052
+ VideoProcessorControlRequest.encode = function encode(message, writer) {
19053
+ if (!writer)
19054
+ writer = $Writer.create();
19055
+ if (message.processorId != null && Object.hasOwnProperty.call(message, "processorId"))
19056
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.processorId);
19057
+ if (message.params != null && message.params.length)
19058
+ for (let i = 0; i < message.params.length; ++i)
19059
+ $root.sesame.v1.sources.VideoProcessorParam.encode(message.params[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
19060
+ return writer;
19061
+ };
19062
+
19063
+ /**
19064
+ * Encodes the specified VideoProcessorControlRequest message, length delimited. Does not implicitly {@link sesame.v1.sources.VideoProcessorControlRequest.verify|verify} messages.
19065
+ * @function encodeDelimited
19066
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19067
+ * @static
19068
+ * @param {sesame.v1.sources.IVideoProcessorControlRequest} message VideoProcessorControlRequest message or plain object to encode
19069
+ * @param {$protobuf.Writer} [writer] Writer to encode to
19070
+ * @returns {$protobuf.Writer} Writer
19071
+ */
19072
+ VideoProcessorControlRequest.encodeDelimited = function encodeDelimited(message, writer) {
19073
+ return this.encode(message, writer).ldelim();
19074
+ };
19075
+
19076
+ /**
19077
+ * Decodes a VideoProcessorControlRequest message from the specified reader or buffer.
19078
+ * @function decode
19079
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19080
+ * @static
19081
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19082
+ * @param {number} [length] Message length if known beforehand
19083
+ * @returns {sesame.v1.sources.VideoProcessorControlRequest} VideoProcessorControlRequest
19084
+ * @throws {Error} If the payload is not a reader or valid buffer
19085
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
19086
+ */
19087
+ VideoProcessorControlRequest.decode = function decode(reader, length, error) {
19088
+ if (!(reader instanceof $Reader))
19089
+ reader = $Reader.create(reader);
19090
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.VideoProcessorControlRequest();
19091
+ while (reader.pos < end) {
19092
+ let tag = reader.uint32();
19093
+ if (tag === error)
19094
+ break;
19095
+ switch (tag >>> 3) {
19096
+ case 1: {
19097
+ message.processorId = reader.string();
19098
+ break;
19099
+ }
19100
+ case 2: {
19101
+ if (!(message.params && message.params.length))
19102
+ message.params = [];
19103
+ message.params.push($root.sesame.v1.sources.VideoProcessorParam.decode(reader, reader.uint32()));
19104
+ break;
19105
+ }
19106
+ default:
19107
+ reader.skipType(tag & 7);
19108
+ break;
19109
+ }
19110
+ }
19111
+ return message;
19112
+ };
19113
+
19114
+ /**
19115
+ * Decodes a VideoProcessorControlRequest message from the specified reader or buffer, length delimited.
19116
+ * @function decodeDelimited
19117
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19118
+ * @static
19119
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19120
+ * @returns {sesame.v1.sources.VideoProcessorControlRequest} VideoProcessorControlRequest
19121
+ * @throws {Error} If the payload is not a reader or valid buffer
19122
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
19123
+ */
19124
+ VideoProcessorControlRequest.decodeDelimited = function decodeDelimited(reader) {
19125
+ if (!(reader instanceof $Reader))
19126
+ reader = new $Reader(reader);
19127
+ return this.decode(reader, reader.uint32());
19128
+ };
19129
+
19130
+ /**
19131
+ * Verifies a VideoProcessorControlRequest message.
19132
+ * @function verify
19133
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19134
+ * @static
19135
+ * @param {Object.<string,*>} message Plain object to verify
19136
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
19137
+ */
19138
+ VideoProcessorControlRequest.verify = function verify(message) {
19139
+ if (typeof message !== "object" || message === null)
19140
+ return "object expected";
19141
+ if (message.processorId != null && message.hasOwnProperty("processorId"))
19142
+ if (!$util.isString(message.processorId))
19143
+ return "processorId: string expected";
19144
+ if (message.params != null && message.hasOwnProperty("params")) {
19145
+ if (!Array.isArray(message.params))
19146
+ return "params: array expected";
19147
+ for (let i = 0; i < message.params.length; ++i) {
19148
+ let error = $root.sesame.v1.sources.VideoProcessorParam.verify(message.params[i]);
19149
+ if (error)
19150
+ return "params." + error;
19151
+ }
19152
+ }
19153
+ return null;
19154
+ };
19155
+
19156
+ /**
19157
+ * Creates a VideoProcessorControlRequest message from a plain object. Also converts values to their respective internal types.
19158
+ * @function fromObject
19159
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19160
+ * @static
19161
+ * @param {Object.<string,*>} object Plain object
19162
+ * @returns {sesame.v1.sources.VideoProcessorControlRequest} VideoProcessorControlRequest
19163
+ */
19164
+ VideoProcessorControlRequest.fromObject = function fromObject(object) {
19165
+ if (object instanceof $root.sesame.v1.sources.VideoProcessorControlRequest)
19166
+ return object;
19167
+ let message = new $root.sesame.v1.sources.VideoProcessorControlRequest();
19168
+ if (object.processorId != null)
19169
+ message.processorId = String(object.processorId);
19170
+ if (object.params) {
19171
+ if (!Array.isArray(object.params))
19172
+ throw TypeError(".sesame.v1.sources.VideoProcessorControlRequest.params: array expected");
19173
+ message.params = [];
19174
+ for (let i = 0; i < object.params.length; ++i) {
19175
+ if (typeof object.params[i] !== "object")
19176
+ throw TypeError(".sesame.v1.sources.VideoProcessorControlRequest.params: object expected");
19177
+ message.params[i] = $root.sesame.v1.sources.VideoProcessorParam.fromObject(object.params[i]);
19178
+ }
19179
+ }
19180
+ return message;
19181
+ };
19182
+
19183
+ /**
19184
+ * Creates a plain object from a VideoProcessorControlRequest message. Also converts values to other types if specified.
19185
+ * @function toObject
19186
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19187
+ * @static
19188
+ * @param {sesame.v1.sources.VideoProcessorControlRequest} message VideoProcessorControlRequest
19189
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
19190
+ * @returns {Object.<string,*>} Plain object
19191
+ */
19192
+ VideoProcessorControlRequest.toObject = function toObject(message, options) {
19193
+ if (!options)
19194
+ options = {};
19195
+ let object = {};
19196
+ if (options.arrays || options.defaults)
19197
+ object.params = [];
19198
+ if (options.defaults)
19199
+ object.processorId = "";
19200
+ if (message.processorId != null && message.hasOwnProperty("processorId"))
19201
+ object.processorId = message.processorId;
19202
+ if (message.params && message.params.length) {
19203
+ object.params = [];
19204
+ for (let j = 0; j < message.params.length; ++j)
19205
+ object.params[j] = $root.sesame.v1.sources.VideoProcessorParam.toObject(message.params[j], options);
19206
+ }
19207
+ return object;
19208
+ };
19209
+
19210
+ /**
19211
+ * Converts this VideoProcessorControlRequest to JSON.
19212
+ * @function toJSON
19213
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19214
+ * @instance
19215
+ * @returns {Object.<string,*>} JSON object
19216
+ */
19217
+ VideoProcessorControlRequest.prototype.toJSON = function toJSON() {
19218
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19219
+ };
19220
+
19221
+ /**
19222
+ * Gets the default type url for VideoProcessorControlRequest
19223
+ * @function getTypeUrl
19224
+ * @memberof sesame.v1.sources.VideoProcessorControlRequest
19225
+ * @static
19226
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
19227
+ * @returns {string} The default type url
19228
+ */
19229
+ VideoProcessorControlRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
19230
+ if (typeUrlPrefix === undefined) {
19231
+ typeUrlPrefix = "type.googleapis.com";
19232
+ }
19233
+ return typeUrlPrefix + "/sesame.v1.sources.VideoProcessorControlRequest";
19234
+ };
19235
+
19236
+ return VideoProcessorControlRequest;
19237
+ })();
19238
+
19239
+ sources.SourceControlRequest = (function() {
19240
+
19241
+ /**
19242
+ * Properties of a SourceControlRequest.
19243
+ * @memberof sesame.v1.sources
19244
+ * @interface ISourceControlRequest
19245
+ * @property {Array.<sesame.v1.sources.IVideoProcessorControlRequest>|null} [videoProcessors] SourceControlRequest videoProcessors
19246
+ * @property {number|null} [audioLevel] SourceControlRequest audioLevel
19247
+ * @property {Array.<string>|null} [resetProcessors] SourceControlRequest resetProcessors
19248
+ * @property {string|null} [sourceId] SourceControlRequest sourceId
19249
+ */
19250
+
19251
+ /**
19252
+ * Constructs a new SourceControlRequest.
19253
+ * @memberof sesame.v1.sources
19254
+ * @classdesc Represents a SourceControlRequest.
19255
+ * @implements ISourceControlRequest
19256
+ * @constructor
19257
+ * @param {sesame.v1.sources.ISourceControlRequest=} [properties] Properties to set
19258
+ */
19259
+ function SourceControlRequest(properties) {
19260
+ this.videoProcessors = [];
19261
+ this.resetProcessors = [];
19262
+ if (properties)
19263
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19264
+ if (properties[keys[i]] != null)
19265
+ this[keys[i]] = properties[keys[i]];
19266
+ }
19267
+
19268
+ /**
19269
+ * SourceControlRequest videoProcessors.
19270
+ * @member {Array.<sesame.v1.sources.IVideoProcessorControlRequest>} videoProcessors
19271
+ * @memberof sesame.v1.sources.SourceControlRequest
19272
+ * @instance
19273
+ */
19274
+ SourceControlRequest.prototype.videoProcessors = $util.emptyArray;
19275
+
19276
+ /**
19277
+ * SourceControlRequest audioLevel.
19278
+ * @member {number|null|undefined} audioLevel
19279
+ * @memberof sesame.v1.sources.SourceControlRequest
19280
+ * @instance
19281
+ */
19282
+ SourceControlRequest.prototype.audioLevel = null;
19283
+
19284
+ /**
19285
+ * SourceControlRequest resetProcessors.
19286
+ * @member {Array.<string>} resetProcessors
19287
+ * @memberof sesame.v1.sources.SourceControlRequest
19288
+ * @instance
19289
+ */
19290
+ SourceControlRequest.prototype.resetProcessors = $util.emptyArray;
19291
+
19292
+ /**
19293
+ * SourceControlRequest sourceId.
19294
+ * @member {string} sourceId
19295
+ * @memberof sesame.v1.sources.SourceControlRequest
19296
+ * @instance
19297
+ */
19298
+ SourceControlRequest.prototype.sourceId = "";
19299
+
19300
+ // OneOf field names bound to virtual getters and setters
19301
+ let $oneOfFields;
19302
+
19303
+ // Virtual OneOf for proto3 optional field
19304
+ Object.defineProperty(SourceControlRequest.prototype, "_audioLevel", {
19305
+ get: $util.oneOfGetter($oneOfFields = ["audioLevel"]),
19306
+ set: $util.oneOfSetter($oneOfFields)
19307
+ });
19308
+
19309
+ /**
19310
+ * Creates a new SourceControlRequest instance using the specified properties.
19311
+ * @function create
19312
+ * @memberof sesame.v1.sources.SourceControlRequest
19313
+ * @static
19314
+ * @param {sesame.v1.sources.ISourceControlRequest=} [properties] Properties to set
19315
+ * @returns {sesame.v1.sources.SourceControlRequest} SourceControlRequest instance
19316
+ */
19317
+ SourceControlRequest.create = function create(properties) {
19318
+ return new SourceControlRequest(properties);
19319
+ };
19320
+
19321
+ /**
19322
+ * Encodes the specified SourceControlRequest message. Does not implicitly {@link sesame.v1.sources.SourceControlRequest.verify|verify} messages.
19323
+ * @function encode
19324
+ * @memberof sesame.v1.sources.SourceControlRequest
19325
+ * @static
19326
+ * @param {sesame.v1.sources.ISourceControlRequest} message SourceControlRequest message or plain object to encode
19327
+ * @param {$protobuf.Writer} [writer] Writer to encode to
19328
+ * @returns {$protobuf.Writer} Writer
19329
+ */
19330
+ SourceControlRequest.encode = function encode(message, writer) {
19331
+ if (!writer)
19332
+ writer = $Writer.create();
19333
+ if (message.videoProcessors != null && message.videoProcessors.length)
19334
+ for (let i = 0; i < message.videoProcessors.length; ++i)
19335
+ $root.sesame.v1.sources.VideoProcessorControlRequest.encode(message.videoProcessors[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
19336
+ if (message.audioLevel != null && Object.hasOwnProperty.call(message, "audioLevel"))
19337
+ writer.uint32(/* id 2, wireType 5 =*/21).float(message.audioLevel);
19338
+ if (message.resetProcessors != null && message.resetProcessors.length)
19339
+ for (let i = 0; i < message.resetProcessors.length; ++i)
19340
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.resetProcessors[i]);
19341
+ if (message.sourceId != null && Object.hasOwnProperty.call(message, "sourceId"))
19342
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.sourceId);
19343
+ return writer;
19344
+ };
19345
+
19346
+ /**
19347
+ * Encodes the specified SourceControlRequest message, length delimited. Does not implicitly {@link sesame.v1.sources.SourceControlRequest.verify|verify} messages.
19348
+ * @function encodeDelimited
19349
+ * @memberof sesame.v1.sources.SourceControlRequest
19350
+ * @static
19351
+ * @param {sesame.v1.sources.ISourceControlRequest} message SourceControlRequest message or plain object to encode
19352
+ * @param {$protobuf.Writer} [writer] Writer to encode to
19353
+ * @returns {$protobuf.Writer} Writer
19354
+ */
19355
+ SourceControlRequest.encodeDelimited = function encodeDelimited(message, writer) {
19356
+ return this.encode(message, writer).ldelim();
19357
+ };
19358
+
19359
+ /**
19360
+ * Decodes a SourceControlRequest message from the specified reader or buffer.
19361
+ * @function decode
19362
+ * @memberof sesame.v1.sources.SourceControlRequest
19363
+ * @static
19364
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19365
+ * @param {number} [length] Message length if known beforehand
19366
+ * @returns {sesame.v1.sources.SourceControlRequest} SourceControlRequest
19367
+ * @throws {Error} If the payload is not a reader or valid buffer
19368
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
19369
+ */
19370
+ SourceControlRequest.decode = function decode(reader, length, error) {
19371
+ if (!(reader instanceof $Reader))
19372
+ reader = $Reader.create(reader);
19373
+ let end = length === undefined ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.SourceControlRequest();
19374
+ while (reader.pos < end) {
19375
+ let tag = reader.uint32();
19376
+ if (tag === error)
19377
+ break;
19378
+ switch (tag >>> 3) {
19379
+ case 1: {
19380
+ if (!(message.videoProcessors && message.videoProcessors.length))
19381
+ message.videoProcessors = [];
19382
+ message.videoProcessors.push($root.sesame.v1.sources.VideoProcessorControlRequest.decode(reader, reader.uint32()));
19383
+ break;
19384
+ }
19385
+ case 2: {
19386
+ message.audioLevel = reader.float();
19387
+ break;
19388
+ }
19389
+ case 3: {
19390
+ if (!(message.resetProcessors && message.resetProcessors.length))
19391
+ message.resetProcessors = [];
19392
+ message.resetProcessors.push(reader.string());
19393
+ break;
19394
+ }
19395
+ case 4: {
19396
+ message.sourceId = reader.string();
19397
+ break;
19398
+ }
19399
+ default:
19400
+ reader.skipType(tag & 7);
19401
+ break;
19402
+ }
19403
+ }
19404
+ return message;
19405
+ };
19406
+
19407
+ /**
19408
+ * Decodes a SourceControlRequest message from the specified reader or buffer, length delimited.
19409
+ * @function decodeDelimited
19410
+ * @memberof sesame.v1.sources.SourceControlRequest
19411
+ * @static
19412
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19413
+ * @returns {sesame.v1.sources.SourceControlRequest} SourceControlRequest
19414
+ * @throws {Error} If the payload is not a reader or valid buffer
19415
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
19416
+ */
19417
+ SourceControlRequest.decodeDelimited = function decodeDelimited(reader) {
19418
+ if (!(reader instanceof $Reader))
19419
+ reader = new $Reader(reader);
19420
+ return this.decode(reader, reader.uint32());
19421
+ };
19422
+
19423
+ /**
19424
+ * Verifies a SourceControlRequest message.
19425
+ * @function verify
19426
+ * @memberof sesame.v1.sources.SourceControlRequest
19427
+ * @static
19428
+ * @param {Object.<string,*>} message Plain object to verify
19429
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
19430
+ */
19431
+ SourceControlRequest.verify = function verify(message) {
19432
+ if (typeof message !== "object" || message === null)
19433
+ return "object expected";
19434
+ let properties = {};
19435
+ if (message.videoProcessors != null && message.hasOwnProperty("videoProcessors")) {
19436
+ if (!Array.isArray(message.videoProcessors))
19437
+ return "videoProcessors: array expected";
19438
+ for (let i = 0; i < message.videoProcessors.length; ++i) {
19439
+ let error = $root.sesame.v1.sources.VideoProcessorControlRequest.verify(message.videoProcessors[i]);
19440
+ if (error)
19441
+ return "videoProcessors." + error;
19442
+ }
19443
+ }
19444
+ if (message.audioLevel != null && message.hasOwnProperty("audioLevel")) {
19445
+ properties._audioLevel = 1;
19446
+ if (typeof message.audioLevel !== "number")
19447
+ return "audioLevel: number expected";
19448
+ }
19449
+ if (message.resetProcessors != null && message.hasOwnProperty("resetProcessors")) {
19450
+ if (!Array.isArray(message.resetProcessors))
19451
+ return "resetProcessors: array expected";
19452
+ for (let i = 0; i < message.resetProcessors.length; ++i)
19453
+ if (!$util.isString(message.resetProcessors[i]))
19454
+ return "resetProcessors: string[] expected";
19455
+ }
19456
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
19457
+ if (!$util.isString(message.sourceId))
19458
+ return "sourceId: string expected";
19459
+ return null;
19460
+ };
19461
+
19462
+ /**
19463
+ * Creates a SourceControlRequest message from a plain object. Also converts values to their respective internal types.
19464
+ * @function fromObject
19465
+ * @memberof sesame.v1.sources.SourceControlRequest
19466
+ * @static
19467
+ * @param {Object.<string,*>} object Plain object
19468
+ * @returns {sesame.v1.sources.SourceControlRequest} SourceControlRequest
19469
+ */
19470
+ SourceControlRequest.fromObject = function fromObject(object) {
19471
+ if (object instanceof $root.sesame.v1.sources.SourceControlRequest)
19472
+ return object;
19473
+ let message = new $root.sesame.v1.sources.SourceControlRequest();
19474
+ if (object.videoProcessors) {
19475
+ if (!Array.isArray(object.videoProcessors))
19476
+ throw TypeError(".sesame.v1.sources.SourceControlRequest.videoProcessors: array expected");
19477
+ message.videoProcessors = [];
19478
+ for (let i = 0; i < object.videoProcessors.length; ++i) {
19479
+ if (typeof object.videoProcessors[i] !== "object")
19480
+ throw TypeError(".sesame.v1.sources.SourceControlRequest.videoProcessors: object expected");
19481
+ message.videoProcessors[i] = $root.sesame.v1.sources.VideoProcessorControlRequest.fromObject(object.videoProcessors[i]);
19482
+ }
19483
+ }
19484
+ if (object.audioLevel != null)
19485
+ message.audioLevel = Number(object.audioLevel);
19486
+ if (object.resetProcessors) {
19487
+ if (!Array.isArray(object.resetProcessors))
19488
+ throw TypeError(".sesame.v1.sources.SourceControlRequest.resetProcessors: array expected");
19489
+ message.resetProcessors = [];
19490
+ for (let i = 0; i < object.resetProcessors.length; ++i)
19491
+ message.resetProcessors[i] = String(object.resetProcessors[i]);
19492
+ }
19493
+ if (object.sourceId != null)
19494
+ message.sourceId = String(object.sourceId);
19495
+ return message;
19496
+ };
19497
+
19498
+ /**
19499
+ * Creates a plain object from a SourceControlRequest message. Also converts values to other types if specified.
19500
+ * @function toObject
19501
+ * @memberof sesame.v1.sources.SourceControlRequest
19502
+ * @static
19503
+ * @param {sesame.v1.sources.SourceControlRequest} message SourceControlRequest
19504
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
19505
+ * @returns {Object.<string,*>} Plain object
19506
+ */
19507
+ SourceControlRequest.toObject = function toObject(message, options) {
19508
+ if (!options)
19509
+ options = {};
19510
+ let object = {};
19511
+ if (options.arrays || options.defaults) {
19512
+ object.videoProcessors = [];
19513
+ object.resetProcessors = [];
19514
+ }
19515
+ if (options.defaults)
19516
+ object.sourceId = "";
19517
+ if (message.videoProcessors && message.videoProcessors.length) {
19518
+ object.videoProcessors = [];
19519
+ for (let j = 0; j < message.videoProcessors.length; ++j)
19520
+ object.videoProcessors[j] = $root.sesame.v1.sources.VideoProcessorControlRequest.toObject(message.videoProcessors[j], options);
19521
+ }
19522
+ if (message.audioLevel != null && message.hasOwnProperty("audioLevel")) {
19523
+ object.audioLevel = options.json && !isFinite(message.audioLevel) ? String(message.audioLevel) : message.audioLevel;
19524
+ if (options.oneofs)
19525
+ object._audioLevel = "audioLevel";
19526
+ }
19527
+ if (message.resetProcessors && message.resetProcessors.length) {
19528
+ object.resetProcessors = [];
19529
+ for (let j = 0; j < message.resetProcessors.length; ++j)
19530
+ object.resetProcessors[j] = message.resetProcessors[j];
19531
+ }
19532
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
19533
+ object.sourceId = message.sourceId;
19534
+ return object;
19535
+ };
19536
+
19537
+ /**
19538
+ * Converts this SourceControlRequest to JSON.
19539
+ * @function toJSON
19540
+ * @memberof sesame.v1.sources.SourceControlRequest
19541
+ * @instance
19542
+ * @returns {Object.<string,*>} JSON object
19543
+ */
19544
+ SourceControlRequest.prototype.toJSON = function toJSON() {
19545
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19546
+ };
19547
+
19548
+ /**
19549
+ * Gets the default type url for SourceControlRequest
19550
+ * @function getTypeUrl
19551
+ * @memberof sesame.v1.sources.SourceControlRequest
19552
+ * @static
19553
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
19554
+ * @returns {string} The default type url
19555
+ */
19556
+ SourceControlRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
19557
+ if (typeUrlPrefix === undefined) {
19558
+ typeUrlPrefix = "type.googleapis.com";
19559
+ }
19560
+ return typeUrlPrefix + "/sesame.v1.sources.SourceControlRequest";
19561
+ };
19562
+
19563
+ return SourceControlRequest;
19564
+ })();
19565
+
18573
19566
  return sources;
18574
19567
  })();
18575
19568
 
@@ -45326,6 +46319,8 @@ export const sesame = $root.sesame = (() => {
45326
46319
  case 7:
45327
46320
  case 8:
45328
46321
  case 9:
46322
+ case 10:
46323
+ case 11:
45329
46324
  break;
45330
46325
  }
45331
46326
  return null;
@@ -45399,6 +46394,14 @@ export const sesame = $root.sesame = (() => {
45399
46394
  case 9:
45400
46395
  message.dataType = 9;
45401
46396
  break;
46397
+ case "DATA_TYPE_SOURCE_CONTROL":
46398
+ case 10:
46399
+ message.dataType = 10;
46400
+ break;
46401
+ case "DATA_TYPE_SOURCE_STATUS":
46402
+ case 11:
46403
+ message.dataType = 11;
46404
+ break;
45402
46405
  }
45403
46406
  return message;
45404
46407
  };
@@ -47025,6 +48028,8 @@ export const sesame = $root.sesame = (() => {
47025
48028
  * @property {number} DATA_TYPE_OUTPUT_STATUS=7 DATA_TYPE_OUTPUT_STATUS value
47026
48029
  * @property {number} DATA_TYPE_OUTPUT_CONTROL=8 DATA_TYPE_OUTPUT_CONTROL value
47027
48030
  * @property {number} DATA_TYPE_ENGINE_STATUS=9 DATA_TYPE_ENGINE_STATUS value
48031
+ * @property {number} DATA_TYPE_SOURCE_CONTROL=10 DATA_TYPE_SOURCE_CONTROL value
48032
+ * @property {number} DATA_TYPE_SOURCE_STATUS=11 DATA_TYPE_SOURCE_STATUS value
47028
48033
  */
47029
48034
  wire.DataType = (function() {
47030
48035
  const valuesById = {}, values = Object.create(valuesById);
@@ -47038,6 +48043,8 @@ export const sesame = $root.sesame = (() => {
47038
48043
  values[valuesById[7] = "DATA_TYPE_OUTPUT_STATUS"] = 7;
47039
48044
  values[valuesById[8] = "DATA_TYPE_OUTPUT_CONTROL"] = 8;
47040
48045
  values[valuesById[9] = "DATA_TYPE_ENGINE_STATUS"] = 9;
48046
+ values[valuesById[10] = "DATA_TYPE_SOURCE_CONTROL"] = 10;
48047
+ values[valuesById[11] = "DATA_TYPE_SOURCE_STATUS"] = 11;
47041
48048
  return values;
47042
48049
  })();
47043
48050
 
@@ -47203,6 +48210,8 @@ export const sesame = $root.sesame = (() => {
47203
48210
  case 7:
47204
48211
  case 8:
47205
48212
  case 9:
48213
+ case 10:
48214
+ case 11:
47206
48215
  break;
47207
48216
  }
47208
48217
  if (message.trackName != null && message.hasOwnProperty("trackName"))
@@ -47270,6 +48279,14 @@ export const sesame = $root.sesame = (() => {
47270
48279
  case 9:
47271
48280
  message.dataType = 9;
47272
48281
  break;
48282
+ case "DATA_TYPE_SOURCE_CONTROL":
48283
+ case 10:
48284
+ message.dataType = 10;
48285
+ break;
48286
+ case "DATA_TYPE_SOURCE_STATUS":
48287
+ case 11:
48288
+ message.dataType = 11;
48289
+ break;
47273
48290
  }
47274
48291
  if (object.trackName != null)
47275
48292
  message.trackName = String(object.trackName);