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

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/index.mjs CHANGED
@@ -3520,11 +3520,14 @@ var sesame = $root.sesame = (() => {
3520
3520
  CommandListItem.prototype.updateEncoder = null;
3521
3521
  CommandListItem.prototype.removeEncoder = null;
3522
3522
  CommandListItem.prototype.takePlaylist = null;
3523
+ CommandListItem.prototype.outputControl = null;
3524
+ CommandListItem.prototype.setSideData = null;
3525
+ CommandListItem.prototype.removeSideData = null;
3523
3526
  CommandListItem.prototype.transactionId = null;
3524
3527
  CommandListItem.prototype.transactionDeps = $util.emptyArray;
3525
3528
  let $oneOfFields;
3526
3529
  Object.defineProperty(CommandListItem.prototype, "item", {
3527
- get: $util.oneOfGetter($oneOfFields = ["addSource", "updateSource", "removeSource", "addOutput", "updateOutput", "removeOutput", "addCompositor", "removeCompositor", "clearCompositor", "addNode", "removeNode", "setProperty", "animateProperty", "addAudioMixer", "updateAudioMixer", "removeAudioMixer", "addAudioChannel", "removeAudioChannel", "updateSourceTransport", "loadPlaylist", "ejectPlaylist", "callback", "setSourceMetadata", "setMetadataBindings", "addEncoder", "updateEncoder", "removeEncoder", "takePlaylist"]),
3530
+ get: $util.oneOfGetter($oneOfFields = ["addSource", "updateSource", "removeSource", "addOutput", "updateOutput", "removeOutput", "addCompositor", "removeCompositor", "clearCompositor", "addNode", "removeNode", "setProperty", "animateProperty", "addAudioMixer", "updateAudioMixer", "removeAudioMixer", "addAudioChannel", "removeAudioChannel", "updateSourceTransport", "loadPlaylist", "ejectPlaylist", "callback", "setSourceMetadata", "setMetadataBindings", "addEncoder", "updateEncoder", "removeEncoder", "takePlaylist", "outputControl", "setSideData", "removeSideData"]),
3528
3531
  set: $util.oneOfSetter($oneOfFields)
3529
3532
  });
3530
3533
  Object.defineProperty(CommandListItem.prototype, "_transactionId", {
@@ -3696,6 +3699,21 @@ var sesame = $root.sesame = (() => {
3696
3699
  /* id 31, wireType 2 =*/
3697
3700
  250
3698
3701
  ).fork()).ldelim();
3702
+ if (message.outputControl != null && Object.hasOwnProperty.call(message, "outputControl"))
3703
+ $root.sesame.v1.outputs.OutputControlRequest.encode(message.outputControl, writer.uint32(
3704
+ /* id 32, wireType 2 =*/
3705
+ 258
3706
+ ).fork()).ldelim();
3707
+ if (message.setSideData != null && Object.hasOwnProperty.call(message, "setSideData"))
3708
+ $root.sesame.v1.compositor.SideDataSetRequest.encode(message.setSideData, writer.uint32(
3709
+ /* id 33, wireType 2 =*/
3710
+ 266
3711
+ ).fork()).ldelim();
3712
+ if (message.removeSideData != null && Object.hasOwnProperty.call(message, "removeSideData"))
3713
+ $root.sesame.v1.compositor.SideDataRemoveRequest.encode(message.removeSideData, writer.uint32(
3714
+ /* id 34, wireType 2 =*/
3715
+ 274
3716
+ ).fork()).ldelim();
3699
3717
  return writer;
3700
3718
  };
3701
3719
  CommandListItem.encodeDelimited = function encodeDelimited(message, writer) {
@@ -3826,6 +3844,18 @@ var sesame = $root.sesame = (() => {
3826
3844
  message.takePlaylist = $root.sesame.v1.sources.TakePlaylistRequest.decode(reader, reader.uint32());
3827
3845
  break;
3828
3846
  }
3847
+ case 32: {
3848
+ message.outputControl = $root.sesame.v1.outputs.OutputControlRequest.decode(reader, reader.uint32());
3849
+ break;
3850
+ }
3851
+ case 33: {
3852
+ message.setSideData = $root.sesame.v1.compositor.SideDataSetRequest.decode(reader, reader.uint32());
3853
+ break;
3854
+ }
3855
+ case 34: {
3856
+ message.removeSideData = $root.sesame.v1.compositor.SideDataRemoveRequest.decode(reader, reader.uint32());
3857
+ break;
3858
+ }
3829
3859
  case 25: {
3830
3860
  message.transactionId = reader.uint32();
3831
3861
  break;
@@ -4139,6 +4169,36 @@ var sesame = $root.sesame = (() => {
4139
4169
  return "takePlaylist." + error;
4140
4170
  }
4141
4171
  }
4172
+ if (message.outputControl != null && message.hasOwnProperty("outputControl")) {
4173
+ if (properties.item === 1)
4174
+ return "item: multiple values";
4175
+ properties.item = 1;
4176
+ {
4177
+ let error = $root.sesame.v1.outputs.OutputControlRequest.verify(message.outputControl);
4178
+ if (error)
4179
+ return "outputControl." + error;
4180
+ }
4181
+ }
4182
+ if (message.setSideData != null && message.hasOwnProperty("setSideData")) {
4183
+ if (properties.item === 1)
4184
+ return "item: multiple values";
4185
+ properties.item = 1;
4186
+ {
4187
+ let error = $root.sesame.v1.compositor.SideDataSetRequest.verify(message.setSideData);
4188
+ if (error)
4189
+ return "setSideData." + error;
4190
+ }
4191
+ }
4192
+ if (message.removeSideData != null && message.hasOwnProperty("removeSideData")) {
4193
+ if (properties.item === 1)
4194
+ return "item: multiple values";
4195
+ properties.item = 1;
4196
+ {
4197
+ let error = $root.sesame.v1.compositor.SideDataRemoveRequest.verify(message.removeSideData);
4198
+ if (error)
4199
+ return "removeSideData." + error;
4200
+ }
4201
+ }
4142
4202
  if (message.transactionId != null && message.hasOwnProperty("transactionId")) {
4143
4203
  properties._transactionId = 1;
4144
4204
  if (!$util.isInteger(message.transactionId))
@@ -4307,6 +4367,21 @@ var sesame = $root.sesame = (() => {
4307
4367
  throw TypeError(".sesame.v1.commands.CommandListItem.takePlaylist: object expected");
4308
4368
  message.takePlaylist = $root.sesame.v1.sources.TakePlaylistRequest.fromObject(object.takePlaylist);
4309
4369
  }
4370
+ if (object.outputControl != null) {
4371
+ if (typeof object.outputControl !== "object")
4372
+ throw TypeError(".sesame.v1.commands.CommandListItem.outputControl: object expected");
4373
+ message.outputControl = $root.sesame.v1.outputs.OutputControlRequest.fromObject(object.outputControl);
4374
+ }
4375
+ if (object.setSideData != null) {
4376
+ if (typeof object.setSideData !== "object")
4377
+ throw TypeError(".sesame.v1.commands.CommandListItem.setSideData: object expected");
4378
+ message.setSideData = $root.sesame.v1.compositor.SideDataSetRequest.fromObject(object.setSideData);
4379
+ }
4380
+ if (object.removeSideData != null) {
4381
+ if (typeof object.removeSideData !== "object")
4382
+ throw TypeError(".sesame.v1.commands.CommandListItem.removeSideData: object expected");
4383
+ message.removeSideData = $root.sesame.v1.compositor.SideDataRemoveRequest.fromObject(object.removeSideData);
4384
+ }
4310
4385
  if (object.transactionId != null)
4311
4386
  message.transactionId = object.transactionId >>> 0;
4312
4387
  if (object.transactionDeps) {
@@ -4485,6 +4560,21 @@ var sesame = $root.sesame = (() => {
4485
4560
  if (options.oneofs)
4486
4561
  object.item = "takePlaylist";
4487
4562
  }
4563
+ if (message.outputControl != null && message.hasOwnProperty("outputControl")) {
4564
+ object.outputControl = $root.sesame.v1.outputs.OutputControlRequest.toObject(message.outputControl, options);
4565
+ if (options.oneofs)
4566
+ object.item = "outputControl";
4567
+ }
4568
+ if (message.setSideData != null && message.hasOwnProperty("setSideData")) {
4569
+ object.setSideData = $root.sesame.v1.compositor.SideDataSetRequest.toObject(message.setSideData, options);
4570
+ if (options.oneofs)
4571
+ object.item = "setSideData";
4572
+ }
4573
+ if (message.removeSideData != null && message.hasOwnProperty("removeSideData")) {
4574
+ object.removeSideData = $root.sesame.v1.compositor.SideDataRemoveRequest.toObject(message.removeSideData, options);
4575
+ if (options.oneofs)
4576
+ object.item = "removeSideData";
4577
+ }
4488
4578
  return object;
4489
4579
  };
4490
4580
  CommandListItem.prototype.toJSON = function toJSON() {
@@ -4956,6 +5046,7 @@ var sesame = $root.sesame = (() => {
4956
5046
  values[valuesById[4] = "CONNECTION_STATE_DEGRADED"] = 4;
4957
5047
  values[valuesById[5] = "CONNECTION_STATE_OFFLINE"] = 5;
4958
5048
  values[valuesById[6] = "CONNECTION_STATE_ERROR"] = 6;
5049
+ values[valuesById[7] = "CONNECTION_STATE_DISABLED"] = 7;
4959
5050
  return values;
4960
5051
  }();
4961
5052
  common.VideoFormat = function() {
@@ -7349,6 +7440,13 @@ var sesame = $root.sesame = (() => {
7349
7440
  values[valuesById[3] = "SIGNAL_GENERATOR_AUDIO_MODE_SILENCE"] = 3;
7350
7441
  return values;
7351
7442
  }();
7443
+ sources.SignalGeneratorTimecodeMode = function() {
7444
+ const valuesById = {}, values = Object.create(valuesById);
7445
+ values[valuesById[0] = "SIGNAL_GENERATOR_TIMECODE_MODE_NONE"] = 0;
7446
+ values[valuesById[1] = "SIGNAL_GENERATOR_TIMECODE_MODE_FREE_RUN"] = 1;
7447
+ values[valuesById[2] = "SIGNAL_GENERATOR_TIMECODE_MODE_TIME_OF_DAY"] = 2;
7448
+ return values;
7449
+ }();
7352
7450
  sources.SignalGeneratorSourceConfig = function() {
7353
7451
  function SignalGeneratorSourceConfig(properties) {
7354
7452
  if (properties) {
@@ -7360,6 +7458,8 @@ var sesame = $root.sesame = (() => {
7360
7458
  SignalGeneratorSourceConfig.prototype.freeze = false;
7361
7459
  SignalGeneratorSourceConfig.prototype.videoPattern = 0;
7362
7460
  SignalGeneratorSourceConfig.prototype.audioMode = 0;
7461
+ SignalGeneratorSourceConfig.prototype.timecodeMode = 0;
7462
+ SignalGeneratorSourceConfig.prototype.timecodeStartFrame = 0;
7363
7463
  SignalGeneratorSourceConfig.create = function create(properties) {
7364
7464
  return new SignalGeneratorSourceConfig(properties);
7365
7465
  };
@@ -7381,6 +7481,16 @@ var sesame = $root.sesame = (() => {
7381
7481
  /* id 3, wireType 0 =*/
7382
7482
  24
7383
7483
  ).int32(message.audioMode);
7484
+ if (message.timecodeMode != null && Object.hasOwnProperty.call(message, "timecodeMode"))
7485
+ writer.uint32(
7486
+ /* id 4, wireType 0 =*/
7487
+ 32
7488
+ ).int32(message.timecodeMode);
7489
+ if (message.timecodeStartFrame != null && Object.hasOwnProperty.call(message, "timecodeStartFrame"))
7490
+ writer.uint32(
7491
+ /* id 5, wireType 0 =*/
7492
+ 40
7493
+ ).uint32(message.timecodeStartFrame);
7384
7494
  return writer;
7385
7495
  };
7386
7496
  SignalGeneratorSourceConfig.encodeDelimited = function encodeDelimited(message, writer) {
@@ -7407,6 +7517,14 @@ var sesame = $root.sesame = (() => {
7407
7517
  message.audioMode = reader.int32();
7408
7518
  break;
7409
7519
  }
7520
+ case 4: {
7521
+ message.timecodeMode = reader.int32();
7522
+ break;
7523
+ }
7524
+ case 5: {
7525
+ message.timecodeStartFrame = reader.uint32();
7526
+ break;
7527
+ }
7410
7528
  default:
7411
7529
  reader.skipType(tag & 7);
7412
7530
  break;
@@ -7446,6 +7564,19 @@ var sesame = $root.sesame = (() => {
7446
7564
  case 3:
7447
7565
  break;
7448
7566
  }
7567
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
7568
+ switch (message.timecodeMode) {
7569
+ default:
7570
+ return "timecodeMode: enum value expected";
7571
+ case 0:
7572
+ case 1:
7573
+ case 2:
7574
+ break;
7575
+ }
7576
+ if (message.timecodeStartFrame != null && message.hasOwnProperty("timecodeStartFrame")) {
7577
+ if (!$util.isInteger(message.timecodeStartFrame))
7578
+ return "timecodeStartFrame: integer expected";
7579
+ }
7449
7580
  return null;
7450
7581
  };
7451
7582
  SignalGeneratorSourceConfig.fromObject = function fromObject(object) {
@@ -7502,6 +7633,28 @@ var sesame = $root.sesame = (() => {
7502
7633
  message.audioMode = 3;
7503
7634
  break;
7504
7635
  }
7636
+ switch (object.timecodeMode) {
7637
+ default:
7638
+ if (typeof object.timecodeMode === "number") {
7639
+ message.timecodeMode = object.timecodeMode;
7640
+ break;
7641
+ }
7642
+ break;
7643
+ case "SIGNAL_GENERATOR_TIMECODE_MODE_NONE":
7644
+ case 0:
7645
+ message.timecodeMode = 0;
7646
+ break;
7647
+ case "SIGNAL_GENERATOR_TIMECODE_MODE_FREE_RUN":
7648
+ case 1:
7649
+ message.timecodeMode = 1;
7650
+ break;
7651
+ case "SIGNAL_GENERATOR_TIMECODE_MODE_TIME_OF_DAY":
7652
+ case 2:
7653
+ message.timecodeMode = 2;
7654
+ break;
7655
+ }
7656
+ if (object.timecodeStartFrame != null)
7657
+ message.timecodeStartFrame = object.timecodeStartFrame >>> 0;
7505
7658
  return message;
7506
7659
  };
7507
7660
  SignalGeneratorSourceConfig.toObject = function toObject(message, options) {
@@ -7512,6 +7665,8 @@ var sesame = $root.sesame = (() => {
7512
7665
  object.freeze = false;
7513
7666
  object.videoPattern = options.enums === String ? "SIGNAL_GENERATOR_VIDEO_PATTERN_BARS" : 0;
7514
7667
  object.audioMode = options.enums === String ? "SIGNAL_GENERATOR_AUDIO_MODE_SYNC" : 0;
7668
+ object.timecodeMode = options.enums === String ? "SIGNAL_GENERATOR_TIMECODE_MODE_NONE" : 0;
7669
+ object.timecodeStartFrame = 0;
7515
7670
  }
7516
7671
  if (message.freeze != null && message.hasOwnProperty("freeze"))
7517
7672
  object.freeze = message.freeze;
@@ -7519,6 +7674,10 @@ var sesame = $root.sesame = (() => {
7519
7674
  object.videoPattern = options.enums === String ? $root.sesame.v1.sources.SignalGeneratorVideoPattern[message.videoPattern] === void 0 ? message.videoPattern : $root.sesame.v1.sources.SignalGeneratorVideoPattern[message.videoPattern] : message.videoPattern;
7520
7675
  if (message.audioMode != null && message.hasOwnProperty("audioMode"))
7521
7676
  object.audioMode = options.enums === String ? $root.sesame.v1.sources.SignalGeneratorAudioMode[message.audioMode] === void 0 ? message.audioMode : $root.sesame.v1.sources.SignalGeneratorAudioMode[message.audioMode] : message.audioMode;
7677
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
7678
+ object.timecodeMode = options.enums === String ? $root.sesame.v1.sources.SignalGeneratorTimecodeMode[message.timecodeMode] === void 0 ? message.timecodeMode : $root.sesame.v1.sources.SignalGeneratorTimecodeMode[message.timecodeMode] : message.timecodeMode;
7679
+ if (message.timecodeStartFrame != null && message.hasOwnProperty("timecodeStartFrame"))
7680
+ object.timecodeStartFrame = message.timecodeStartFrame;
7522
7681
  return object;
7523
7682
  };
7524
7683
  SignalGeneratorSourceConfig.prototype.toJSON = function toJSON() {
@@ -9059,6 +9218,7 @@ var sesame = $root.sesame = (() => {
9059
9218
  case 4:
9060
9219
  case 5:
9061
9220
  case 6:
9221
+ case 7:
9062
9222
  break;
9063
9223
  }
9064
9224
  if (message.transportState != null && message.hasOwnProperty("transportState"))
@@ -9239,6 +9399,10 @@ var sesame = $root.sesame = (() => {
9239
9399
  case 6:
9240
9400
  message.state = 6;
9241
9401
  break;
9402
+ case "CONNECTION_STATE_DISABLED":
9403
+ case 7:
9404
+ message.state = 7;
9405
+ break;
9242
9406
  }
9243
9407
  switch (object.transportState) {
9244
9408
  default:
@@ -14645,6 +14809,8 @@ var sesame = $root.sesame = (() => {
14645
14809
  SystemStatus.prototype.gpuName = "";
14646
14810
  SystemStatus.prototype.vmaBytes = $util.Long ? $util.Long.fromBits(0, 0, true) : 0;
14647
14811
  SystemStatus.prototype.version = "";
14812
+ SystemStatus.prototype.nvencSessions = 0;
14813
+ SystemStatus.prototype.nvdecSessions = 0;
14648
14814
  SystemStatus.create = function create(properties) {
14649
14815
  return new SystemStatus(properties);
14650
14816
  };
@@ -14741,6 +14907,16 @@ var sesame = $root.sesame = (() => {
14741
14907
  /* id 18, wireType 2 =*/
14742
14908
  146
14743
14909
  ).string(message.version);
14910
+ if (message.nvencSessions != null && Object.hasOwnProperty.call(message, "nvencSessions"))
14911
+ writer.uint32(
14912
+ /* id 19, wireType 0 =*/
14913
+ 152
14914
+ ).uint32(message.nvencSessions);
14915
+ if (message.nvdecSessions != null && Object.hasOwnProperty.call(message, "nvdecSessions"))
14916
+ writer.uint32(
14917
+ /* id 20, wireType 0 =*/
14918
+ 160
14919
+ ).uint32(message.nvdecSessions);
14744
14920
  return writer;
14745
14921
  };
14746
14922
  SystemStatus.encodeDelimited = function encodeDelimited(message, writer) {
@@ -14827,6 +15003,14 @@ var sesame = $root.sesame = (() => {
14827
15003
  message.version = reader.string();
14828
15004
  break;
14829
15005
  }
15006
+ case 19: {
15007
+ message.nvencSessions = reader.uint32();
15008
+ break;
15009
+ }
15010
+ case 20: {
15011
+ message.nvdecSessions = reader.uint32();
15012
+ break;
15013
+ }
14830
15014
  default:
14831
15015
  reader.skipType(tag & 7);
14832
15016
  break;
@@ -14918,6 +15102,14 @@ var sesame = $root.sesame = (() => {
14918
15102
  if (!$util.isString(message.version))
14919
15103
  return "version: string expected";
14920
15104
  }
15105
+ if (message.nvencSessions != null && message.hasOwnProperty("nvencSessions")) {
15106
+ if (!$util.isInteger(message.nvencSessions))
15107
+ return "nvencSessions: integer expected";
15108
+ }
15109
+ if (message.nvdecSessions != null && message.hasOwnProperty("nvdecSessions")) {
15110
+ if (!$util.isInteger(message.nvdecSessions))
15111
+ return "nvdecSessions: integer expected";
15112
+ }
14921
15113
  return null;
14922
15114
  };
14923
15115
  SystemStatus.fromObject = function fromObject(object) {
@@ -15020,6 +15212,10 @@ var sesame = $root.sesame = (() => {
15020
15212
  }
15021
15213
  if (object.version != null)
15022
15214
  message.version = String(object.version);
15215
+ if (object.nvencSessions != null)
15216
+ message.nvencSessions = object.nvencSessions >>> 0;
15217
+ if (object.nvdecSessions != null)
15218
+ message.nvdecSessions = object.nvdecSessions >>> 0;
15023
15219
  return message;
15024
15220
  };
15025
15221
  SystemStatus.toObject = function toObject(message, options) {
@@ -15069,6 +15265,8 @@ var sesame = $root.sesame = (() => {
15069
15265
  } else
15070
15266
  object.vmaBytes = options.longs === String ? "0" : 0;
15071
15267
  object.version = "";
15268
+ object.nvencSessions = 0;
15269
+ object.nvdecSessions = 0;
15072
15270
  }
15073
15271
  if (message.uptime != null && message.hasOwnProperty("uptime"))
15074
15272
  if (typeof message.uptime === "number")
@@ -15124,6 +15322,10 @@ var sesame = $root.sesame = (() => {
15124
15322
  object.vmaBytes = options.longs === String ? $util.Long.prototype.toString.call(message.vmaBytes) : options.longs === Number ? new $util.LongBits(message.vmaBytes.low >>> 0, message.vmaBytes.high >>> 0).toNumber(true) : message.vmaBytes;
15125
15323
  if (message.version != null && message.hasOwnProperty("version"))
15126
15324
  object.version = message.version;
15325
+ if (message.nvencSessions != null && message.hasOwnProperty("nvencSessions"))
15326
+ object.nvencSessions = message.nvencSessions;
15327
+ if (message.nvdecSessions != null && message.hasOwnProperty("nvdecSessions"))
15328
+ object.nvdecSessions = message.nvdecSessions;
15127
15329
  return object;
15128
15330
  };
15129
15331
  SystemStatus.prototype.toJSON = function toJSON() {
@@ -17177,117 +17379,219 @@ var sesame = $root.sesame = (() => {
17177
17379
  values[valuesById[1] = "ENCODER_TYPE_VIDEO"] = 1;
17178
17380
  return values;
17179
17381
  }();
17180
- outputs.EncoderPreset = function() {
17382
+ outputs.EncoderTuning = function() {
17181
17383
  const valuesById = {}, values = Object.create(valuesById);
17182
- values[valuesById[0] = "ENCODER_PRESET_UNSPECIFIED"] = 0;
17183
- values[valuesById[1] = "ENCODER_PRESET_LOW_LATENCY"] = 1;
17184
- values[valuesById[2] = "ENCODER_PRESET_LOW_LATENCY_IDR_ONLY"] = 2;
17185
- values[valuesById[3] = "ENCODER_PRESET_HIGH_QUALITY"] = 3;
17384
+ values[valuesById[0] = "ENCODER_TUNING_UNSPECIFIED"] = 0;
17385
+ values[valuesById[1] = "ENCODER_TUNING_ULTRA_LOW_LATENCY"] = 1;
17386
+ values[valuesById[2] = "ENCODER_TUNING_LOW_LATENCY"] = 2;
17387
+ values[valuesById[3] = "ENCODER_TUNING_HIGH_QUALITY"] = 3;
17186
17388
  return values;
17187
17389
  }();
17188
- outputs.RecorderType = function() {
17390
+ outputs.EncoderRateControl = function() {
17189
17391
  const valuesById = {}, values = Object.create(valuesById);
17190
- values[valuesById[0] = "RECORDER_TYPE_UNSPECIFIED"] = 0;
17191
- values[valuesById[1] = "RECORDER_TYPE_LIVE"] = 1;
17192
- values[valuesById[2] = "RECORDER_TYPE_CLIPS"] = 2;
17392
+ values[valuesById[0] = "ENCODER_RATE_CONTROL_UNSPECIFIED"] = 0;
17393
+ values[valuesById[1] = "ENCODER_RATE_CONTROL_CBR"] = 1;
17394
+ values[valuesById[2] = "ENCODER_RATE_CONTROL_VBR"] = 2;
17193
17395
  return values;
17194
17396
  }();
17195
- outputs.EncoderConfig = function() {
17196
- function EncoderConfig(properties) {
17397
+ outputs.EncoderProfile = function() {
17398
+ const valuesById = {}, values = Object.create(valuesById);
17399
+ values[valuesById[0] = "ENCODER_PROFILE_AUTO"] = 0;
17400
+ values[valuesById[1] = "ENCODER_PROFILE_BASELINE"] = 1;
17401
+ values[valuesById[2] = "ENCODER_PROFILE_MAIN"] = 2;
17402
+ values[valuesById[3] = "ENCODER_PROFILE_MAIN10"] = 3;
17403
+ values[valuesById[4] = "ENCODER_PROFILE_HIGH"] = 4;
17404
+ return values;
17405
+ }();
17406
+ outputs.EncoderMultipass = function() {
17407
+ const valuesById = {}, values = Object.create(valuesById);
17408
+ values[valuesById[0] = "ENCODER_MULTIPASS_DISABLED"] = 0;
17409
+ values[valuesById[1] = "ENCODER_MULTIPASS_QUARTER_RESOLUTION"] = 1;
17410
+ values[valuesById[2] = "ENCODER_MULTIPASS_FULL_RESOLUTION"] = 2;
17411
+ return values;
17412
+ }();
17413
+ outputs.EncoderChromaFormat = function() {
17414
+ const valuesById = {}, values = Object.create(valuesById);
17415
+ values[valuesById[0] = "ENCODER_CHROMA_FORMAT_420"] = 0;
17416
+ values[valuesById[1] = "ENCODER_CHROMA_FORMAT_444"] = 1;
17417
+ return values;
17418
+ }();
17419
+ outputs.EncoderSettings = function() {
17420
+ function EncoderSettings(properties) {
17197
17421
  if (properties) {
17198
17422
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17199
17423
  if (properties[keys[i]] != null)
17200
17424
  this[keys[i]] = properties[keys[i]];
17201
17425
  }
17202
17426
  }
17203
- EncoderConfig.prototype.codec = 0;
17204
- EncoderConfig.prototype.preset = 0;
17205
- EncoderConfig.prototype.bitrateKbps = 0;
17206
- EncoderConfig.prototype.keyframeInterval = 0;
17207
- EncoderConfig.prototype.width = 0;
17208
- EncoderConfig.prototype.height = 0;
17209
- EncoderConfig.prototype.fps = 0;
17210
- EncoderConfig.create = function create(properties) {
17211
- return new EncoderConfig(properties);
17212
- };
17213
- EncoderConfig.encode = function encode(message, writer) {
17427
+ EncoderSettings.prototype.tuning = 0;
17428
+ EncoderSettings.prototype.effort = 0;
17429
+ EncoderSettings.prototype.rateControl = 0;
17430
+ EncoderSettings.prototype.maxBitrateKbps = 0;
17431
+ EncoderSettings.prototype.profile = 0;
17432
+ EncoderSettings.prototype.bframes = 0;
17433
+ EncoderSettings.prototype.idrOnly = false;
17434
+ EncoderSettings.prototype.spatialAq = false;
17435
+ EncoderSettings.prototype.multipass = 0;
17436
+ EncoderSettings.prototype.lookaheadDepth = 0;
17437
+ EncoderSettings.prototype.zeroReorderDelay = false;
17438
+ EncoderSettings.prototype.bitDepth = 0;
17439
+ EncoderSettings.prototype.chromaFormat = 0;
17440
+ EncoderSettings.prototype.outputAud = false;
17441
+ EncoderSettings.prototype.level = "";
17442
+ EncoderSettings.create = function create(properties) {
17443
+ return new EncoderSettings(properties);
17444
+ };
17445
+ EncoderSettings.encode = function encode(message, writer) {
17214
17446
  if (!writer)
17215
17447
  writer = $Writer.create();
17216
- if (message.codec != null && Object.hasOwnProperty.call(message, "codec"))
17448
+ if (message.tuning != null && Object.hasOwnProperty.call(message, "tuning"))
17217
17449
  writer.uint32(
17218
17450
  /* id 1, wireType 0 =*/
17219
17451
  8
17220
- ).int32(message.codec);
17221
- if (message.preset != null && Object.hasOwnProperty.call(message, "preset"))
17452
+ ).int32(message.tuning);
17453
+ if (message.effort != null && Object.hasOwnProperty.call(message, "effort"))
17222
17454
  writer.uint32(
17223
17455
  /* id 2, wireType 0 =*/
17224
17456
  16
17225
- ).int32(message.preset);
17226
- if (message.bitrateKbps != null && Object.hasOwnProperty.call(message, "bitrateKbps"))
17457
+ ).uint32(message.effort);
17458
+ if (message.rateControl != null && Object.hasOwnProperty.call(message, "rateControl"))
17227
17459
  writer.uint32(
17228
17460
  /* id 3, wireType 0 =*/
17229
17461
  24
17230
- ).uint32(message.bitrateKbps);
17231
- if (message.keyframeInterval != null && Object.hasOwnProperty.call(message, "keyframeInterval"))
17462
+ ).int32(message.rateControl);
17463
+ if (message.maxBitrateKbps != null && Object.hasOwnProperty.call(message, "maxBitrateKbps"))
17232
17464
  writer.uint32(
17233
17465
  /* id 4, wireType 0 =*/
17234
17466
  32
17235
- ).uint32(message.keyframeInterval);
17236
- if (message.width != null && Object.hasOwnProperty.call(message, "width"))
17467
+ ).uint32(message.maxBitrateKbps);
17468
+ if (message.profile != null && Object.hasOwnProperty.call(message, "profile"))
17237
17469
  writer.uint32(
17238
17470
  /* id 5, wireType 0 =*/
17239
17471
  40
17240
- ).uint32(message.width);
17241
- if (message.height != null && Object.hasOwnProperty.call(message, "height"))
17472
+ ).int32(message.profile);
17473
+ if (message.bframes != null && Object.hasOwnProperty.call(message, "bframes"))
17242
17474
  writer.uint32(
17243
17475
  /* id 6, wireType 0 =*/
17244
17476
  48
17245
- ).uint32(message.height);
17246
- if (message.fps != null && Object.hasOwnProperty.call(message, "fps"))
17477
+ ).uint32(message.bframes);
17478
+ if (message.idrOnly != null && Object.hasOwnProperty.call(message, "idrOnly"))
17247
17479
  writer.uint32(
17248
- /* id 7, wireType 5 =*/
17249
- 61
17250
- ).float(message.fps);
17480
+ /* id 7, wireType 0 =*/
17481
+ 56
17482
+ ).bool(message.idrOnly);
17483
+ if (message.spatialAq != null && Object.hasOwnProperty.call(message, "spatialAq"))
17484
+ writer.uint32(
17485
+ /* id 8, wireType 0 =*/
17486
+ 64
17487
+ ).bool(message.spatialAq);
17488
+ if (message.multipass != null && Object.hasOwnProperty.call(message, "multipass"))
17489
+ writer.uint32(
17490
+ /* id 9, wireType 0 =*/
17491
+ 72
17492
+ ).int32(message.multipass);
17493
+ if (message.lookaheadDepth != null && Object.hasOwnProperty.call(message, "lookaheadDepth"))
17494
+ writer.uint32(
17495
+ /* id 10, wireType 0 =*/
17496
+ 80
17497
+ ).uint32(message.lookaheadDepth);
17498
+ if (message.zeroReorderDelay != null && Object.hasOwnProperty.call(message, "zeroReorderDelay"))
17499
+ writer.uint32(
17500
+ /* id 11, wireType 0 =*/
17501
+ 88
17502
+ ).bool(message.zeroReorderDelay);
17503
+ if (message.bitDepth != null && Object.hasOwnProperty.call(message, "bitDepth"))
17504
+ writer.uint32(
17505
+ /* id 12, wireType 0 =*/
17506
+ 96
17507
+ ).uint32(message.bitDepth);
17508
+ if (message.chromaFormat != null && Object.hasOwnProperty.call(message, "chromaFormat"))
17509
+ writer.uint32(
17510
+ /* id 13, wireType 0 =*/
17511
+ 104
17512
+ ).int32(message.chromaFormat);
17513
+ if (message.outputAud != null && Object.hasOwnProperty.call(message, "outputAud"))
17514
+ writer.uint32(
17515
+ /* id 14, wireType 0 =*/
17516
+ 112
17517
+ ).bool(message.outputAud);
17518
+ if (message.level != null && Object.hasOwnProperty.call(message, "level"))
17519
+ writer.uint32(
17520
+ /* id 15, wireType 2 =*/
17521
+ 122
17522
+ ).string(message.level);
17251
17523
  return writer;
17252
17524
  };
17253
- EncoderConfig.encodeDelimited = function encodeDelimited(message, writer) {
17525
+ EncoderSettings.encodeDelimited = function encodeDelimited(message, writer) {
17254
17526
  return this.encode(message, writer).ldelim();
17255
17527
  };
17256
- EncoderConfig.decode = function decode(reader, length, error) {
17528
+ EncoderSettings.decode = function decode(reader, length, error) {
17257
17529
  if (!(reader instanceof $Reader))
17258
17530
  reader = $Reader.create(reader);
17259
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderConfig();
17531
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderSettings();
17260
17532
  while (reader.pos < end) {
17261
17533
  let tag = reader.uint32();
17262
17534
  if (tag === error)
17263
17535
  break;
17264
17536
  switch (tag >>> 3) {
17265
17537
  case 1: {
17266
- message.codec = reader.int32();
17538
+ message.tuning = reader.int32();
17267
17539
  break;
17268
17540
  }
17269
17541
  case 2: {
17270
- message.preset = reader.int32();
17542
+ message.effort = reader.uint32();
17271
17543
  break;
17272
17544
  }
17273
17545
  case 3: {
17274
- message.bitrateKbps = reader.uint32();
17546
+ message.rateControl = reader.int32();
17275
17547
  break;
17276
17548
  }
17277
17549
  case 4: {
17278
- message.keyframeInterval = reader.uint32();
17550
+ message.maxBitrateKbps = reader.uint32();
17279
17551
  break;
17280
17552
  }
17281
17553
  case 5: {
17282
- message.width = reader.uint32();
17554
+ message.profile = reader.int32();
17283
17555
  break;
17284
17556
  }
17285
17557
  case 6: {
17286
- message.height = reader.uint32();
17558
+ message.bframes = reader.uint32();
17287
17559
  break;
17288
17560
  }
17289
17561
  case 7: {
17290
- message.fps = reader.float();
17562
+ message.idrOnly = reader.bool();
17563
+ break;
17564
+ }
17565
+ case 8: {
17566
+ message.spatialAq = reader.bool();
17567
+ break;
17568
+ }
17569
+ case 9: {
17570
+ message.multipass = reader.int32();
17571
+ break;
17572
+ }
17573
+ case 10: {
17574
+ message.lookaheadDepth = reader.uint32();
17575
+ break;
17576
+ }
17577
+ case 11: {
17578
+ message.zeroReorderDelay = reader.bool();
17579
+ break;
17580
+ }
17581
+ case 12: {
17582
+ message.bitDepth = reader.uint32();
17583
+ break;
17584
+ }
17585
+ case 13: {
17586
+ message.chromaFormat = reader.int32();
17587
+ break;
17588
+ }
17589
+ case 14: {
17590
+ message.outputAud = reader.bool();
17591
+ break;
17592
+ }
17593
+ case 15: {
17594
+ message.level = reader.string();
17291
17595
  break;
17292
17596
  }
17293
17597
  default:
@@ -17297,256 +17601,431 @@ var sesame = $root.sesame = (() => {
17297
17601
  }
17298
17602
  return message;
17299
17603
  };
17300
- EncoderConfig.decodeDelimited = function decodeDelimited(reader) {
17604
+ EncoderSettings.decodeDelimited = function decodeDelimited(reader) {
17301
17605
  if (!(reader instanceof $Reader))
17302
17606
  reader = new $Reader(reader);
17303
17607
  return this.decode(reader, reader.uint32());
17304
17608
  };
17305
- EncoderConfig.verify = function verify(message) {
17609
+ EncoderSettings.verify = function verify(message) {
17306
17610
  if (typeof message !== "object" || message === null)
17307
17611
  return "object expected";
17308
- if (message.codec != null && message.hasOwnProperty("codec"))
17309
- switch (message.codec) {
17612
+ if (message.tuning != null && message.hasOwnProperty("tuning"))
17613
+ switch (message.tuning) {
17310
17614
  default:
17311
- return "codec: enum value expected";
17615
+ return "tuning: enum value expected";
17312
17616
  case 0:
17313
17617
  case 1:
17314
17618
  case 2:
17315
17619
  case 3:
17316
- case 4:
17317
- case 5:
17318
- case 6:
17319
- case 7:
17320
- case 64:
17321
- case 65:
17322
- case 66:
17323
- case 67:
17324
17620
  break;
17325
17621
  }
17326
- if (message.preset != null && message.hasOwnProperty("preset"))
17327
- switch (message.preset) {
17622
+ if (message.effort != null && message.hasOwnProperty("effort")) {
17623
+ if (!$util.isInteger(message.effort))
17624
+ return "effort: integer expected";
17625
+ }
17626
+ if (message.rateControl != null && message.hasOwnProperty("rateControl"))
17627
+ switch (message.rateControl) {
17628
+ default:
17629
+ return "rateControl: enum value expected";
17630
+ case 0:
17631
+ case 1:
17632
+ case 2:
17633
+ break;
17634
+ }
17635
+ if (message.maxBitrateKbps != null && message.hasOwnProperty("maxBitrateKbps")) {
17636
+ if (!$util.isInteger(message.maxBitrateKbps))
17637
+ return "maxBitrateKbps: integer expected";
17638
+ }
17639
+ if (message.profile != null && message.hasOwnProperty("profile"))
17640
+ switch (message.profile) {
17328
17641
  default:
17329
- return "preset: enum value expected";
17642
+ return "profile: enum value expected";
17330
17643
  case 0:
17331
17644
  case 1:
17332
17645
  case 2:
17333
17646
  case 3:
17647
+ case 4:
17334
17648
  break;
17335
17649
  }
17336
- if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps")) {
17337
- if (!$util.isInteger(message.bitrateKbps))
17338
- return "bitrateKbps: integer expected";
17650
+ if (message.bframes != null && message.hasOwnProperty("bframes")) {
17651
+ if (!$util.isInteger(message.bframes))
17652
+ return "bframes: integer expected";
17339
17653
  }
17340
- if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval")) {
17341
- if (!$util.isInteger(message.keyframeInterval))
17342
- return "keyframeInterval: integer expected";
17654
+ if (message.idrOnly != null && message.hasOwnProperty("idrOnly")) {
17655
+ if (typeof message.idrOnly !== "boolean")
17656
+ return "idrOnly: boolean expected";
17343
17657
  }
17344
- if (message.width != null && message.hasOwnProperty("width")) {
17345
- if (!$util.isInteger(message.width))
17346
- return "width: integer expected";
17658
+ if (message.spatialAq != null && message.hasOwnProperty("spatialAq")) {
17659
+ if (typeof message.spatialAq !== "boolean")
17660
+ return "spatialAq: boolean expected";
17347
17661
  }
17348
- if (message.height != null && message.hasOwnProperty("height")) {
17349
- if (!$util.isInteger(message.height))
17350
- return "height: integer expected";
17662
+ if (message.multipass != null && message.hasOwnProperty("multipass"))
17663
+ switch (message.multipass) {
17664
+ default:
17665
+ return "multipass: enum value expected";
17666
+ case 0:
17667
+ case 1:
17668
+ case 2:
17669
+ break;
17670
+ }
17671
+ if (message.lookaheadDepth != null && message.hasOwnProperty("lookaheadDepth")) {
17672
+ if (!$util.isInteger(message.lookaheadDepth))
17673
+ return "lookaheadDepth: integer expected";
17351
17674
  }
17352
- if (message.fps != null && message.hasOwnProperty("fps")) {
17353
- if (typeof message.fps !== "number")
17354
- return "fps: number expected";
17675
+ if (message.zeroReorderDelay != null && message.hasOwnProperty("zeroReorderDelay")) {
17676
+ if (typeof message.zeroReorderDelay !== "boolean")
17677
+ return "zeroReorderDelay: boolean expected";
17355
17678
  }
17356
- return null;
17357
- };
17358
- EncoderConfig.fromObject = function fromObject(object) {
17359
- if (object instanceof $root.sesame.v1.outputs.EncoderConfig)
17360
- return object;
17361
- let message = new $root.sesame.v1.outputs.EncoderConfig();
17362
- switch (object.codec) {
17363
- default:
17364
- if (typeof object.codec === "number") {
17365
- message.codec = object.codec;
17366
- break;
17367
- }
17679
+ if (message.bitDepth != null && message.hasOwnProperty("bitDepth")) {
17680
+ if (!$util.isInteger(message.bitDepth))
17681
+ return "bitDepth: integer expected";
17682
+ }
17683
+ if (message.chromaFormat != null && message.hasOwnProperty("chromaFormat"))
17684
+ switch (message.chromaFormat) {
17685
+ default:
17686
+ return "chromaFormat: enum value expected";
17687
+ case 0:
17688
+ case 1:
17689
+ break;
17690
+ }
17691
+ if (message.outputAud != null && message.hasOwnProperty("outputAud")) {
17692
+ if (typeof message.outputAud !== "boolean")
17693
+ return "outputAud: boolean expected";
17694
+ }
17695
+ if (message.level != null && message.hasOwnProperty("level")) {
17696
+ if (!$util.isString(message.level))
17697
+ return "level: string expected";
17698
+ }
17699
+ return null;
17700
+ };
17701
+ EncoderSettings.fromObject = function fromObject(object) {
17702
+ if (object instanceof $root.sesame.v1.outputs.EncoderSettings)
17703
+ return object;
17704
+ let message = new $root.sesame.v1.outputs.EncoderSettings();
17705
+ switch (object.tuning) {
17706
+ default:
17707
+ if (typeof object.tuning === "number") {
17708
+ message.tuning = object.tuning;
17709
+ break;
17710
+ }
17368
17711
  break;
17369
- case "CODEC_TYPE_UNSPECIFIED":
17712
+ case "ENCODER_TUNING_UNSPECIFIED":
17370
17713
  case 0:
17371
- message.codec = 0;
17714
+ message.tuning = 0;
17372
17715
  break;
17373
- case "CODEC_TYPE_VIDEO_VP8":
17716
+ case "ENCODER_TUNING_ULTRA_LOW_LATENCY":
17374
17717
  case 1:
17375
- message.codec = 1;
17718
+ message.tuning = 1;
17376
17719
  break;
17377
- case "CODEC_TYPE_VIDEO_VP9":
17720
+ case "ENCODER_TUNING_LOW_LATENCY":
17378
17721
  case 2:
17379
- message.codec = 2;
17722
+ message.tuning = 2;
17380
17723
  break;
17381
- case "CODEC_TYPE_VIDEO_AVC":
17724
+ case "ENCODER_TUNING_HIGH_QUALITY":
17382
17725
  case 3:
17383
- message.codec = 3;
17726
+ message.tuning = 3;
17384
17727
  break;
17385
- case "CODEC_TYPE_VIDEO_HEVC":
17386
- case 4:
17387
- message.codec = 4;
17728
+ }
17729
+ if (object.effort != null)
17730
+ message.effort = object.effort >>> 0;
17731
+ switch (object.rateControl) {
17732
+ default:
17733
+ if (typeof object.rateControl === "number") {
17734
+ message.rateControl = object.rateControl;
17735
+ break;
17736
+ }
17388
17737
  break;
17389
- case "CODEC_TYPE_VIDEO_AV1":
17390
- case 5:
17391
- message.codec = 5;
17738
+ case "ENCODER_RATE_CONTROL_UNSPECIFIED":
17739
+ case 0:
17740
+ message.rateControl = 0;
17392
17741
  break;
17393
- case "CODEC_TYPE_VIDEO_PRORES":
17394
- case 6:
17395
- message.codec = 6;
17742
+ case "ENCODER_RATE_CONTROL_CBR":
17743
+ case 1:
17744
+ message.rateControl = 1;
17396
17745
  break;
17397
- case "CODEC_TYPE_VIDEO_DNXHR":
17398
- case 7:
17399
- message.codec = 7;
17746
+ case "ENCODER_RATE_CONTROL_VBR":
17747
+ case 2:
17748
+ message.rateControl = 2;
17400
17749
  break;
17401
- case "CODEC_TYPE_AUDIO_OPUS":
17402
- case 64:
17403
- message.codec = 64;
17750
+ }
17751
+ if (object.maxBitrateKbps != null)
17752
+ message.maxBitrateKbps = object.maxBitrateKbps >>> 0;
17753
+ switch (object.profile) {
17754
+ default:
17755
+ if (typeof object.profile === "number") {
17756
+ message.profile = object.profile;
17757
+ break;
17758
+ }
17404
17759
  break;
17405
- case "CODEC_TYPE_AUDIO_AAC":
17406
- case 65:
17407
- message.codec = 65;
17760
+ case "ENCODER_PROFILE_AUTO":
17761
+ case 0:
17762
+ message.profile = 0;
17408
17763
  break;
17409
- case "CODEC_TYPE_AUDIO_PCM":
17410
- case 66:
17411
- message.codec = 66;
17764
+ case "ENCODER_PROFILE_BASELINE":
17765
+ case 1:
17766
+ message.profile = 1;
17412
17767
  break;
17413
- case "CODEC_TYPE_AUDIO_PCM_S24LE":
17414
- case 67:
17415
- message.codec = 67;
17768
+ case "ENCODER_PROFILE_MAIN":
17769
+ case 2:
17770
+ message.profile = 2;
17771
+ break;
17772
+ case "ENCODER_PROFILE_MAIN10":
17773
+ case 3:
17774
+ message.profile = 3;
17775
+ break;
17776
+ case "ENCODER_PROFILE_HIGH":
17777
+ case 4:
17778
+ message.profile = 4;
17416
17779
  break;
17417
17780
  }
17418
- switch (object.preset) {
17781
+ if (object.bframes != null)
17782
+ message.bframes = object.bframes >>> 0;
17783
+ if (object.idrOnly != null)
17784
+ message.idrOnly = Boolean(object.idrOnly);
17785
+ if (object.spatialAq != null)
17786
+ message.spatialAq = Boolean(object.spatialAq);
17787
+ switch (object.multipass) {
17419
17788
  default:
17420
- if (typeof object.preset === "number") {
17421
- message.preset = object.preset;
17789
+ if (typeof object.multipass === "number") {
17790
+ message.multipass = object.multipass;
17422
17791
  break;
17423
17792
  }
17424
17793
  break;
17425
- case "ENCODER_PRESET_UNSPECIFIED":
17794
+ case "ENCODER_MULTIPASS_DISABLED":
17426
17795
  case 0:
17427
- message.preset = 0;
17796
+ message.multipass = 0;
17428
17797
  break;
17429
- case "ENCODER_PRESET_LOW_LATENCY":
17798
+ case "ENCODER_MULTIPASS_QUARTER_RESOLUTION":
17430
17799
  case 1:
17431
- message.preset = 1;
17800
+ message.multipass = 1;
17432
17801
  break;
17433
- case "ENCODER_PRESET_LOW_LATENCY_IDR_ONLY":
17802
+ case "ENCODER_MULTIPASS_FULL_RESOLUTION":
17434
17803
  case 2:
17435
- message.preset = 2;
17804
+ message.multipass = 2;
17436
17805
  break;
17437
- case "ENCODER_PRESET_HIGH_QUALITY":
17438
- case 3:
17439
- message.preset = 3;
17806
+ }
17807
+ if (object.lookaheadDepth != null)
17808
+ message.lookaheadDepth = object.lookaheadDepth >>> 0;
17809
+ if (object.zeroReorderDelay != null)
17810
+ message.zeroReorderDelay = Boolean(object.zeroReorderDelay);
17811
+ if (object.bitDepth != null)
17812
+ message.bitDepth = object.bitDepth >>> 0;
17813
+ switch (object.chromaFormat) {
17814
+ default:
17815
+ if (typeof object.chromaFormat === "number") {
17816
+ message.chromaFormat = object.chromaFormat;
17817
+ break;
17818
+ }
17819
+ break;
17820
+ case "ENCODER_CHROMA_FORMAT_420":
17821
+ case 0:
17822
+ message.chromaFormat = 0;
17823
+ break;
17824
+ case "ENCODER_CHROMA_FORMAT_444":
17825
+ case 1:
17826
+ message.chromaFormat = 1;
17440
17827
  break;
17441
17828
  }
17442
- if (object.bitrateKbps != null)
17443
- message.bitrateKbps = object.bitrateKbps >>> 0;
17444
- if (object.keyframeInterval != null)
17445
- message.keyframeInterval = object.keyframeInterval >>> 0;
17446
- if (object.width != null)
17447
- message.width = object.width >>> 0;
17448
- if (object.height != null)
17449
- message.height = object.height >>> 0;
17450
- if (object.fps != null)
17451
- message.fps = Number(object.fps);
17829
+ if (object.outputAud != null)
17830
+ message.outputAud = Boolean(object.outputAud);
17831
+ if (object.level != null)
17832
+ message.level = String(object.level);
17452
17833
  return message;
17453
17834
  };
17454
- EncoderConfig.toObject = function toObject(message, options) {
17835
+ EncoderSettings.toObject = function toObject(message, options) {
17455
17836
  if (!options)
17456
17837
  options = {};
17457
17838
  let object = {};
17458
17839
  if (options.defaults) {
17459
- object.codec = options.enums === String ? "CODEC_TYPE_UNSPECIFIED" : 0;
17460
- object.preset = options.enums === String ? "ENCODER_PRESET_UNSPECIFIED" : 0;
17461
- object.bitrateKbps = 0;
17462
- object.keyframeInterval = 0;
17463
- object.width = 0;
17464
- object.height = 0;
17465
- object.fps = 0;
17840
+ object.tuning = options.enums === String ? "ENCODER_TUNING_UNSPECIFIED" : 0;
17841
+ object.effort = 0;
17842
+ object.rateControl = options.enums === String ? "ENCODER_RATE_CONTROL_UNSPECIFIED" : 0;
17843
+ object.maxBitrateKbps = 0;
17844
+ object.profile = options.enums === String ? "ENCODER_PROFILE_AUTO" : 0;
17845
+ object.bframes = 0;
17846
+ object.idrOnly = false;
17847
+ object.spatialAq = false;
17848
+ object.multipass = options.enums === String ? "ENCODER_MULTIPASS_DISABLED" : 0;
17849
+ object.lookaheadDepth = 0;
17850
+ object.zeroReorderDelay = false;
17851
+ object.bitDepth = 0;
17852
+ object.chromaFormat = options.enums === String ? "ENCODER_CHROMA_FORMAT_420" : 0;
17853
+ object.outputAud = false;
17854
+ object.level = "";
17466
17855
  }
17467
- if (message.codec != null && message.hasOwnProperty("codec"))
17468
- object.codec = options.enums === String ? $root.sesame.v1.common.CodecType[message.codec] === void 0 ? message.codec : $root.sesame.v1.common.CodecType[message.codec] : message.codec;
17469
- if (message.preset != null && message.hasOwnProperty("preset"))
17470
- object.preset = options.enums === String ? $root.sesame.v1.outputs.EncoderPreset[message.preset] === void 0 ? message.preset : $root.sesame.v1.outputs.EncoderPreset[message.preset] : message.preset;
17471
- if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps"))
17472
- object.bitrateKbps = message.bitrateKbps;
17473
- if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval"))
17474
- object.keyframeInterval = message.keyframeInterval;
17475
- if (message.width != null && message.hasOwnProperty("width"))
17476
- object.width = message.width;
17477
- if (message.height != null && message.hasOwnProperty("height"))
17478
- object.height = message.height;
17479
- if (message.fps != null && message.hasOwnProperty("fps"))
17480
- object.fps = options.json && !isFinite(message.fps) ? String(message.fps) : message.fps;
17856
+ if (message.tuning != null && message.hasOwnProperty("tuning"))
17857
+ object.tuning = options.enums === String ? $root.sesame.v1.outputs.EncoderTuning[message.tuning] === void 0 ? message.tuning : $root.sesame.v1.outputs.EncoderTuning[message.tuning] : message.tuning;
17858
+ if (message.effort != null && message.hasOwnProperty("effort"))
17859
+ object.effort = message.effort;
17860
+ if (message.rateControl != null && message.hasOwnProperty("rateControl"))
17861
+ object.rateControl = options.enums === String ? $root.sesame.v1.outputs.EncoderRateControl[message.rateControl] === void 0 ? message.rateControl : $root.sesame.v1.outputs.EncoderRateControl[message.rateControl] : message.rateControl;
17862
+ if (message.maxBitrateKbps != null && message.hasOwnProperty("maxBitrateKbps"))
17863
+ object.maxBitrateKbps = message.maxBitrateKbps;
17864
+ if (message.profile != null && message.hasOwnProperty("profile"))
17865
+ object.profile = options.enums === String ? $root.sesame.v1.outputs.EncoderProfile[message.profile] === void 0 ? message.profile : $root.sesame.v1.outputs.EncoderProfile[message.profile] : message.profile;
17866
+ if (message.bframes != null && message.hasOwnProperty("bframes"))
17867
+ object.bframes = message.bframes;
17868
+ if (message.idrOnly != null && message.hasOwnProperty("idrOnly"))
17869
+ object.idrOnly = message.idrOnly;
17870
+ if (message.spatialAq != null && message.hasOwnProperty("spatialAq"))
17871
+ object.spatialAq = message.spatialAq;
17872
+ if (message.multipass != null && message.hasOwnProperty("multipass"))
17873
+ object.multipass = options.enums === String ? $root.sesame.v1.outputs.EncoderMultipass[message.multipass] === void 0 ? message.multipass : $root.sesame.v1.outputs.EncoderMultipass[message.multipass] : message.multipass;
17874
+ if (message.lookaheadDepth != null && message.hasOwnProperty("lookaheadDepth"))
17875
+ object.lookaheadDepth = message.lookaheadDepth;
17876
+ if (message.zeroReorderDelay != null && message.hasOwnProperty("zeroReorderDelay"))
17877
+ object.zeroReorderDelay = message.zeroReorderDelay;
17878
+ if (message.bitDepth != null && message.hasOwnProperty("bitDepth"))
17879
+ object.bitDepth = message.bitDepth;
17880
+ if (message.chromaFormat != null && message.hasOwnProperty("chromaFormat"))
17881
+ object.chromaFormat = options.enums === String ? $root.sesame.v1.outputs.EncoderChromaFormat[message.chromaFormat] === void 0 ? message.chromaFormat : $root.sesame.v1.outputs.EncoderChromaFormat[message.chromaFormat] : message.chromaFormat;
17882
+ if (message.outputAud != null && message.hasOwnProperty("outputAud"))
17883
+ object.outputAud = message.outputAud;
17884
+ if (message.level != null && message.hasOwnProperty("level"))
17885
+ object.level = message.level;
17481
17886
  return object;
17482
17887
  };
17483
- EncoderConfig.prototype.toJSON = function toJSON() {
17888
+ EncoderSettings.prototype.toJSON = function toJSON() {
17484
17889
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17485
17890
  };
17486
- EncoderConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
17891
+ EncoderSettings.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
17487
17892
  if (typeUrlPrefix === void 0) {
17488
17893
  typeUrlPrefix = "type.googleapis.com";
17489
17894
  }
17490
- return typeUrlPrefix + "/sesame.v1.outputs.EncoderConfig";
17895
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderSettings";
17491
17896
  };
17492
- return EncoderConfig;
17897
+ return EncoderSettings;
17493
17898
  }();
17494
- outputs.EncoderAddRequest = function() {
17495
- function EncoderAddRequest(properties) {
17899
+ outputs.RecorderType = function() {
17900
+ const valuesById = {}, values = Object.create(valuesById);
17901
+ values[valuesById[0] = "RECORDER_TYPE_UNSPECIFIED"] = 0;
17902
+ values[valuesById[1] = "RECORDER_TYPE_LIVE"] = 1;
17903
+ values[valuesById[2] = "RECORDER_TYPE_CLIPS"] = 2;
17904
+ return values;
17905
+ }();
17906
+ outputs.TimecodeMode = function() {
17907
+ const valuesById = {}, values = Object.create(valuesById);
17908
+ values[valuesById[0] = "TIMECODE_MODE_UNSPECIFIED"] = 0;
17909
+ values[valuesById[1] = "TIMECODE_MODE_WALLCLOCK"] = 1;
17910
+ values[valuesById[2] = "TIMECODE_MODE_SOURCE"] = 2;
17911
+ return values;
17912
+ }();
17913
+ outputs.EncoderConfig = function() {
17914
+ function EncoderConfig(properties) {
17496
17915
  if (properties) {
17497
17916
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17498
17917
  if (properties[keys[i]] != null)
17499
17918
  this[keys[i]] = properties[keys[i]];
17500
17919
  }
17501
17920
  }
17502
- EncoderAddRequest.prototype.id = "";
17503
- EncoderAddRequest.prototype.compositionId = "";
17504
- EncoderAddRequest.prototype.encoder = null;
17505
- EncoderAddRequest.create = function create(properties) {
17506
- return new EncoderAddRequest(properties);
17921
+ EncoderConfig.prototype.codec = 0;
17922
+ EncoderConfig.prototype.bitrateKbps = 0;
17923
+ EncoderConfig.prototype.keyframeInterval = 0;
17924
+ EncoderConfig.prototype.width = 0;
17925
+ EncoderConfig.prototype.height = 0;
17926
+ EncoderConfig.prototype.fps = 0;
17927
+ EncoderConfig.prototype.timecodeMode = 0;
17928
+ EncoderConfig.prototype.timecodeSourceId = "";
17929
+ EncoderConfig.prototype.settings = null;
17930
+ EncoderConfig.create = function create(properties) {
17931
+ return new EncoderConfig(properties);
17507
17932
  };
17508
- EncoderAddRequest.encode = function encode(message, writer) {
17933
+ EncoderConfig.encode = function encode(message, writer) {
17509
17934
  if (!writer)
17510
17935
  writer = $Writer.create();
17511
- if (message.id != null && Object.hasOwnProperty.call(message, "id"))
17936
+ if (message.codec != null && Object.hasOwnProperty.call(message, "codec"))
17512
17937
  writer.uint32(
17513
- /* id 1, wireType 2 =*/
17514
- 10
17515
- ).string(message.id);
17516
- if (message.compositionId != null && Object.hasOwnProperty.call(message, "compositionId"))
17938
+ /* id 1, wireType 0 =*/
17939
+ 8
17940
+ ).int32(message.codec);
17941
+ if (message.bitrateKbps != null && Object.hasOwnProperty.call(message, "bitrateKbps"))
17517
17942
  writer.uint32(
17518
- /* id 2, wireType 2 =*/
17519
- 18
17520
- ).string(message.compositionId);
17521
- if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
17522
- $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
17523
- /* id 3, wireType 2 =*/
17524
- 26
17943
+ /* id 3, wireType 0 =*/
17944
+ 24
17945
+ ).uint32(message.bitrateKbps);
17946
+ if (message.keyframeInterval != null && Object.hasOwnProperty.call(message, "keyframeInterval"))
17947
+ writer.uint32(
17948
+ /* id 4, wireType 0 =*/
17949
+ 32
17950
+ ).uint32(message.keyframeInterval);
17951
+ if (message.width != null && Object.hasOwnProperty.call(message, "width"))
17952
+ writer.uint32(
17953
+ /* id 5, wireType 0 =*/
17954
+ 40
17955
+ ).uint32(message.width);
17956
+ if (message.height != null && Object.hasOwnProperty.call(message, "height"))
17957
+ writer.uint32(
17958
+ /* id 6, wireType 0 =*/
17959
+ 48
17960
+ ).uint32(message.height);
17961
+ if (message.fps != null && Object.hasOwnProperty.call(message, "fps"))
17962
+ writer.uint32(
17963
+ /* id 7, wireType 5 =*/
17964
+ 61
17965
+ ).float(message.fps);
17966
+ if (message.timecodeMode != null && Object.hasOwnProperty.call(message, "timecodeMode"))
17967
+ writer.uint32(
17968
+ /* id 8, wireType 0 =*/
17969
+ 64
17970
+ ).int32(message.timecodeMode);
17971
+ if (message.timecodeSourceId != null && Object.hasOwnProperty.call(message, "timecodeSourceId"))
17972
+ writer.uint32(
17973
+ /* id 9, wireType 2 =*/
17974
+ 74
17975
+ ).string(message.timecodeSourceId);
17976
+ if (message.settings != null && Object.hasOwnProperty.call(message, "settings"))
17977
+ $root.sesame.v1.outputs.EncoderSettings.encode(message.settings, writer.uint32(
17978
+ /* id 10, wireType 2 =*/
17979
+ 82
17525
17980
  ).fork()).ldelim();
17526
17981
  return writer;
17527
17982
  };
17528
- EncoderAddRequest.encodeDelimited = function encodeDelimited(message, writer) {
17983
+ EncoderConfig.encodeDelimited = function encodeDelimited(message, writer) {
17529
17984
  return this.encode(message, writer).ldelim();
17530
17985
  };
17531
- EncoderAddRequest.decode = function decode(reader, length, error) {
17986
+ EncoderConfig.decode = function decode(reader, length, error) {
17532
17987
  if (!(reader instanceof $Reader))
17533
17988
  reader = $Reader.create(reader);
17534
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderAddRequest();
17989
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderConfig();
17535
17990
  while (reader.pos < end) {
17536
17991
  let tag = reader.uint32();
17537
17992
  if (tag === error)
17538
17993
  break;
17539
17994
  switch (tag >>> 3) {
17540
17995
  case 1: {
17541
- message.id = reader.string();
17996
+ message.codec = reader.int32();
17542
17997
  break;
17543
17998
  }
17544
- case 2: {
17545
- message.compositionId = reader.string();
17999
+ case 3: {
18000
+ message.bitrateKbps = reader.uint32();
17546
18001
  break;
17547
18002
  }
17548
- case 3: {
17549
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
18003
+ case 4: {
18004
+ message.keyframeInterval = reader.uint32();
18005
+ break;
18006
+ }
18007
+ case 5: {
18008
+ message.width = reader.uint32();
18009
+ break;
18010
+ }
18011
+ case 6: {
18012
+ message.height = reader.uint32();
18013
+ break;
18014
+ }
18015
+ case 7: {
18016
+ message.fps = reader.float();
18017
+ break;
18018
+ }
18019
+ case 8: {
18020
+ message.timecodeMode = reader.int32();
18021
+ break;
18022
+ }
18023
+ case 9: {
18024
+ message.timecodeSourceId = reader.string();
18025
+ break;
18026
+ }
18027
+ case 10: {
18028
+ message.settings = $root.sesame.v1.outputs.EncoderSettings.decode(reader, reader.uint32());
17550
18029
  break;
17551
18030
  }
17552
18031
  default:
@@ -17556,22 +18035,298 @@ var sesame = $root.sesame = (() => {
17556
18035
  }
17557
18036
  return message;
17558
18037
  };
17559
- EncoderAddRequest.decodeDelimited = function decodeDelimited(reader) {
18038
+ EncoderConfig.decodeDelimited = function decodeDelimited(reader) {
17560
18039
  if (!(reader instanceof $Reader))
17561
18040
  reader = new $Reader(reader);
17562
18041
  return this.decode(reader, reader.uint32());
17563
18042
  };
17564
- EncoderAddRequest.verify = function verify(message) {
18043
+ EncoderConfig.verify = function verify(message) {
17565
18044
  if (typeof message !== "object" || message === null)
17566
18045
  return "object expected";
17567
- if (message.id != null && message.hasOwnProperty("id")) {
17568
- if (!$util.isString(message.id))
17569
- return "id: string expected";
17570
- }
17571
- if (message.compositionId != null && message.hasOwnProperty("compositionId")) {
17572
- if (!$util.isString(message.compositionId))
17573
- return "compositionId: string expected";
17574
- }
18046
+ if (message.codec != null && message.hasOwnProperty("codec"))
18047
+ switch (message.codec) {
18048
+ default:
18049
+ return "codec: enum value expected";
18050
+ case 0:
18051
+ case 1:
18052
+ case 2:
18053
+ case 3:
18054
+ case 4:
18055
+ case 5:
18056
+ case 6:
18057
+ case 7:
18058
+ case 64:
18059
+ case 65:
18060
+ case 66:
18061
+ case 67:
18062
+ break;
18063
+ }
18064
+ if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps")) {
18065
+ if (!$util.isInteger(message.bitrateKbps))
18066
+ return "bitrateKbps: integer expected";
18067
+ }
18068
+ if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval")) {
18069
+ if (!$util.isInteger(message.keyframeInterval))
18070
+ return "keyframeInterval: integer expected";
18071
+ }
18072
+ if (message.width != null && message.hasOwnProperty("width")) {
18073
+ if (!$util.isInteger(message.width))
18074
+ return "width: integer expected";
18075
+ }
18076
+ if (message.height != null && message.hasOwnProperty("height")) {
18077
+ if (!$util.isInteger(message.height))
18078
+ return "height: integer expected";
18079
+ }
18080
+ if (message.fps != null && message.hasOwnProperty("fps")) {
18081
+ if (typeof message.fps !== "number")
18082
+ return "fps: number expected";
18083
+ }
18084
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
18085
+ switch (message.timecodeMode) {
18086
+ default:
18087
+ return "timecodeMode: enum value expected";
18088
+ case 0:
18089
+ case 1:
18090
+ case 2:
18091
+ break;
18092
+ }
18093
+ if (message.timecodeSourceId != null && message.hasOwnProperty("timecodeSourceId")) {
18094
+ if (!$util.isString(message.timecodeSourceId))
18095
+ return "timecodeSourceId: string expected";
18096
+ }
18097
+ if (message.settings != null && message.hasOwnProperty("settings")) {
18098
+ let error = $root.sesame.v1.outputs.EncoderSettings.verify(message.settings);
18099
+ if (error)
18100
+ return "settings." + error;
18101
+ }
18102
+ return null;
18103
+ };
18104
+ EncoderConfig.fromObject = function fromObject(object) {
18105
+ if (object instanceof $root.sesame.v1.outputs.EncoderConfig)
18106
+ return object;
18107
+ let message = new $root.sesame.v1.outputs.EncoderConfig();
18108
+ switch (object.codec) {
18109
+ default:
18110
+ if (typeof object.codec === "number") {
18111
+ message.codec = object.codec;
18112
+ break;
18113
+ }
18114
+ break;
18115
+ case "CODEC_TYPE_UNSPECIFIED":
18116
+ case 0:
18117
+ message.codec = 0;
18118
+ break;
18119
+ case "CODEC_TYPE_VIDEO_VP8":
18120
+ case 1:
18121
+ message.codec = 1;
18122
+ break;
18123
+ case "CODEC_TYPE_VIDEO_VP9":
18124
+ case 2:
18125
+ message.codec = 2;
18126
+ break;
18127
+ case "CODEC_TYPE_VIDEO_AVC":
18128
+ case 3:
18129
+ message.codec = 3;
18130
+ break;
18131
+ case "CODEC_TYPE_VIDEO_HEVC":
18132
+ case 4:
18133
+ message.codec = 4;
18134
+ break;
18135
+ case "CODEC_TYPE_VIDEO_AV1":
18136
+ case 5:
18137
+ message.codec = 5;
18138
+ break;
18139
+ case "CODEC_TYPE_VIDEO_PRORES":
18140
+ case 6:
18141
+ message.codec = 6;
18142
+ break;
18143
+ case "CODEC_TYPE_VIDEO_DNXHR":
18144
+ case 7:
18145
+ message.codec = 7;
18146
+ break;
18147
+ case "CODEC_TYPE_AUDIO_OPUS":
18148
+ case 64:
18149
+ message.codec = 64;
18150
+ break;
18151
+ case "CODEC_TYPE_AUDIO_AAC":
18152
+ case 65:
18153
+ message.codec = 65;
18154
+ break;
18155
+ case "CODEC_TYPE_AUDIO_PCM":
18156
+ case 66:
18157
+ message.codec = 66;
18158
+ break;
18159
+ case "CODEC_TYPE_AUDIO_PCM_S24LE":
18160
+ case 67:
18161
+ message.codec = 67;
18162
+ break;
18163
+ }
18164
+ if (object.bitrateKbps != null)
18165
+ message.bitrateKbps = object.bitrateKbps >>> 0;
18166
+ if (object.keyframeInterval != null)
18167
+ message.keyframeInterval = object.keyframeInterval >>> 0;
18168
+ if (object.width != null)
18169
+ message.width = object.width >>> 0;
18170
+ if (object.height != null)
18171
+ message.height = object.height >>> 0;
18172
+ if (object.fps != null)
18173
+ message.fps = Number(object.fps);
18174
+ switch (object.timecodeMode) {
18175
+ default:
18176
+ if (typeof object.timecodeMode === "number") {
18177
+ message.timecodeMode = object.timecodeMode;
18178
+ break;
18179
+ }
18180
+ break;
18181
+ case "TIMECODE_MODE_UNSPECIFIED":
18182
+ case 0:
18183
+ message.timecodeMode = 0;
18184
+ break;
18185
+ case "TIMECODE_MODE_WALLCLOCK":
18186
+ case 1:
18187
+ message.timecodeMode = 1;
18188
+ break;
18189
+ case "TIMECODE_MODE_SOURCE":
18190
+ case 2:
18191
+ message.timecodeMode = 2;
18192
+ break;
18193
+ }
18194
+ if (object.timecodeSourceId != null)
18195
+ message.timecodeSourceId = String(object.timecodeSourceId);
18196
+ if (object.settings != null) {
18197
+ if (typeof object.settings !== "object")
18198
+ throw TypeError(".sesame.v1.outputs.EncoderConfig.settings: object expected");
18199
+ message.settings = $root.sesame.v1.outputs.EncoderSettings.fromObject(object.settings);
18200
+ }
18201
+ return message;
18202
+ };
18203
+ EncoderConfig.toObject = function toObject(message, options) {
18204
+ if (!options)
18205
+ options = {};
18206
+ let object = {};
18207
+ if (options.defaults) {
18208
+ object.codec = options.enums === String ? "CODEC_TYPE_UNSPECIFIED" : 0;
18209
+ object.bitrateKbps = 0;
18210
+ object.keyframeInterval = 0;
18211
+ object.width = 0;
18212
+ object.height = 0;
18213
+ object.fps = 0;
18214
+ object.timecodeMode = options.enums === String ? "TIMECODE_MODE_UNSPECIFIED" : 0;
18215
+ object.timecodeSourceId = "";
18216
+ object.settings = null;
18217
+ }
18218
+ if (message.codec != null && message.hasOwnProperty("codec"))
18219
+ object.codec = options.enums === String ? $root.sesame.v1.common.CodecType[message.codec] === void 0 ? message.codec : $root.sesame.v1.common.CodecType[message.codec] : message.codec;
18220
+ if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps"))
18221
+ object.bitrateKbps = message.bitrateKbps;
18222
+ if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval"))
18223
+ object.keyframeInterval = message.keyframeInterval;
18224
+ if (message.width != null && message.hasOwnProperty("width"))
18225
+ object.width = message.width;
18226
+ if (message.height != null && message.hasOwnProperty("height"))
18227
+ object.height = message.height;
18228
+ if (message.fps != null && message.hasOwnProperty("fps"))
18229
+ object.fps = options.json && !isFinite(message.fps) ? String(message.fps) : message.fps;
18230
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
18231
+ object.timecodeMode = options.enums === String ? $root.sesame.v1.outputs.TimecodeMode[message.timecodeMode] === void 0 ? message.timecodeMode : $root.sesame.v1.outputs.TimecodeMode[message.timecodeMode] : message.timecodeMode;
18232
+ if (message.timecodeSourceId != null && message.hasOwnProperty("timecodeSourceId"))
18233
+ object.timecodeSourceId = message.timecodeSourceId;
18234
+ if (message.settings != null && message.hasOwnProperty("settings"))
18235
+ object.settings = $root.sesame.v1.outputs.EncoderSettings.toObject(message.settings, options);
18236
+ return object;
18237
+ };
18238
+ EncoderConfig.prototype.toJSON = function toJSON() {
18239
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
18240
+ };
18241
+ EncoderConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
18242
+ if (typeUrlPrefix === void 0) {
18243
+ typeUrlPrefix = "type.googleapis.com";
18244
+ }
18245
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderConfig";
18246
+ };
18247
+ return EncoderConfig;
18248
+ }();
18249
+ outputs.EncoderAddRequest = function() {
18250
+ function EncoderAddRequest(properties) {
18251
+ if (properties) {
18252
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
18253
+ if (properties[keys[i]] != null)
18254
+ this[keys[i]] = properties[keys[i]];
18255
+ }
18256
+ }
18257
+ EncoderAddRequest.prototype.id = "";
18258
+ EncoderAddRequest.prototype.compositionId = "";
18259
+ EncoderAddRequest.prototype.encoder = null;
18260
+ EncoderAddRequest.create = function create(properties) {
18261
+ return new EncoderAddRequest(properties);
18262
+ };
18263
+ EncoderAddRequest.encode = function encode(message, writer) {
18264
+ if (!writer)
18265
+ writer = $Writer.create();
18266
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
18267
+ writer.uint32(
18268
+ /* id 1, wireType 2 =*/
18269
+ 10
18270
+ ).string(message.id);
18271
+ if (message.compositionId != null && Object.hasOwnProperty.call(message, "compositionId"))
18272
+ writer.uint32(
18273
+ /* id 2, wireType 2 =*/
18274
+ 18
18275
+ ).string(message.compositionId);
18276
+ if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
18277
+ $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
18278
+ /* id 3, wireType 2 =*/
18279
+ 26
18280
+ ).fork()).ldelim();
18281
+ return writer;
18282
+ };
18283
+ EncoderAddRequest.encodeDelimited = function encodeDelimited(message, writer) {
18284
+ return this.encode(message, writer).ldelim();
18285
+ };
18286
+ EncoderAddRequest.decode = function decode(reader, length, error) {
18287
+ if (!(reader instanceof $Reader))
18288
+ reader = $Reader.create(reader);
18289
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderAddRequest();
18290
+ while (reader.pos < end) {
18291
+ let tag = reader.uint32();
18292
+ if (tag === error)
18293
+ break;
18294
+ switch (tag >>> 3) {
18295
+ case 1: {
18296
+ message.id = reader.string();
18297
+ break;
18298
+ }
18299
+ case 2: {
18300
+ message.compositionId = reader.string();
18301
+ break;
18302
+ }
18303
+ case 3: {
18304
+ message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
18305
+ break;
18306
+ }
18307
+ default:
18308
+ reader.skipType(tag & 7);
18309
+ break;
18310
+ }
18311
+ }
18312
+ return message;
18313
+ };
18314
+ EncoderAddRequest.decodeDelimited = function decodeDelimited(reader) {
18315
+ if (!(reader instanceof $Reader))
18316
+ reader = new $Reader(reader);
18317
+ return this.decode(reader, reader.uint32());
18318
+ };
18319
+ EncoderAddRequest.verify = function verify(message) {
18320
+ if (typeof message !== "object" || message === null)
18321
+ return "object expected";
18322
+ if (message.id != null && message.hasOwnProperty("id")) {
18323
+ if (!$util.isString(message.id))
18324
+ return "id: string expected";
18325
+ }
18326
+ if (message.compositionId != null && message.hasOwnProperty("compositionId")) {
18327
+ if (!$util.isString(message.compositionId))
18328
+ return "compositionId: string expected";
18329
+ }
17575
18330
  if (message.encoder != null && message.hasOwnProperty("encoder")) {
17576
18331
  let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
17577
18332
  if (error)
@@ -17852,6 +18607,8 @@ var sesame = $root.sesame = (() => {
17852
18607
  DecklinkOutputConfig.prototype.deviceIndex = 0;
17853
18608
  DecklinkOutputConfig.prototype.videoFormat = 0;
17854
18609
  DecklinkOutputConfig.prototype.keyAndFill = false;
18610
+ DecklinkOutputConfig.prototype.timecodeMode = 0;
18611
+ DecklinkOutputConfig.prototype.timecodeSourceId = "";
17855
18612
  DecklinkOutputConfig.create = function create(properties) {
17856
18613
  return new DecklinkOutputConfig(properties);
17857
18614
  };
@@ -17873,11 +18630,21 @@ var sesame = $root.sesame = (() => {
17873
18630
  /* id 3, wireType 0 =*/
17874
18631
  24
17875
18632
  ).bool(message.keyAndFill);
17876
- return writer;
17877
- };
17878
- DecklinkOutputConfig.encodeDelimited = function encodeDelimited(message, writer) {
17879
- return this.encode(message, writer).ldelim();
17880
- };
18633
+ if (message.timecodeMode != null && Object.hasOwnProperty.call(message, "timecodeMode"))
18634
+ writer.uint32(
18635
+ /* id 4, wireType 0 =*/
18636
+ 32
18637
+ ).int32(message.timecodeMode);
18638
+ if (message.timecodeSourceId != null && Object.hasOwnProperty.call(message, "timecodeSourceId"))
18639
+ writer.uint32(
18640
+ /* id 5, wireType 2 =*/
18641
+ 42
18642
+ ).string(message.timecodeSourceId);
18643
+ return writer;
18644
+ };
18645
+ DecklinkOutputConfig.encodeDelimited = function encodeDelimited(message, writer) {
18646
+ return this.encode(message, writer).ldelim();
18647
+ };
17881
18648
  DecklinkOutputConfig.decode = function decode(reader, length, error) {
17882
18649
  if (!(reader instanceof $Reader))
17883
18650
  reader = $Reader.create(reader);
@@ -17899,6 +18666,14 @@ var sesame = $root.sesame = (() => {
17899
18666
  message.keyAndFill = reader.bool();
17900
18667
  break;
17901
18668
  }
18669
+ case 4: {
18670
+ message.timecodeMode = reader.int32();
18671
+ break;
18672
+ }
18673
+ case 5: {
18674
+ message.timecodeSourceId = reader.string();
18675
+ break;
18676
+ }
17902
18677
  default:
17903
18678
  reader.skipType(tag & 7);
17904
18679
  break;
@@ -17933,6 +18708,19 @@ var sesame = $root.sesame = (() => {
17933
18708
  if (typeof message.keyAndFill !== "boolean")
17934
18709
  return "keyAndFill: boolean expected";
17935
18710
  }
18711
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
18712
+ switch (message.timecodeMode) {
18713
+ default:
18714
+ return "timecodeMode: enum value expected";
18715
+ case 0:
18716
+ case 1:
18717
+ case 2:
18718
+ break;
18719
+ }
18720
+ if (message.timecodeSourceId != null && message.hasOwnProperty("timecodeSourceId")) {
18721
+ if (!$util.isString(message.timecodeSourceId))
18722
+ return "timecodeSourceId: string expected";
18723
+ }
17936
18724
  return null;
17937
18725
  };
17938
18726
  DecklinkOutputConfig.fromObject = function fromObject(object) {
@@ -17971,6 +18759,28 @@ var sesame = $root.sesame = (() => {
17971
18759
  }
17972
18760
  if (object.keyAndFill != null)
17973
18761
  message.keyAndFill = Boolean(object.keyAndFill);
18762
+ switch (object.timecodeMode) {
18763
+ default:
18764
+ if (typeof object.timecodeMode === "number") {
18765
+ message.timecodeMode = object.timecodeMode;
18766
+ break;
18767
+ }
18768
+ break;
18769
+ case "TIMECODE_MODE_UNSPECIFIED":
18770
+ case 0:
18771
+ message.timecodeMode = 0;
18772
+ break;
18773
+ case "TIMECODE_MODE_WALLCLOCK":
18774
+ case 1:
18775
+ message.timecodeMode = 1;
18776
+ break;
18777
+ case "TIMECODE_MODE_SOURCE":
18778
+ case 2:
18779
+ message.timecodeMode = 2;
18780
+ break;
18781
+ }
18782
+ if (object.timecodeSourceId != null)
18783
+ message.timecodeSourceId = String(object.timecodeSourceId);
17974
18784
  return message;
17975
18785
  };
17976
18786
  DecklinkOutputConfig.toObject = function toObject(message, options) {
@@ -17981,6 +18791,8 @@ var sesame = $root.sesame = (() => {
17981
18791
  object.deviceIndex = 0;
17982
18792
  object.videoFormat = options.enums === String ? "VIDEO_FORMAT_UNSPECIFIED" : 0;
17983
18793
  object.keyAndFill = false;
18794
+ object.timecodeMode = options.enums === String ? "TIMECODE_MODE_UNSPECIFIED" : 0;
18795
+ object.timecodeSourceId = "";
17984
18796
  }
17985
18797
  if (message.deviceIndex != null && message.hasOwnProperty("deviceIndex"))
17986
18798
  object.deviceIndex = message.deviceIndex;
@@ -17988,6 +18800,10 @@ var sesame = $root.sesame = (() => {
17988
18800
  object.videoFormat = options.enums === String ? $root.sesame.v1.common.VideoFormat[message.videoFormat] === void 0 ? message.videoFormat : $root.sesame.v1.common.VideoFormat[message.videoFormat] : message.videoFormat;
17989
18801
  if (message.keyAndFill != null && message.hasOwnProperty("keyAndFill"))
17990
18802
  object.keyAndFill = message.keyAndFill;
18803
+ if (message.timecodeMode != null && message.hasOwnProperty("timecodeMode"))
18804
+ object.timecodeMode = options.enums === String ? $root.sesame.v1.outputs.TimecodeMode[message.timecodeMode] === void 0 ? message.timecodeMode : $root.sesame.v1.outputs.TimecodeMode[message.timecodeMode] : message.timecodeMode;
18805
+ if (message.timecodeSourceId != null && message.hasOwnProperty("timecodeSourceId"))
18806
+ object.timecodeSourceId = message.timecodeSourceId;
17991
18807
  return object;
17992
18808
  };
17993
18809
  DecklinkOutputConfig.prototype.toJSON = function toJSON() {
@@ -18594,6 +19410,13 @@ var sesame = $root.sesame = (() => {
18594
19410
  };
18595
19411
  return EncodedSuperSlowMoRecorderOutputConfig;
18596
19412
  }();
19413
+ outputs.SrtStreamControl = function() {
19414
+ const valuesById = {}, values = Object.create(valuesById);
19415
+ values[valuesById[0] = "SRT_STREAM_CONTROL_UNSPECIFIED"] = 0;
19416
+ values[valuesById[1] = "SRT_STREAM_CONTROL_STARTED"] = 1;
19417
+ values[valuesById[2] = "SRT_STREAM_CONTROL_MANUAL"] = 2;
19418
+ return values;
19419
+ }();
18597
19420
  outputs.EncodedSrtOutputConfig = function() {
18598
19421
  function EncodedSrtOutputConfig(properties) {
18599
19422
  if (properties) {
@@ -18604,6 +19427,7 @@ var sesame = $root.sesame = (() => {
18604
19427
  }
18605
19428
  EncodedSrtOutputConfig.prototype.url = "";
18606
19429
  EncodedSrtOutputConfig.prototype.encoderId = "";
19430
+ EncodedSrtOutputConfig.prototype.control = 0;
18607
19431
  EncodedSrtOutputConfig.create = function create(properties) {
18608
19432
  return new EncodedSrtOutputConfig(properties);
18609
19433
  };
@@ -18620,6 +19444,11 @@ var sesame = $root.sesame = (() => {
18620
19444
  /* id 2, wireType 2 =*/
18621
19445
  18
18622
19446
  ).string(message.encoderId);
19447
+ if (message.control != null && Object.hasOwnProperty.call(message, "control"))
19448
+ writer.uint32(
19449
+ /* id 3, wireType 0 =*/
19450
+ 24
19451
+ ).int32(message.control);
18623
19452
  return writer;
18624
19453
  };
18625
19454
  EncodedSrtOutputConfig.encodeDelimited = function encodeDelimited(message, writer) {
@@ -18642,6 +19471,10 @@ var sesame = $root.sesame = (() => {
18642
19471
  message.encoderId = reader.string();
18643
19472
  break;
18644
19473
  }
19474
+ case 3: {
19475
+ message.control = reader.int32();
19476
+ break;
19477
+ }
18645
19478
  default:
18646
19479
  reader.skipType(tag & 7);
18647
19480
  break;
@@ -18665,6 +19498,15 @@ var sesame = $root.sesame = (() => {
18665
19498
  if (!$util.isString(message.encoderId))
18666
19499
  return "encoderId: string expected";
18667
19500
  }
19501
+ if (message.control != null && message.hasOwnProperty("control"))
19502
+ switch (message.control) {
19503
+ default:
19504
+ return "control: enum value expected";
19505
+ case 0:
19506
+ case 1:
19507
+ case 2:
19508
+ break;
19509
+ }
18668
19510
  return null;
18669
19511
  };
18670
19512
  EncodedSrtOutputConfig.fromObject = function fromObject(object) {
@@ -18675,6 +19517,26 @@ var sesame = $root.sesame = (() => {
18675
19517
  message.url = String(object.url);
18676
19518
  if (object.encoderId != null)
18677
19519
  message.encoderId = String(object.encoderId);
19520
+ switch (object.control) {
19521
+ default:
19522
+ if (typeof object.control === "number") {
19523
+ message.control = object.control;
19524
+ break;
19525
+ }
19526
+ break;
19527
+ case "SRT_STREAM_CONTROL_UNSPECIFIED":
19528
+ case 0:
19529
+ message.control = 0;
19530
+ break;
19531
+ case "SRT_STREAM_CONTROL_STARTED":
19532
+ case 1:
19533
+ message.control = 1;
19534
+ break;
19535
+ case "SRT_STREAM_CONTROL_MANUAL":
19536
+ case 2:
19537
+ message.control = 2;
19538
+ break;
19539
+ }
18678
19540
  return message;
18679
19541
  };
18680
19542
  EncodedSrtOutputConfig.toObject = function toObject(message, options) {
@@ -18684,11 +19546,14 @@ var sesame = $root.sesame = (() => {
18684
19546
  if (options.defaults) {
18685
19547
  object.url = "";
18686
19548
  object.encoderId = "";
19549
+ object.control = options.enums === String ? "SRT_STREAM_CONTROL_UNSPECIFIED" : 0;
18687
19550
  }
18688
19551
  if (message.url != null && message.hasOwnProperty("url"))
18689
19552
  object.url = message.url;
18690
19553
  if (message.encoderId != null && message.hasOwnProperty("encoderId"))
18691
19554
  object.encoderId = message.encoderId;
19555
+ if (message.control != null && message.hasOwnProperty("control"))
19556
+ object.control = options.enums === String ? $root.sesame.v1.outputs.SrtStreamControl[message.control] === void 0 ? message.control : $root.sesame.v1.outputs.SrtStreamControl[message.control] : message.control;
18692
19557
  return object;
18693
19558
  };
18694
19559
  EncodedSrtOutputConfig.prototype.toJSON = function toJSON() {
@@ -19811,6 +20676,144 @@ var sesame = $root.sesame = (() => {
19811
20676
  };
19812
20677
  return OutputRemoveRequest;
19813
20678
  }();
20679
+ outputs.OutputControlAction = function() {
20680
+ const valuesById = {}, values = Object.create(valuesById);
20681
+ values[valuesById[0] = "OUTPUT_CONTROL_ACTION_UNSPECIFIED"] = 0;
20682
+ values[valuesById[1] = "OUTPUT_CONTROL_ACTION_START"] = 1;
20683
+ values[valuesById[2] = "OUTPUT_CONTROL_ACTION_STOP"] = 2;
20684
+ return values;
20685
+ }();
20686
+ outputs.OutputControlRequest = function() {
20687
+ function OutputControlRequest(properties) {
20688
+ if (properties) {
20689
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
20690
+ if (properties[keys[i]] != null)
20691
+ this[keys[i]] = properties[keys[i]];
20692
+ }
20693
+ }
20694
+ OutputControlRequest.prototype.id = "";
20695
+ OutputControlRequest.prototype.action = 0;
20696
+ OutputControlRequest.create = function create(properties) {
20697
+ return new OutputControlRequest(properties);
20698
+ };
20699
+ OutputControlRequest.encode = function encode(message, writer) {
20700
+ if (!writer)
20701
+ writer = $Writer.create();
20702
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
20703
+ writer.uint32(
20704
+ /* id 1, wireType 2 =*/
20705
+ 10
20706
+ ).string(message.id);
20707
+ if (message.action != null && Object.hasOwnProperty.call(message, "action"))
20708
+ writer.uint32(
20709
+ /* id 2, wireType 0 =*/
20710
+ 16
20711
+ ).int32(message.action);
20712
+ return writer;
20713
+ };
20714
+ OutputControlRequest.encodeDelimited = function encodeDelimited(message, writer) {
20715
+ return this.encode(message, writer).ldelim();
20716
+ };
20717
+ OutputControlRequest.decode = function decode(reader, length, error) {
20718
+ if (!(reader instanceof $Reader))
20719
+ reader = $Reader.create(reader);
20720
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.OutputControlRequest();
20721
+ while (reader.pos < end) {
20722
+ let tag = reader.uint32();
20723
+ if (tag === error)
20724
+ break;
20725
+ switch (tag >>> 3) {
20726
+ case 1: {
20727
+ message.id = reader.string();
20728
+ break;
20729
+ }
20730
+ case 2: {
20731
+ message.action = reader.int32();
20732
+ break;
20733
+ }
20734
+ default:
20735
+ reader.skipType(tag & 7);
20736
+ break;
20737
+ }
20738
+ }
20739
+ return message;
20740
+ };
20741
+ OutputControlRequest.decodeDelimited = function decodeDelimited(reader) {
20742
+ if (!(reader instanceof $Reader))
20743
+ reader = new $Reader(reader);
20744
+ return this.decode(reader, reader.uint32());
20745
+ };
20746
+ OutputControlRequest.verify = function verify(message) {
20747
+ if (typeof message !== "object" || message === null)
20748
+ return "object expected";
20749
+ if (message.id != null && message.hasOwnProperty("id")) {
20750
+ if (!$util.isString(message.id))
20751
+ return "id: string expected";
20752
+ }
20753
+ if (message.action != null && message.hasOwnProperty("action"))
20754
+ switch (message.action) {
20755
+ default:
20756
+ return "action: enum value expected";
20757
+ case 0:
20758
+ case 1:
20759
+ case 2:
20760
+ break;
20761
+ }
20762
+ return null;
20763
+ };
20764
+ OutputControlRequest.fromObject = function fromObject(object) {
20765
+ if (object instanceof $root.sesame.v1.outputs.OutputControlRequest)
20766
+ return object;
20767
+ let message = new $root.sesame.v1.outputs.OutputControlRequest();
20768
+ if (object.id != null)
20769
+ message.id = String(object.id);
20770
+ switch (object.action) {
20771
+ default:
20772
+ if (typeof object.action === "number") {
20773
+ message.action = object.action;
20774
+ break;
20775
+ }
20776
+ break;
20777
+ case "OUTPUT_CONTROL_ACTION_UNSPECIFIED":
20778
+ case 0:
20779
+ message.action = 0;
20780
+ break;
20781
+ case "OUTPUT_CONTROL_ACTION_START":
20782
+ case 1:
20783
+ message.action = 1;
20784
+ break;
20785
+ case "OUTPUT_CONTROL_ACTION_STOP":
20786
+ case 2:
20787
+ message.action = 2;
20788
+ break;
20789
+ }
20790
+ return message;
20791
+ };
20792
+ OutputControlRequest.toObject = function toObject(message, options) {
20793
+ if (!options)
20794
+ options = {};
20795
+ let object = {};
20796
+ if (options.defaults) {
20797
+ object.id = "";
20798
+ object.action = options.enums === String ? "OUTPUT_CONTROL_ACTION_UNSPECIFIED" : 0;
20799
+ }
20800
+ if (message.id != null && message.hasOwnProperty("id"))
20801
+ object.id = message.id;
20802
+ if (message.action != null && message.hasOwnProperty("action"))
20803
+ object.action = options.enums === String ? $root.sesame.v1.outputs.OutputControlAction[message.action] === void 0 ? message.action : $root.sesame.v1.outputs.OutputControlAction[message.action] : message.action;
20804
+ return object;
20805
+ };
20806
+ OutputControlRequest.prototype.toJSON = function toJSON() {
20807
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
20808
+ };
20809
+ OutputControlRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
20810
+ if (typeUrlPrefix === void 0) {
20811
+ typeUrlPrefix = "type.googleapis.com";
20812
+ }
20813
+ return typeUrlPrefix + "/sesame.v1.outputs.OutputControlRequest";
20814
+ };
20815
+ return OutputControlRequest;
20816
+ }();
19814
20817
  outputs.KeyframeRequest = function() {
19815
20818
  function KeyframeRequest(properties) {
19816
20819
  if (properties) {
@@ -19915,6 +20918,7 @@ var sesame = $root.sesame = (() => {
19915
20918
  OutputStatus.prototype.bufferSize = 0;
19916
20919
  OutputStatus.prototype.srtStats = null;
19917
20920
  OutputStatus.prototype.encoderId = "";
20921
+ OutputStatus.prototype.control = 0;
19918
20922
  let $oneOfFields;
19919
20923
  Object.defineProperty(OutputStatus.prototype, "_msg", {
19920
20924
  get: $util.oneOfGetter($oneOfFields = ["msg"]),
@@ -19970,6 +20974,11 @@ var sesame = $root.sesame = (() => {
19970
20974
  /* id 8, wireType 2 =*/
19971
20975
  66
19972
20976
  ).string(message.encoderId);
20977
+ if (message.control != null && Object.hasOwnProperty.call(message, "control"))
20978
+ writer.uint32(
20979
+ /* id 9, wireType 0 =*/
20980
+ 72
20981
+ ).int32(message.control);
19973
20982
  return writer;
19974
20983
  };
19975
20984
  OutputStatus.encodeDelimited = function encodeDelimited(message, writer) {
@@ -20016,6 +21025,10 @@ var sesame = $root.sesame = (() => {
20016
21025
  message.encoderId = reader.string();
20017
21026
  break;
20018
21027
  }
21028
+ case 9: {
21029
+ message.control = reader.int32();
21030
+ break;
21031
+ }
20019
21032
  default:
20020
21033
  reader.skipType(tag & 7);
20021
21034
  break;
@@ -20061,6 +21074,7 @@ var sesame = $root.sesame = (() => {
20061
21074
  case 4:
20062
21075
  case 5:
20063
21076
  case 6:
21077
+ case 7:
20064
21078
  break;
20065
21079
  }
20066
21080
  if (message.msg != null && message.hasOwnProperty("msg")) {
@@ -20088,6 +21102,15 @@ var sesame = $root.sesame = (() => {
20088
21102
  if (!$util.isString(message.encoderId))
20089
21103
  return "encoderId: string expected";
20090
21104
  }
21105
+ if (message.control != null && message.hasOwnProperty("control"))
21106
+ switch (message.control) {
21107
+ default:
21108
+ return "control: enum value expected";
21109
+ case 0:
21110
+ case 1:
21111
+ case 2:
21112
+ break;
21113
+ }
20091
21114
  return null;
20092
21115
  };
20093
21116
  OutputStatus.fromObject = function fromObject(object) {
@@ -20171,6 +21194,10 @@ var sesame = $root.sesame = (() => {
20171
21194
  case 6:
20172
21195
  message.state = 6;
20173
21196
  break;
21197
+ case "CONNECTION_STATE_DISABLED":
21198
+ case 7:
21199
+ message.state = 7;
21200
+ break;
20174
21201
  }
20175
21202
  if (object.msg != null)
20176
21203
  message.msg = String(object.msg);
@@ -20185,6 +21212,26 @@ var sesame = $root.sesame = (() => {
20185
21212
  }
20186
21213
  if (object.encoderId != null)
20187
21214
  message.encoderId = String(object.encoderId);
21215
+ switch (object.control) {
21216
+ default:
21217
+ if (typeof object.control === "number") {
21218
+ message.control = object.control;
21219
+ break;
21220
+ }
21221
+ break;
21222
+ case "SRT_STREAM_CONTROL_UNSPECIFIED":
21223
+ case 0:
21224
+ message.control = 0;
21225
+ break;
21226
+ case "SRT_STREAM_CONTROL_STARTED":
21227
+ case 1:
21228
+ message.control = 1;
21229
+ break;
21230
+ case "SRT_STREAM_CONTROL_MANUAL":
21231
+ case 2:
21232
+ message.control = 2;
21233
+ break;
21234
+ }
20188
21235
  return message;
20189
21236
  };
20190
21237
  OutputStatus.toObject = function toObject(message, options) {
@@ -20198,6 +21245,7 @@ var sesame = $root.sesame = (() => {
20198
21245
  object.url = "";
20199
21246
  object.bufferSize = 0;
20200
21247
  object.encoderId = "";
21248
+ object.control = options.enums === String ? "SRT_STREAM_CONTROL_UNSPECIFIED" : 0;
20201
21249
  }
20202
21250
  if (message.id != null && message.hasOwnProperty("id"))
20203
21251
  object.id = message.id;
@@ -20221,6 +21269,8 @@ var sesame = $root.sesame = (() => {
20221
21269
  }
20222
21270
  if (message.encoderId != null && message.hasOwnProperty("encoderId"))
20223
21271
  object.encoderId = message.encoderId;
21272
+ if (message.control != null && message.hasOwnProperty("control"))
21273
+ object.control = options.enums === String ? $root.sesame.v1.outputs.SrtStreamControl[message.control] === void 0 ? message.control : $root.sesame.v1.outputs.SrtStreamControl[message.control] : message.control;
20224
21274
  return object;
20225
21275
  };
20226
21276
  OutputStatus.prototype.toJSON = function toJSON() {
@@ -20247,6 +21297,7 @@ var sesame = $root.sesame = (() => {
20247
21297
  EncoderStatus.prototype.state = 0;
20248
21298
  EncoderStatus.prototype.msg = null;
20249
21299
  EncoderStatus.prototype.compositionId = "";
21300
+ EncoderStatus.prototype.droppedFrames = 0;
20250
21301
  let $oneOfFields;
20251
21302
  Object.defineProperty(EncoderStatus.prototype, "_msg", {
20252
21303
  get: $util.oneOfGetter($oneOfFields = ["msg"]),
@@ -20283,6 +21334,11 @@ var sesame = $root.sesame = (() => {
20283
21334
  /* id 5, wireType 2 =*/
20284
21335
  42
20285
21336
  ).string(message.compositionId);
21337
+ if (message.droppedFrames != null && Object.hasOwnProperty.call(message, "droppedFrames"))
21338
+ writer.uint32(
21339
+ /* id 6, wireType 0 =*/
21340
+ 48
21341
+ ).uint32(message.droppedFrames);
20286
21342
  return writer;
20287
21343
  };
20288
21344
  EncoderStatus.encodeDelimited = function encodeDelimited(message, writer) {
@@ -20317,6 +21373,10 @@ var sesame = $root.sesame = (() => {
20317
21373
  message.compositionId = reader.string();
20318
21374
  break;
20319
21375
  }
21376
+ case 6: {
21377
+ message.droppedFrames = reader.uint32();
21378
+ break;
21379
+ }
20320
21380
  default:
20321
21381
  reader.skipType(tag & 7);
20322
21382
  break;
@@ -20356,6 +21416,7 @@ var sesame = $root.sesame = (() => {
20356
21416
  case 4:
20357
21417
  case 5:
20358
21418
  case 6:
21419
+ case 7:
20359
21420
  break;
20360
21421
  }
20361
21422
  if (message.msg != null && message.hasOwnProperty("msg")) {
@@ -20367,6 +21428,10 @@ var sesame = $root.sesame = (() => {
20367
21428
  if (!$util.isString(message.compositionId))
20368
21429
  return "compositionId: string expected";
20369
21430
  }
21431
+ if (message.droppedFrames != null && message.hasOwnProperty("droppedFrames")) {
21432
+ if (!$util.isInteger(message.droppedFrames))
21433
+ return "droppedFrames: integer expected";
21434
+ }
20370
21435
  return null;
20371
21436
  };
20372
21437
  EncoderStatus.fromObject = function fromObject(object) {
@@ -20426,11 +21491,17 @@ var sesame = $root.sesame = (() => {
20426
21491
  case 6:
20427
21492
  message.state = 6;
20428
21493
  break;
21494
+ case "CONNECTION_STATE_DISABLED":
21495
+ case 7:
21496
+ message.state = 7;
21497
+ break;
20429
21498
  }
20430
21499
  if (object.msg != null)
20431
21500
  message.msg = String(object.msg);
20432
21501
  if (object.compositionId != null)
20433
21502
  message.compositionId = String(object.compositionId);
21503
+ if (object.droppedFrames != null)
21504
+ message.droppedFrames = object.droppedFrames >>> 0;
20434
21505
  return message;
20435
21506
  };
20436
21507
  EncoderStatus.toObject = function toObject(message, options) {
@@ -20442,6 +21513,7 @@ var sesame = $root.sesame = (() => {
20442
21513
  object.type = options.enums === String ? "ENCODER_TYPE_UNSPECIFIED" : 0;
20443
21514
  object.state = options.enums === String ? "CONNECTION_STATE_UNSPECIFIED" : 0;
20444
21515
  object.compositionId = "";
21516
+ object.droppedFrames = 0;
20445
21517
  }
20446
21518
  if (message.id != null && message.hasOwnProperty("id"))
20447
21519
  object.id = message.id;
@@ -20456,6 +21528,8 @@ var sesame = $root.sesame = (() => {
20456
21528
  }
20457
21529
  if (message.compositionId != null && message.hasOwnProperty("compositionId"))
20458
21530
  object.compositionId = message.compositionId;
21531
+ if (message.droppedFrames != null && message.hasOwnProperty("droppedFrames"))
21532
+ object.droppedFrames = message.droppedFrames;
20459
21533
  return object;
20460
21534
  };
20461
21535
  EncoderStatus.prototype.toJSON = function toJSON() {
@@ -21143,83 +22217,1051 @@ var sesame = $root.sesame = (() => {
21143
22217
  }
21144
22218
  return message;
21145
22219
  };
21146
- NodeAddRequest.toObject = function toObject(message, options) {
22220
+ NodeAddRequest.toObject = function toObject(message, options) {
22221
+ if (!options)
22222
+ options = {};
22223
+ let object = {};
22224
+ if (options.defaults) {
22225
+ object.compositorId = "";
22226
+ object.parentAddress = "";
22227
+ object.nodeId = "";
22228
+ object.nodeType = options.enums === String ? "NODE_TYPE_UNSPECIFIED" : 0;
22229
+ }
22230
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
22231
+ object.compositorId = message.compositorId;
22232
+ if (message.parentAddress != null && message.hasOwnProperty("parentAddress"))
22233
+ object.parentAddress = message.parentAddress;
22234
+ if (message.nodeId != null && message.hasOwnProperty("nodeId"))
22235
+ object.nodeId = message.nodeId;
22236
+ if (message.nodeType != null && message.hasOwnProperty("nodeType"))
22237
+ object.nodeType = options.enums === String ? $root.sesame.v1.compositor.NodeType[message.nodeType] === void 0 ? message.nodeType : $root.sesame.v1.compositor.NodeType[message.nodeType] : message.nodeType;
22238
+ return object;
22239
+ };
22240
+ NodeAddRequest.prototype.toJSON = function toJSON() {
22241
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22242
+ };
22243
+ NodeAddRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22244
+ if (typeUrlPrefix === void 0) {
22245
+ typeUrlPrefix = "type.googleapis.com";
22246
+ }
22247
+ return typeUrlPrefix + "/sesame.v1.compositor.NodeAddRequest";
22248
+ };
22249
+ return NodeAddRequest;
22250
+ }();
22251
+ compositor.NodeRemoveRequest = function() {
22252
+ function NodeRemoveRequest(properties) {
22253
+ if (properties) {
22254
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22255
+ if (properties[keys[i]] != null)
22256
+ this[keys[i]] = properties[keys[i]];
22257
+ }
22258
+ }
22259
+ NodeRemoveRequest.prototype.compositorId = "";
22260
+ NodeRemoveRequest.prototype.address = "";
22261
+ NodeRemoveRequest.create = function create(properties) {
22262
+ return new NodeRemoveRequest(properties);
22263
+ };
22264
+ NodeRemoveRequest.encode = function encode(message, writer) {
22265
+ if (!writer)
22266
+ writer = $Writer.create();
22267
+ if (message.compositorId != null && Object.hasOwnProperty.call(message, "compositorId"))
22268
+ writer.uint32(
22269
+ /* id 1, wireType 2 =*/
22270
+ 10
22271
+ ).string(message.compositorId);
22272
+ if (message.address != null && Object.hasOwnProperty.call(message, "address"))
22273
+ writer.uint32(
22274
+ /* id 2, wireType 2 =*/
22275
+ 18
22276
+ ).string(message.address);
22277
+ return writer;
22278
+ };
22279
+ NodeRemoveRequest.encodeDelimited = function encodeDelimited(message, writer) {
22280
+ return this.encode(message, writer).ldelim();
22281
+ };
22282
+ NodeRemoveRequest.decode = function decode(reader, length, error) {
22283
+ if (!(reader instanceof $Reader))
22284
+ reader = $Reader.create(reader);
22285
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.NodeRemoveRequest();
22286
+ while (reader.pos < end) {
22287
+ let tag = reader.uint32();
22288
+ if (tag === error)
22289
+ break;
22290
+ switch (tag >>> 3) {
22291
+ case 1: {
22292
+ message.compositorId = reader.string();
22293
+ break;
22294
+ }
22295
+ case 2: {
22296
+ message.address = reader.string();
22297
+ break;
22298
+ }
22299
+ default:
22300
+ reader.skipType(tag & 7);
22301
+ break;
22302
+ }
22303
+ }
22304
+ return message;
22305
+ };
22306
+ NodeRemoveRequest.decodeDelimited = function decodeDelimited(reader) {
22307
+ if (!(reader instanceof $Reader))
22308
+ reader = new $Reader(reader);
22309
+ return this.decode(reader, reader.uint32());
22310
+ };
22311
+ NodeRemoveRequest.verify = function verify(message) {
22312
+ if (typeof message !== "object" || message === null)
22313
+ return "object expected";
22314
+ if (message.compositorId != null && message.hasOwnProperty("compositorId")) {
22315
+ if (!$util.isString(message.compositorId))
22316
+ return "compositorId: string expected";
22317
+ }
22318
+ if (message.address != null && message.hasOwnProperty("address")) {
22319
+ if (!$util.isString(message.address))
22320
+ return "address: string expected";
22321
+ }
22322
+ return null;
22323
+ };
22324
+ NodeRemoveRequest.fromObject = function fromObject(object) {
22325
+ if (object instanceof $root.sesame.v1.compositor.NodeRemoveRequest)
22326
+ return object;
22327
+ let message = new $root.sesame.v1.compositor.NodeRemoveRequest();
22328
+ if (object.compositorId != null)
22329
+ message.compositorId = String(object.compositorId);
22330
+ if (object.address != null)
22331
+ message.address = String(object.address);
22332
+ return message;
22333
+ };
22334
+ NodeRemoveRequest.toObject = function toObject(message, options) {
22335
+ if (!options)
22336
+ options = {};
22337
+ let object = {};
22338
+ if (options.defaults) {
22339
+ object.compositorId = "";
22340
+ object.address = "";
22341
+ }
22342
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
22343
+ object.compositorId = message.compositorId;
22344
+ if (message.address != null && message.hasOwnProperty("address"))
22345
+ object.address = message.address;
22346
+ return object;
22347
+ };
22348
+ NodeRemoveRequest.prototype.toJSON = function toJSON() {
22349
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22350
+ };
22351
+ NodeRemoveRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22352
+ if (typeUrlPrefix === void 0) {
22353
+ typeUrlPrefix = "type.googleapis.com";
22354
+ }
22355
+ return typeUrlPrefix + "/sesame.v1.compositor.NodeRemoveRequest";
22356
+ };
22357
+ return NodeRemoveRequest;
22358
+ }();
22359
+ compositor.SideDataSetRequest = function() {
22360
+ function SideDataSetRequest(properties) {
22361
+ if (properties) {
22362
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22363
+ if (properties[keys[i]] != null)
22364
+ this[keys[i]] = properties[keys[i]];
22365
+ }
22366
+ }
22367
+ SideDataSetRequest.prototype.compositorId = "";
22368
+ SideDataSetRequest.prototype.sideData = null;
22369
+ SideDataSetRequest.create = function create(properties) {
22370
+ return new SideDataSetRequest(properties);
22371
+ };
22372
+ SideDataSetRequest.encode = function encode(message, writer) {
22373
+ if (!writer)
22374
+ writer = $Writer.create();
22375
+ if (message.compositorId != null && Object.hasOwnProperty.call(message, "compositorId"))
22376
+ writer.uint32(
22377
+ /* id 1, wireType 2 =*/
22378
+ 10
22379
+ ).string(message.compositorId);
22380
+ if (message.sideData != null && Object.hasOwnProperty.call(message, "sideData"))
22381
+ $root.sesame.v1.sidedata.SideData.encode(message.sideData, writer.uint32(
22382
+ /* id 2, wireType 2 =*/
22383
+ 18
22384
+ ).fork()).ldelim();
22385
+ return writer;
22386
+ };
22387
+ SideDataSetRequest.encodeDelimited = function encodeDelimited(message, writer) {
22388
+ return this.encode(message, writer).ldelim();
22389
+ };
22390
+ SideDataSetRequest.decode = function decode(reader, length, error) {
22391
+ if (!(reader instanceof $Reader))
22392
+ reader = $Reader.create(reader);
22393
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.SideDataSetRequest();
22394
+ while (reader.pos < end) {
22395
+ let tag = reader.uint32();
22396
+ if (tag === error)
22397
+ break;
22398
+ switch (tag >>> 3) {
22399
+ case 1: {
22400
+ message.compositorId = reader.string();
22401
+ break;
22402
+ }
22403
+ case 2: {
22404
+ message.sideData = $root.sesame.v1.sidedata.SideData.decode(reader, reader.uint32());
22405
+ break;
22406
+ }
22407
+ default:
22408
+ reader.skipType(tag & 7);
22409
+ break;
22410
+ }
22411
+ }
22412
+ return message;
22413
+ };
22414
+ SideDataSetRequest.decodeDelimited = function decodeDelimited(reader) {
22415
+ if (!(reader instanceof $Reader))
22416
+ reader = new $Reader(reader);
22417
+ return this.decode(reader, reader.uint32());
22418
+ };
22419
+ SideDataSetRequest.verify = function verify(message) {
22420
+ if (typeof message !== "object" || message === null)
22421
+ return "object expected";
22422
+ if (message.compositorId != null && message.hasOwnProperty("compositorId")) {
22423
+ if (!$util.isString(message.compositorId))
22424
+ return "compositorId: string expected";
22425
+ }
22426
+ if (message.sideData != null && message.hasOwnProperty("sideData")) {
22427
+ let error = $root.sesame.v1.sidedata.SideData.verify(message.sideData);
22428
+ if (error)
22429
+ return "sideData." + error;
22430
+ }
22431
+ return null;
22432
+ };
22433
+ SideDataSetRequest.fromObject = function fromObject(object) {
22434
+ if (object instanceof $root.sesame.v1.compositor.SideDataSetRequest)
22435
+ return object;
22436
+ let message = new $root.sesame.v1.compositor.SideDataSetRequest();
22437
+ if (object.compositorId != null)
22438
+ message.compositorId = String(object.compositorId);
22439
+ if (object.sideData != null) {
22440
+ if (typeof object.sideData !== "object")
22441
+ throw TypeError(".sesame.v1.compositor.SideDataSetRequest.sideData: object expected");
22442
+ message.sideData = $root.sesame.v1.sidedata.SideData.fromObject(object.sideData);
22443
+ }
22444
+ return message;
22445
+ };
22446
+ SideDataSetRequest.toObject = function toObject(message, options) {
22447
+ if (!options)
22448
+ options = {};
22449
+ let object = {};
22450
+ if (options.defaults) {
22451
+ object.compositorId = "";
22452
+ object.sideData = null;
22453
+ }
22454
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
22455
+ object.compositorId = message.compositorId;
22456
+ if (message.sideData != null && message.hasOwnProperty("sideData"))
22457
+ object.sideData = $root.sesame.v1.sidedata.SideData.toObject(message.sideData, options);
22458
+ return object;
22459
+ };
22460
+ SideDataSetRequest.prototype.toJSON = function toJSON() {
22461
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22462
+ };
22463
+ SideDataSetRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22464
+ if (typeUrlPrefix === void 0) {
22465
+ typeUrlPrefix = "type.googleapis.com";
22466
+ }
22467
+ return typeUrlPrefix + "/sesame.v1.compositor.SideDataSetRequest";
22468
+ };
22469
+ return SideDataSetRequest;
22470
+ }();
22471
+ compositor.SideDataRemoveRequest = function() {
22472
+ function SideDataRemoveRequest(properties) {
22473
+ if (properties) {
22474
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22475
+ if (properties[keys[i]] != null)
22476
+ this[keys[i]] = properties[keys[i]];
22477
+ }
22478
+ }
22479
+ SideDataRemoveRequest.prototype.compositorId = "";
22480
+ SideDataRemoveRequest.prototype.id = "";
22481
+ SideDataRemoveRequest.create = function create(properties) {
22482
+ return new SideDataRemoveRequest(properties);
22483
+ };
22484
+ SideDataRemoveRequest.encode = function encode(message, writer) {
22485
+ if (!writer)
22486
+ writer = $Writer.create();
22487
+ if (message.compositorId != null && Object.hasOwnProperty.call(message, "compositorId"))
22488
+ writer.uint32(
22489
+ /* id 1, wireType 2 =*/
22490
+ 10
22491
+ ).string(message.compositorId);
22492
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
22493
+ writer.uint32(
22494
+ /* id 2, wireType 2 =*/
22495
+ 18
22496
+ ).string(message.id);
22497
+ return writer;
22498
+ };
22499
+ SideDataRemoveRequest.encodeDelimited = function encodeDelimited(message, writer) {
22500
+ return this.encode(message, writer).ldelim();
22501
+ };
22502
+ SideDataRemoveRequest.decode = function decode(reader, length, error) {
22503
+ if (!(reader instanceof $Reader))
22504
+ reader = $Reader.create(reader);
22505
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.SideDataRemoveRequest();
22506
+ while (reader.pos < end) {
22507
+ let tag = reader.uint32();
22508
+ if (tag === error)
22509
+ break;
22510
+ switch (tag >>> 3) {
22511
+ case 1: {
22512
+ message.compositorId = reader.string();
22513
+ break;
22514
+ }
22515
+ case 2: {
22516
+ message.id = reader.string();
22517
+ break;
22518
+ }
22519
+ default:
22520
+ reader.skipType(tag & 7);
22521
+ break;
22522
+ }
22523
+ }
22524
+ return message;
22525
+ };
22526
+ SideDataRemoveRequest.decodeDelimited = function decodeDelimited(reader) {
22527
+ if (!(reader instanceof $Reader))
22528
+ reader = new $Reader(reader);
22529
+ return this.decode(reader, reader.uint32());
22530
+ };
22531
+ SideDataRemoveRequest.verify = function verify(message) {
22532
+ if (typeof message !== "object" || message === null)
22533
+ return "object expected";
22534
+ if (message.compositorId != null && message.hasOwnProperty("compositorId")) {
22535
+ if (!$util.isString(message.compositorId))
22536
+ return "compositorId: string expected";
22537
+ }
22538
+ if (message.id != null && message.hasOwnProperty("id")) {
22539
+ if (!$util.isString(message.id))
22540
+ return "id: string expected";
22541
+ }
22542
+ return null;
22543
+ };
22544
+ SideDataRemoveRequest.fromObject = function fromObject(object) {
22545
+ if (object instanceof $root.sesame.v1.compositor.SideDataRemoveRequest)
22546
+ return object;
22547
+ let message = new $root.sesame.v1.compositor.SideDataRemoveRequest();
22548
+ if (object.compositorId != null)
22549
+ message.compositorId = String(object.compositorId);
22550
+ if (object.id != null)
22551
+ message.id = String(object.id);
22552
+ return message;
22553
+ };
22554
+ SideDataRemoveRequest.toObject = function toObject(message, options) {
22555
+ if (!options)
22556
+ options = {};
22557
+ let object = {};
22558
+ if (options.defaults) {
22559
+ object.compositorId = "";
22560
+ object.id = "";
22561
+ }
22562
+ if (message.compositorId != null && message.hasOwnProperty("compositorId"))
22563
+ object.compositorId = message.compositorId;
22564
+ if (message.id != null && message.hasOwnProperty("id"))
22565
+ object.id = message.id;
22566
+ return object;
22567
+ };
22568
+ SideDataRemoveRequest.prototype.toJSON = function toJSON() {
22569
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22570
+ };
22571
+ SideDataRemoveRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22572
+ if (typeUrlPrefix === void 0) {
22573
+ typeUrlPrefix = "type.googleapis.com";
22574
+ }
22575
+ return typeUrlPrefix + "/sesame.v1.compositor.SideDataRemoveRequest";
22576
+ };
22577
+ return SideDataRemoveRequest;
22578
+ }();
22579
+ compositor.PropertySetRequest = function() {
22580
+ function PropertySetRequest(properties) {
22581
+ if (properties) {
22582
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22583
+ if (properties[keys[i]] != null)
22584
+ this[keys[i]] = properties[keys[i]];
22585
+ }
22586
+ }
22587
+ PropertySetRequest.prototype.domain = null;
22588
+ PropertySetRequest.prototype.address = "";
22589
+ PropertySetRequest.prototype.property = "";
22590
+ PropertySetRequest.prototype.value = null;
22591
+ PropertySetRequest.create = function create(properties) {
22592
+ return new PropertySetRequest(properties);
22593
+ };
22594
+ PropertySetRequest.encode = function encode(message, writer) {
22595
+ if (!writer)
22596
+ writer = $Writer.create();
22597
+ if (message.domain != null && Object.hasOwnProperty.call(message, "domain"))
22598
+ $root.sesame.v1.common.PropertyDomain.encode(message.domain, writer.uint32(
22599
+ /* id 1, wireType 2 =*/
22600
+ 10
22601
+ ).fork()).ldelim();
22602
+ if (message.address != null && Object.hasOwnProperty.call(message, "address"))
22603
+ writer.uint32(
22604
+ /* id 2, wireType 2 =*/
22605
+ 18
22606
+ ).string(message.address);
22607
+ if (message.property != null && Object.hasOwnProperty.call(message, "property"))
22608
+ writer.uint32(
22609
+ /* id 3, wireType 2 =*/
22610
+ 26
22611
+ ).string(message.property);
22612
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
22613
+ $root.sesame.v1.common.PropValue.encode(message.value, writer.uint32(
22614
+ /* id 4, wireType 2 =*/
22615
+ 34
22616
+ ).fork()).ldelim();
22617
+ return writer;
22618
+ };
22619
+ PropertySetRequest.encodeDelimited = function encodeDelimited(message, writer) {
22620
+ return this.encode(message, writer).ldelim();
22621
+ };
22622
+ PropertySetRequest.decode = function decode(reader, length, error) {
22623
+ if (!(reader instanceof $Reader))
22624
+ reader = $Reader.create(reader);
22625
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.PropertySetRequest();
22626
+ while (reader.pos < end) {
22627
+ let tag = reader.uint32();
22628
+ if (tag === error)
22629
+ break;
22630
+ switch (tag >>> 3) {
22631
+ case 1: {
22632
+ message.domain = $root.sesame.v1.common.PropertyDomain.decode(reader, reader.uint32());
22633
+ break;
22634
+ }
22635
+ case 2: {
22636
+ message.address = reader.string();
22637
+ break;
22638
+ }
22639
+ case 3: {
22640
+ message.property = reader.string();
22641
+ break;
22642
+ }
22643
+ case 4: {
22644
+ message.value = $root.sesame.v1.common.PropValue.decode(reader, reader.uint32());
22645
+ break;
22646
+ }
22647
+ default:
22648
+ reader.skipType(tag & 7);
22649
+ break;
22650
+ }
22651
+ }
22652
+ return message;
22653
+ };
22654
+ PropertySetRequest.decodeDelimited = function decodeDelimited(reader) {
22655
+ if (!(reader instanceof $Reader))
22656
+ reader = new $Reader(reader);
22657
+ return this.decode(reader, reader.uint32());
22658
+ };
22659
+ PropertySetRequest.verify = function verify(message) {
22660
+ if (typeof message !== "object" || message === null)
22661
+ return "object expected";
22662
+ if (message.domain != null && message.hasOwnProperty("domain")) {
22663
+ let error = $root.sesame.v1.common.PropertyDomain.verify(message.domain);
22664
+ if (error)
22665
+ return "domain." + error;
22666
+ }
22667
+ if (message.address != null && message.hasOwnProperty("address")) {
22668
+ if (!$util.isString(message.address))
22669
+ return "address: string expected";
22670
+ }
22671
+ if (message.property != null && message.hasOwnProperty("property")) {
22672
+ if (!$util.isString(message.property))
22673
+ return "property: string expected";
22674
+ }
22675
+ if (message.value != null && message.hasOwnProperty("value")) {
22676
+ let error = $root.sesame.v1.common.PropValue.verify(message.value);
22677
+ if (error)
22678
+ return "value." + error;
22679
+ }
22680
+ return null;
22681
+ };
22682
+ PropertySetRequest.fromObject = function fromObject(object) {
22683
+ if (object instanceof $root.sesame.v1.compositor.PropertySetRequest)
22684
+ return object;
22685
+ let message = new $root.sesame.v1.compositor.PropertySetRequest();
22686
+ if (object.domain != null) {
22687
+ if (typeof object.domain !== "object")
22688
+ throw TypeError(".sesame.v1.compositor.PropertySetRequest.domain: object expected");
22689
+ message.domain = $root.sesame.v1.common.PropertyDomain.fromObject(object.domain);
22690
+ }
22691
+ if (object.address != null)
22692
+ message.address = String(object.address);
22693
+ if (object.property != null)
22694
+ message.property = String(object.property);
22695
+ if (object.value != null) {
22696
+ if (typeof object.value !== "object")
22697
+ throw TypeError(".sesame.v1.compositor.PropertySetRequest.value: object expected");
22698
+ message.value = $root.sesame.v1.common.PropValue.fromObject(object.value);
22699
+ }
22700
+ return message;
22701
+ };
22702
+ PropertySetRequest.toObject = function toObject(message, options) {
22703
+ if (!options)
22704
+ options = {};
22705
+ let object = {};
22706
+ if (options.defaults) {
22707
+ object.domain = null;
22708
+ object.address = "";
22709
+ object.property = "";
22710
+ object.value = null;
22711
+ }
22712
+ if (message.domain != null && message.hasOwnProperty("domain"))
22713
+ object.domain = $root.sesame.v1.common.PropertyDomain.toObject(message.domain, options);
22714
+ if (message.address != null && message.hasOwnProperty("address"))
22715
+ object.address = message.address;
22716
+ if (message.property != null && message.hasOwnProperty("property"))
22717
+ object.property = message.property;
22718
+ if (message.value != null && message.hasOwnProperty("value"))
22719
+ object.value = $root.sesame.v1.common.PropValue.toObject(message.value, options);
22720
+ return object;
22721
+ };
22722
+ PropertySetRequest.prototype.toJSON = function toJSON() {
22723
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22724
+ };
22725
+ PropertySetRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22726
+ if (typeUrlPrefix === void 0) {
22727
+ typeUrlPrefix = "type.googleapis.com";
22728
+ }
22729
+ return typeUrlPrefix + "/sesame.v1.compositor.PropertySetRequest";
22730
+ };
22731
+ return PropertySetRequest;
22732
+ }();
22733
+ compositor.PropertyAnimateRequest = function() {
22734
+ function PropertyAnimateRequest(properties) {
22735
+ this.keyframes = [];
22736
+ if (properties) {
22737
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22738
+ if (properties[keys[i]] != null)
22739
+ this[keys[i]] = properties[keys[i]];
22740
+ }
22741
+ }
22742
+ PropertyAnimateRequest.prototype.domain = null;
22743
+ PropertyAnimateRequest.prototype.address = "";
22744
+ PropertyAnimateRequest.prototype.property = "";
22745
+ PropertyAnimateRequest.prototype.keyframes = $util.emptyArray;
22746
+ PropertyAnimateRequest.prototype.before = 0;
22747
+ PropertyAnimateRequest.prototype.after = 0;
22748
+ PropertyAnimateRequest.create = function create(properties) {
22749
+ return new PropertyAnimateRequest(properties);
22750
+ };
22751
+ PropertyAnimateRequest.encode = function encode(message, writer) {
22752
+ if (!writer)
22753
+ writer = $Writer.create();
22754
+ if (message.domain != null && Object.hasOwnProperty.call(message, "domain"))
22755
+ $root.sesame.v1.common.PropertyDomain.encode(message.domain, writer.uint32(
22756
+ /* id 1, wireType 2 =*/
22757
+ 10
22758
+ ).fork()).ldelim();
22759
+ if (message.address != null && Object.hasOwnProperty.call(message, "address"))
22760
+ writer.uint32(
22761
+ /* id 2, wireType 2 =*/
22762
+ 18
22763
+ ).string(message.address);
22764
+ if (message.property != null && Object.hasOwnProperty.call(message, "property"))
22765
+ writer.uint32(
22766
+ /* id 3, wireType 2 =*/
22767
+ 26
22768
+ ).string(message.property);
22769
+ if (message.keyframes != null && message.keyframes.length)
22770
+ for (let i = 0; i < message.keyframes.length; ++i)
22771
+ $root.sesame.v1.compositor.KeyFrame.encode(message.keyframes[i], writer.uint32(
22772
+ /* id 4, wireType 2 =*/
22773
+ 34
22774
+ ).fork()).ldelim();
22775
+ if (message.before != null && Object.hasOwnProperty.call(message, "before"))
22776
+ writer.uint32(
22777
+ /* id 5, wireType 0 =*/
22778
+ 40
22779
+ ).int32(message.before);
22780
+ if (message.after != null && Object.hasOwnProperty.call(message, "after"))
22781
+ writer.uint32(
22782
+ /* id 6, wireType 0 =*/
22783
+ 48
22784
+ ).int32(message.after);
22785
+ return writer;
22786
+ };
22787
+ PropertyAnimateRequest.encodeDelimited = function encodeDelimited(message, writer) {
22788
+ return this.encode(message, writer).ldelim();
22789
+ };
22790
+ PropertyAnimateRequest.decode = function decode(reader, length, error) {
22791
+ if (!(reader instanceof $Reader))
22792
+ reader = $Reader.create(reader);
22793
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.PropertyAnimateRequest();
22794
+ while (reader.pos < end) {
22795
+ let tag = reader.uint32();
22796
+ if (tag === error)
22797
+ break;
22798
+ switch (tag >>> 3) {
22799
+ case 1: {
22800
+ message.domain = $root.sesame.v1.common.PropertyDomain.decode(reader, reader.uint32());
22801
+ break;
22802
+ }
22803
+ case 2: {
22804
+ message.address = reader.string();
22805
+ break;
22806
+ }
22807
+ case 3: {
22808
+ message.property = reader.string();
22809
+ break;
22810
+ }
22811
+ case 4: {
22812
+ if (!(message.keyframes && message.keyframes.length))
22813
+ message.keyframes = [];
22814
+ message.keyframes.push($root.sesame.v1.compositor.KeyFrame.decode(reader, reader.uint32()));
22815
+ break;
22816
+ }
22817
+ case 5: {
22818
+ message.before = reader.int32();
22819
+ break;
22820
+ }
22821
+ case 6: {
22822
+ message.after = reader.int32();
22823
+ break;
22824
+ }
22825
+ default:
22826
+ reader.skipType(tag & 7);
22827
+ break;
22828
+ }
22829
+ }
22830
+ return message;
22831
+ };
22832
+ PropertyAnimateRequest.decodeDelimited = function decodeDelimited(reader) {
22833
+ if (!(reader instanceof $Reader))
22834
+ reader = new $Reader(reader);
22835
+ return this.decode(reader, reader.uint32());
22836
+ };
22837
+ PropertyAnimateRequest.verify = function verify(message) {
22838
+ if (typeof message !== "object" || message === null)
22839
+ return "object expected";
22840
+ if (message.domain != null && message.hasOwnProperty("domain")) {
22841
+ let error = $root.sesame.v1.common.PropertyDomain.verify(message.domain);
22842
+ if (error)
22843
+ return "domain." + error;
22844
+ }
22845
+ if (message.address != null && message.hasOwnProperty("address")) {
22846
+ if (!$util.isString(message.address))
22847
+ return "address: string expected";
22848
+ }
22849
+ if (message.property != null && message.hasOwnProperty("property")) {
22850
+ if (!$util.isString(message.property))
22851
+ return "property: string expected";
22852
+ }
22853
+ if (message.keyframes != null && message.hasOwnProperty("keyframes")) {
22854
+ if (!Array.isArray(message.keyframes))
22855
+ return "keyframes: array expected";
22856
+ for (let i = 0; i < message.keyframes.length; ++i) {
22857
+ let error = $root.sesame.v1.compositor.KeyFrame.verify(message.keyframes[i]);
22858
+ if (error)
22859
+ return "keyframes." + error;
22860
+ }
22861
+ }
22862
+ if (message.before != null && message.hasOwnProperty("before"))
22863
+ switch (message.before) {
22864
+ default:
22865
+ return "before: enum value expected";
22866
+ case 0:
22867
+ case 1:
22868
+ case 2:
22869
+ case 3:
22870
+ break;
22871
+ }
22872
+ if (message.after != null && message.hasOwnProperty("after"))
22873
+ switch (message.after) {
22874
+ default:
22875
+ return "after: enum value expected";
22876
+ case 0:
22877
+ case 1:
22878
+ case 2:
22879
+ case 3:
22880
+ break;
22881
+ }
22882
+ return null;
22883
+ };
22884
+ PropertyAnimateRequest.fromObject = function fromObject(object) {
22885
+ if (object instanceof $root.sesame.v1.compositor.PropertyAnimateRequest)
22886
+ return object;
22887
+ let message = new $root.sesame.v1.compositor.PropertyAnimateRequest();
22888
+ if (object.domain != null) {
22889
+ if (typeof object.domain !== "object")
22890
+ throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.domain: object expected");
22891
+ message.domain = $root.sesame.v1.common.PropertyDomain.fromObject(object.domain);
22892
+ }
22893
+ if (object.address != null)
22894
+ message.address = String(object.address);
22895
+ if (object.property != null)
22896
+ message.property = String(object.property);
22897
+ if (object.keyframes) {
22898
+ if (!Array.isArray(object.keyframes))
22899
+ throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.keyframes: array expected");
22900
+ message.keyframes = [];
22901
+ for (let i = 0; i < object.keyframes.length; ++i) {
22902
+ if (typeof object.keyframes[i] !== "object")
22903
+ throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.keyframes: object expected");
22904
+ message.keyframes[i] = $root.sesame.v1.compositor.KeyFrame.fromObject(object.keyframes[i]);
22905
+ }
22906
+ }
22907
+ switch (object.before) {
22908
+ default:
22909
+ if (typeof object.before === "number") {
22910
+ message.before = object.before;
22911
+ break;
22912
+ }
22913
+ break;
22914
+ case "ANIM_MODE_CONSTANT":
22915
+ case 0:
22916
+ message.before = 0;
22917
+ break;
22918
+ case "ANIM_MODE_STATE_FROM":
22919
+ case 1:
22920
+ message.before = 1;
22921
+ break;
22922
+ case "ANIM_MODE_LOOP":
22923
+ case 2:
22924
+ message.before = 2;
22925
+ break;
22926
+ case "ANIM_MODE_BOUNCE":
22927
+ case 3:
22928
+ message.before = 3;
22929
+ break;
22930
+ }
22931
+ switch (object.after) {
22932
+ default:
22933
+ if (typeof object.after === "number") {
22934
+ message.after = object.after;
22935
+ break;
22936
+ }
22937
+ break;
22938
+ case "ANIM_MODE_CONSTANT":
22939
+ case 0:
22940
+ message.after = 0;
22941
+ break;
22942
+ case "ANIM_MODE_STATE_FROM":
22943
+ case 1:
22944
+ message.after = 1;
22945
+ break;
22946
+ case "ANIM_MODE_LOOP":
22947
+ case 2:
22948
+ message.after = 2;
22949
+ break;
22950
+ case "ANIM_MODE_BOUNCE":
22951
+ case 3:
22952
+ message.after = 3;
22953
+ break;
22954
+ }
22955
+ return message;
22956
+ };
22957
+ PropertyAnimateRequest.toObject = function toObject(message, options) {
22958
+ if (!options)
22959
+ options = {};
22960
+ let object = {};
22961
+ if (options.arrays || options.defaults)
22962
+ object.keyframes = [];
22963
+ if (options.defaults) {
22964
+ object.domain = null;
22965
+ object.address = "";
22966
+ object.property = "";
22967
+ object.before = options.enums === String ? "ANIM_MODE_CONSTANT" : 0;
22968
+ object.after = options.enums === String ? "ANIM_MODE_CONSTANT" : 0;
22969
+ }
22970
+ if (message.domain != null && message.hasOwnProperty("domain"))
22971
+ object.domain = $root.sesame.v1.common.PropertyDomain.toObject(message.domain, options);
22972
+ if (message.address != null && message.hasOwnProperty("address"))
22973
+ object.address = message.address;
22974
+ if (message.property != null && message.hasOwnProperty("property"))
22975
+ object.property = message.property;
22976
+ if (message.keyframes && message.keyframes.length) {
22977
+ object.keyframes = [];
22978
+ for (let j = 0; j < message.keyframes.length; ++j)
22979
+ object.keyframes[j] = $root.sesame.v1.compositor.KeyFrame.toObject(message.keyframes[j], options);
22980
+ }
22981
+ if (message.before != null && message.hasOwnProperty("before"))
22982
+ object.before = options.enums === String ? $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.before] === void 0 ? message.before : $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.before] : message.before;
22983
+ if (message.after != null && message.hasOwnProperty("after"))
22984
+ object.after = options.enums === String ? $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.after] === void 0 ? message.after : $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.after] : message.after;
22985
+ return object;
22986
+ };
22987
+ PropertyAnimateRequest.prototype.toJSON = function toJSON() {
22988
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22989
+ };
22990
+ PropertyAnimateRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
22991
+ if (typeUrlPrefix === void 0) {
22992
+ typeUrlPrefix = "type.googleapis.com";
22993
+ }
22994
+ return typeUrlPrefix + "/sesame.v1.compositor.PropertyAnimateRequest";
22995
+ };
22996
+ return PropertyAnimateRequest;
22997
+ }();
22998
+ return compositor;
22999
+ }();
23000
+ v1.sidedata = function() {
23001
+ const sidedata = {};
23002
+ sidedata.AtlasEntry = function() {
23003
+ function AtlasEntry(properties) {
23004
+ if (properties) {
23005
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
23006
+ if (properties[keys[i]] != null)
23007
+ this[keys[i]] = properties[keys[i]];
23008
+ }
23009
+ }
23010
+ AtlasEntry.prototype.sourceId = "";
23011
+ AtlasEntry.prototype.x = 0;
23012
+ AtlasEntry.prototype.y = 0;
23013
+ AtlasEntry.prototype.width = 0;
23014
+ AtlasEntry.prototype.height = 0;
23015
+ AtlasEntry.prototype.sourceWidth = 0;
23016
+ AtlasEntry.prototype.sourceHeight = 0;
23017
+ AtlasEntry.create = function create(properties) {
23018
+ return new AtlasEntry(properties);
23019
+ };
23020
+ AtlasEntry.encode = function encode(message, writer) {
23021
+ if (!writer)
23022
+ writer = $Writer.create();
23023
+ if (message.sourceId != null && Object.hasOwnProperty.call(message, "sourceId"))
23024
+ writer.uint32(
23025
+ /* id 1, wireType 2 =*/
23026
+ 10
23027
+ ).string(message.sourceId);
23028
+ if (message.x != null && Object.hasOwnProperty.call(message, "x"))
23029
+ writer.uint32(
23030
+ /* id 2, wireType 0 =*/
23031
+ 16
23032
+ ).uint32(message.x);
23033
+ if (message.y != null && Object.hasOwnProperty.call(message, "y"))
23034
+ writer.uint32(
23035
+ /* id 3, wireType 0 =*/
23036
+ 24
23037
+ ).uint32(message.y);
23038
+ if (message.width != null && Object.hasOwnProperty.call(message, "width"))
23039
+ writer.uint32(
23040
+ /* id 4, wireType 0 =*/
23041
+ 32
23042
+ ).uint32(message.width);
23043
+ if (message.height != null && Object.hasOwnProperty.call(message, "height"))
23044
+ writer.uint32(
23045
+ /* id 5, wireType 0 =*/
23046
+ 40
23047
+ ).uint32(message.height);
23048
+ if (message.sourceWidth != null && Object.hasOwnProperty.call(message, "sourceWidth"))
23049
+ writer.uint32(
23050
+ /* id 6, wireType 0 =*/
23051
+ 48
23052
+ ).uint32(message.sourceWidth);
23053
+ if (message.sourceHeight != null && Object.hasOwnProperty.call(message, "sourceHeight"))
23054
+ writer.uint32(
23055
+ /* id 7, wireType 0 =*/
23056
+ 56
23057
+ ).uint32(message.sourceHeight);
23058
+ return writer;
23059
+ };
23060
+ AtlasEntry.encodeDelimited = function encodeDelimited(message, writer) {
23061
+ return this.encode(message, writer).ldelim();
23062
+ };
23063
+ AtlasEntry.decode = function decode(reader, length, error) {
23064
+ if (!(reader instanceof $Reader))
23065
+ reader = $Reader.create(reader);
23066
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sidedata.AtlasEntry();
23067
+ while (reader.pos < end) {
23068
+ let tag = reader.uint32();
23069
+ if (tag === error)
23070
+ break;
23071
+ switch (tag >>> 3) {
23072
+ case 1: {
23073
+ message.sourceId = reader.string();
23074
+ break;
23075
+ }
23076
+ case 2: {
23077
+ message.x = reader.uint32();
23078
+ break;
23079
+ }
23080
+ case 3: {
23081
+ message.y = reader.uint32();
23082
+ break;
23083
+ }
23084
+ case 4: {
23085
+ message.width = reader.uint32();
23086
+ break;
23087
+ }
23088
+ case 5: {
23089
+ message.height = reader.uint32();
23090
+ break;
23091
+ }
23092
+ case 6: {
23093
+ message.sourceWidth = reader.uint32();
23094
+ break;
23095
+ }
23096
+ case 7: {
23097
+ message.sourceHeight = reader.uint32();
23098
+ break;
23099
+ }
23100
+ default:
23101
+ reader.skipType(tag & 7);
23102
+ break;
23103
+ }
23104
+ }
23105
+ return message;
23106
+ };
23107
+ AtlasEntry.decodeDelimited = function decodeDelimited(reader) {
23108
+ if (!(reader instanceof $Reader))
23109
+ reader = new $Reader(reader);
23110
+ return this.decode(reader, reader.uint32());
23111
+ };
23112
+ AtlasEntry.verify = function verify(message) {
23113
+ if (typeof message !== "object" || message === null)
23114
+ return "object expected";
23115
+ if (message.sourceId != null && message.hasOwnProperty("sourceId")) {
23116
+ if (!$util.isString(message.sourceId))
23117
+ return "sourceId: string expected";
23118
+ }
23119
+ if (message.x != null && message.hasOwnProperty("x")) {
23120
+ if (!$util.isInteger(message.x))
23121
+ return "x: integer expected";
23122
+ }
23123
+ if (message.y != null && message.hasOwnProperty("y")) {
23124
+ if (!$util.isInteger(message.y))
23125
+ return "y: integer expected";
23126
+ }
23127
+ if (message.width != null && message.hasOwnProperty("width")) {
23128
+ if (!$util.isInteger(message.width))
23129
+ return "width: integer expected";
23130
+ }
23131
+ if (message.height != null && message.hasOwnProperty("height")) {
23132
+ if (!$util.isInteger(message.height))
23133
+ return "height: integer expected";
23134
+ }
23135
+ if (message.sourceWidth != null && message.hasOwnProperty("sourceWidth")) {
23136
+ if (!$util.isInteger(message.sourceWidth))
23137
+ return "sourceWidth: integer expected";
23138
+ }
23139
+ if (message.sourceHeight != null && message.hasOwnProperty("sourceHeight")) {
23140
+ if (!$util.isInteger(message.sourceHeight))
23141
+ return "sourceHeight: integer expected";
23142
+ }
23143
+ return null;
23144
+ };
23145
+ AtlasEntry.fromObject = function fromObject(object) {
23146
+ if (object instanceof $root.sesame.v1.sidedata.AtlasEntry)
23147
+ return object;
23148
+ let message = new $root.sesame.v1.sidedata.AtlasEntry();
23149
+ if (object.sourceId != null)
23150
+ message.sourceId = String(object.sourceId);
23151
+ if (object.x != null)
23152
+ message.x = object.x >>> 0;
23153
+ if (object.y != null)
23154
+ message.y = object.y >>> 0;
23155
+ if (object.width != null)
23156
+ message.width = object.width >>> 0;
23157
+ if (object.height != null)
23158
+ message.height = object.height >>> 0;
23159
+ if (object.sourceWidth != null)
23160
+ message.sourceWidth = object.sourceWidth >>> 0;
23161
+ if (object.sourceHeight != null)
23162
+ message.sourceHeight = object.sourceHeight >>> 0;
23163
+ return message;
23164
+ };
23165
+ AtlasEntry.toObject = function toObject(message, options) {
21147
23166
  if (!options)
21148
23167
  options = {};
21149
23168
  let object = {};
21150
23169
  if (options.defaults) {
21151
- object.compositorId = "";
21152
- object.parentAddress = "";
21153
- object.nodeId = "";
21154
- object.nodeType = options.enums === String ? "NODE_TYPE_UNSPECIFIED" : 0;
23170
+ object.sourceId = "";
23171
+ object.x = 0;
23172
+ object.y = 0;
23173
+ object.width = 0;
23174
+ object.height = 0;
23175
+ object.sourceWidth = 0;
23176
+ object.sourceHeight = 0;
21155
23177
  }
21156
- if (message.compositorId != null && message.hasOwnProperty("compositorId"))
21157
- object.compositorId = message.compositorId;
21158
- if (message.parentAddress != null && message.hasOwnProperty("parentAddress"))
21159
- object.parentAddress = message.parentAddress;
21160
- if (message.nodeId != null && message.hasOwnProperty("nodeId"))
21161
- object.nodeId = message.nodeId;
21162
- if (message.nodeType != null && message.hasOwnProperty("nodeType"))
21163
- object.nodeType = options.enums === String ? $root.sesame.v1.compositor.NodeType[message.nodeType] === void 0 ? message.nodeType : $root.sesame.v1.compositor.NodeType[message.nodeType] : message.nodeType;
23178
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
23179
+ object.sourceId = message.sourceId;
23180
+ if (message.x != null && message.hasOwnProperty("x"))
23181
+ object.x = message.x;
23182
+ if (message.y != null && message.hasOwnProperty("y"))
23183
+ object.y = message.y;
23184
+ if (message.width != null && message.hasOwnProperty("width"))
23185
+ object.width = message.width;
23186
+ if (message.height != null && message.hasOwnProperty("height"))
23187
+ object.height = message.height;
23188
+ if (message.sourceWidth != null && message.hasOwnProperty("sourceWidth"))
23189
+ object.sourceWidth = message.sourceWidth;
23190
+ if (message.sourceHeight != null && message.hasOwnProperty("sourceHeight"))
23191
+ object.sourceHeight = message.sourceHeight;
21164
23192
  return object;
21165
23193
  };
21166
- NodeAddRequest.prototype.toJSON = function toJSON() {
23194
+ AtlasEntry.prototype.toJSON = function toJSON() {
21167
23195
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21168
23196
  };
21169
- NodeAddRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
23197
+ AtlasEntry.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
21170
23198
  if (typeUrlPrefix === void 0) {
21171
23199
  typeUrlPrefix = "type.googleapis.com";
21172
23200
  }
21173
- return typeUrlPrefix + "/sesame.v1.compositor.NodeAddRequest";
23201
+ return typeUrlPrefix + "/sesame.v1.sidedata.AtlasEntry";
21174
23202
  };
21175
- return NodeAddRequest;
23203
+ return AtlasEntry;
21176
23204
  }();
21177
- compositor.NodeRemoveRequest = function() {
21178
- function NodeRemoveRequest(properties) {
23205
+ sidedata.AtlasLayout = function() {
23206
+ function AtlasLayout(properties) {
23207
+ this.entries = [];
21179
23208
  if (properties) {
21180
23209
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21181
23210
  if (properties[keys[i]] != null)
21182
23211
  this[keys[i]] = properties[keys[i]];
21183
23212
  }
21184
23213
  }
21185
- NodeRemoveRequest.prototype.compositorId = "";
21186
- NodeRemoveRequest.prototype.address = "";
21187
- NodeRemoveRequest.create = function create(properties) {
21188
- return new NodeRemoveRequest(properties);
23214
+ AtlasLayout.prototype.width = 0;
23215
+ AtlasLayout.prototype.height = 0;
23216
+ AtlasLayout.prototype.entries = $util.emptyArray;
23217
+ AtlasLayout.create = function create(properties) {
23218
+ return new AtlasLayout(properties);
21189
23219
  };
21190
- NodeRemoveRequest.encode = function encode(message, writer) {
23220
+ AtlasLayout.encode = function encode(message, writer) {
21191
23221
  if (!writer)
21192
23222
  writer = $Writer.create();
21193
- if (message.compositorId != null && Object.hasOwnProperty.call(message, "compositorId"))
23223
+ if (message.width != null && Object.hasOwnProperty.call(message, "width"))
21194
23224
  writer.uint32(
21195
- /* id 1, wireType 2 =*/
21196
- 10
21197
- ).string(message.compositorId);
21198
- if (message.address != null && Object.hasOwnProperty.call(message, "address"))
23225
+ /* id 1, wireType 0 =*/
23226
+ 8
23227
+ ).uint32(message.width);
23228
+ if (message.height != null && Object.hasOwnProperty.call(message, "height"))
21199
23229
  writer.uint32(
21200
- /* id 2, wireType 2 =*/
21201
- 18
21202
- ).string(message.address);
23230
+ /* id 2, wireType 0 =*/
23231
+ 16
23232
+ ).uint32(message.height);
23233
+ if (message.entries != null && message.entries.length)
23234
+ for (let i = 0; i < message.entries.length; ++i)
23235
+ $root.sesame.v1.sidedata.AtlasEntry.encode(message.entries[i], writer.uint32(
23236
+ /* id 3, wireType 2 =*/
23237
+ 26
23238
+ ).fork()).ldelim();
21203
23239
  return writer;
21204
23240
  };
21205
- NodeRemoveRequest.encodeDelimited = function encodeDelimited(message, writer) {
23241
+ AtlasLayout.encodeDelimited = function encodeDelimited(message, writer) {
21206
23242
  return this.encode(message, writer).ldelim();
21207
23243
  };
21208
- NodeRemoveRequest.decode = function decode(reader, length, error) {
23244
+ AtlasLayout.decode = function decode(reader, length, error) {
21209
23245
  if (!(reader instanceof $Reader))
21210
23246
  reader = $Reader.create(reader);
21211
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.NodeRemoveRequest();
23247
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sidedata.AtlasLayout();
21212
23248
  while (reader.pos < end) {
21213
23249
  let tag = reader.uint32();
21214
23250
  if (tag === error)
21215
23251
  break;
21216
23252
  switch (tag >>> 3) {
21217
23253
  case 1: {
21218
- message.compositorId = reader.string();
23254
+ message.width = reader.uint32();
21219
23255
  break;
21220
23256
  }
21221
23257
  case 2: {
21222
- message.address = reader.string();
23258
+ message.height = reader.uint32();
23259
+ break;
23260
+ }
23261
+ case 3: {
23262
+ if (!(message.entries && message.entries.length))
23263
+ message.entries = [];
23264
+ message.entries.push($root.sesame.v1.sidedata.AtlasEntry.decode(reader, reader.uint32()));
21223
23265
  break;
21224
23266
  }
21225
23267
  default:
@@ -21229,125 +23271,166 @@ var sesame = $root.sesame = (() => {
21229
23271
  }
21230
23272
  return message;
21231
23273
  };
21232
- NodeRemoveRequest.decodeDelimited = function decodeDelimited(reader) {
23274
+ AtlasLayout.decodeDelimited = function decodeDelimited(reader) {
21233
23275
  if (!(reader instanceof $Reader))
21234
23276
  reader = new $Reader(reader);
21235
23277
  return this.decode(reader, reader.uint32());
21236
23278
  };
21237
- NodeRemoveRequest.verify = function verify(message) {
23279
+ AtlasLayout.verify = function verify(message) {
21238
23280
  if (typeof message !== "object" || message === null)
21239
23281
  return "object expected";
21240
- if (message.compositorId != null && message.hasOwnProperty("compositorId")) {
21241
- if (!$util.isString(message.compositorId))
21242
- return "compositorId: string expected";
23282
+ if (message.width != null && message.hasOwnProperty("width")) {
23283
+ if (!$util.isInteger(message.width))
23284
+ return "width: integer expected";
21243
23285
  }
21244
- if (message.address != null && message.hasOwnProperty("address")) {
21245
- if (!$util.isString(message.address))
21246
- return "address: string expected";
23286
+ if (message.height != null && message.hasOwnProperty("height")) {
23287
+ if (!$util.isInteger(message.height))
23288
+ return "height: integer expected";
23289
+ }
23290
+ if (message.entries != null && message.hasOwnProperty("entries")) {
23291
+ if (!Array.isArray(message.entries))
23292
+ return "entries: array expected";
23293
+ for (let i = 0; i < message.entries.length; ++i) {
23294
+ let error = $root.sesame.v1.sidedata.AtlasEntry.verify(message.entries[i]);
23295
+ if (error)
23296
+ return "entries." + error;
23297
+ }
21247
23298
  }
21248
23299
  return null;
21249
23300
  };
21250
- NodeRemoveRequest.fromObject = function fromObject(object) {
21251
- if (object instanceof $root.sesame.v1.compositor.NodeRemoveRequest)
23301
+ AtlasLayout.fromObject = function fromObject(object) {
23302
+ if (object instanceof $root.sesame.v1.sidedata.AtlasLayout)
21252
23303
  return object;
21253
- let message = new $root.sesame.v1.compositor.NodeRemoveRequest();
21254
- if (object.compositorId != null)
21255
- message.compositorId = String(object.compositorId);
21256
- if (object.address != null)
21257
- message.address = String(object.address);
23304
+ let message = new $root.sesame.v1.sidedata.AtlasLayout();
23305
+ if (object.width != null)
23306
+ message.width = object.width >>> 0;
23307
+ if (object.height != null)
23308
+ message.height = object.height >>> 0;
23309
+ if (object.entries) {
23310
+ if (!Array.isArray(object.entries))
23311
+ throw TypeError(".sesame.v1.sidedata.AtlasLayout.entries: array expected");
23312
+ message.entries = [];
23313
+ for (let i = 0; i < object.entries.length; ++i) {
23314
+ if (typeof object.entries[i] !== "object")
23315
+ throw TypeError(".sesame.v1.sidedata.AtlasLayout.entries: object expected");
23316
+ message.entries[i] = $root.sesame.v1.sidedata.AtlasEntry.fromObject(object.entries[i]);
23317
+ }
23318
+ }
21258
23319
  return message;
21259
23320
  };
21260
- NodeRemoveRequest.toObject = function toObject(message, options) {
23321
+ AtlasLayout.toObject = function toObject(message, options) {
21261
23322
  if (!options)
21262
23323
  options = {};
21263
23324
  let object = {};
23325
+ if (options.arrays || options.defaults)
23326
+ object.entries = [];
21264
23327
  if (options.defaults) {
21265
- object.compositorId = "";
21266
- object.address = "";
23328
+ object.width = 0;
23329
+ object.height = 0;
23330
+ }
23331
+ if (message.width != null && message.hasOwnProperty("width"))
23332
+ object.width = message.width;
23333
+ if (message.height != null && message.hasOwnProperty("height"))
23334
+ object.height = message.height;
23335
+ if (message.entries && message.entries.length) {
23336
+ object.entries = [];
23337
+ for (let j = 0; j < message.entries.length; ++j)
23338
+ object.entries[j] = $root.sesame.v1.sidedata.AtlasEntry.toObject(message.entries[j], options);
21267
23339
  }
21268
- if (message.compositorId != null && message.hasOwnProperty("compositorId"))
21269
- object.compositorId = message.compositorId;
21270
- if (message.address != null && message.hasOwnProperty("address"))
21271
- object.address = message.address;
21272
23340
  return object;
21273
23341
  };
21274
- NodeRemoveRequest.prototype.toJSON = function toJSON() {
23342
+ AtlasLayout.prototype.toJSON = function toJSON() {
21275
23343
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21276
23344
  };
21277
- NodeRemoveRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
23345
+ AtlasLayout.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
21278
23346
  if (typeUrlPrefix === void 0) {
21279
23347
  typeUrlPrefix = "type.googleapis.com";
21280
23348
  }
21281
- return typeUrlPrefix + "/sesame.v1.compositor.NodeRemoveRequest";
23349
+ return typeUrlPrefix + "/sesame.v1.sidedata.AtlasLayout";
21282
23350
  };
21283
- return NodeRemoveRequest;
23351
+ return AtlasLayout;
21284
23352
  }();
21285
- compositor.PropertySetRequest = function() {
21286
- function PropertySetRequest(properties) {
23353
+ sidedata.SideData = function() {
23354
+ function SideData2(properties) {
21287
23355
  if (properties) {
21288
23356
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21289
23357
  if (properties[keys[i]] != null)
21290
23358
  this[keys[i]] = properties[keys[i]];
21291
23359
  }
21292
23360
  }
21293
- PropertySetRequest.prototype.domain = null;
21294
- PropertySetRequest.prototype.address = "";
21295
- PropertySetRequest.prototype.property = "";
21296
- PropertySetRequest.prototype.value = null;
21297
- PropertySetRequest.create = function create(properties) {
21298
- return new PropertySetRequest(properties);
23361
+ SideData2.prototype.id = "";
23362
+ SideData2.prototype.version = $util.Long ? $util.Long.fromBits(0, 0, true) : 0;
23363
+ SideData2.prototype.atlas = null;
23364
+ SideData2.prototype.json = null;
23365
+ SideData2.prototype.binary = null;
23366
+ let $oneOfFields;
23367
+ Object.defineProperty(SideData2.prototype, "payload", {
23368
+ get: $util.oneOfGetter($oneOfFields = ["atlas", "json", "binary"]),
23369
+ set: $util.oneOfSetter($oneOfFields)
23370
+ });
23371
+ SideData2.create = function create(properties) {
23372
+ return new SideData2(properties);
21299
23373
  };
21300
- PropertySetRequest.encode = function encode(message, writer) {
23374
+ SideData2.encode = function encode(message, writer) {
21301
23375
  if (!writer)
21302
23376
  writer = $Writer.create();
21303
- if (message.domain != null && Object.hasOwnProperty.call(message, "domain"))
21304
- $root.sesame.v1.common.PropertyDomain.encode(message.domain, writer.uint32(
23377
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
23378
+ writer.uint32(
21305
23379
  /* id 1, wireType 2 =*/
21306
23380
  10
23381
+ ).string(message.id);
23382
+ if (message.version != null && Object.hasOwnProperty.call(message, "version"))
23383
+ writer.uint32(
23384
+ /* id 2, wireType 0 =*/
23385
+ 16
23386
+ ).uint64(message.version);
23387
+ if (message.atlas != null && Object.hasOwnProperty.call(message, "atlas"))
23388
+ $root.sesame.v1.sidedata.AtlasLayout.encode(message.atlas, writer.uint32(
23389
+ /* id 10, wireType 2 =*/
23390
+ 82
21307
23391
  ).fork()).ldelim();
21308
- if (message.address != null && Object.hasOwnProperty.call(message, "address"))
23392
+ if (message.json != null && Object.hasOwnProperty.call(message, "json"))
21309
23393
  writer.uint32(
21310
- /* id 2, wireType 2 =*/
21311
- 18
21312
- ).string(message.address);
21313
- if (message.property != null && Object.hasOwnProperty.call(message, "property"))
23394
+ /* id 20, wireType 2 =*/
23395
+ 162
23396
+ ).string(message.json);
23397
+ if (message.binary != null && Object.hasOwnProperty.call(message, "binary"))
21314
23398
  writer.uint32(
21315
- /* id 3, wireType 2 =*/
21316
- 26
21317
- ).string(message.property);
21318
- if (message.value != null && Object.hasOwnProperty.call(message, "value"))
21319
- $root.sesame.v1.common.PropValue.encode(message.value, writer.uint32(
21320
- /* id 4, wireType 2 =*/
21321
- 34
21322
- ).fork()).ldelim();
23399
+ /* id 21, wireType 2 =*/
23400
+ 170
23401
+ ).bytes(message.binary);
21323
23402
  return writer;
21324
23403
  };
21325
- PropertySetRequest.encodeDelimited = function encodeDelimited(message, writer) {
23404
+ SideData2.encodeDelimited = function encodeDelimited(message, writer) {
21326
23405
  return this.encode(message, writer).ldelim();
21327
23406
  };
21328
- PropertySetRequest.decode = function decode(reader, length, error) {
23407
+ SideData2.decode = function decode(reader, length, error) {
21329
23408
  if (!(reader instanceof $Reader))
21330
23409
  reader = $Reader.create(reader);
21331
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.PropertySetRequest();
23410
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sidedata.SideData();
21332
23411
  while (reader.pos < end) {
21333
23412
  let tag = reader.uint32();
21334
23413
  if (tag === error)
21335
23414
  break;
21336
23415
  switch (tag >>> 3) {
21337
23416
  case 1: {
21338
- message.domain = $root.sesame.v1.common.PropertyDomain.decode(reader, reader.uint32());
23417
+ message.id = reader.string();
21339
23418
  break;
21340
23419
  }
21341
23420
  case 2: {
21342
- message.address = reader.string();
23421
+ message.version = reader.uint64();
21343
23422
  break;
21344
23423
  }
21345
- case 3: {
21346
- message.property = reader.string();
23424
+ case 10: {
23425
+ message.atlas = $root.sesame.v1.sidedata.AtlasLayout.decode(reader, reader.uint32());
21347
23426
  break;
21348
23427
  }
21349
- case 4: {
21350
- message.value = $root.sesame.v1.common.PropValue.decode(reader, reader.uint32());
23428
+ case 20: {
23429
+ message.json = reader.string();
23430
+ break;
23431
+ }
23432
+ case 21: {
23433
+ message.binary = reader.bytes();
21351
23434
  break;
21352
23435
  }
21353
23436
  default:
@@ -21357,175 +23440,165 @@ var sesame = $root.sesame = (() => {
21357
23440
  }
21358
23441
  return message;
21359
23442
  };
21360
- PropertySetRequest.decodeDelimited = function decodeDelimited(reader) {
23443
+ SideData2.decodeDelimited = function decodeDelimited(reader) {
21361
23444
  if (!(reader instanceof $Reader))
21362
23445
  reader = new $Reader(reader);
21363
23446
  return this.decode(reader, reader.uint32());
21364
23447
  };
21365
- PropertySetRequest.verify = function verify(message) {
23448
+ SideData2.verify = function verify(message) {
21366
23449
  if (typeof message !== "object" || message === null)
21367
23450
  return "object expected";
21368
- if (message.domain != null && message.hasOwnProperty("domain")) {
21369
- let error = $root.sesame.v1.common.PropertyDomain.verify(message.domain);
21370
- if (error)
21371
- return "domain." + error;
23451
+ let properties = {};
23452
+ if (message.id != null && message.hasOwnProperty("id")) {
23453
+ if (!$util.isString(message.id))
23454
+ return "id: string expected";
21372
23455
  }
21373
- if (message.address != null && message.hasOwnProperty("address")) {
21374
- if (!$util.isString(message.address))
21375
- return "address: string expected";
23456
+ if (message.version != null && message.hasOwnProperty("version")) {
23457
+ if (!$util.isInteger(message.version) && !(message.version && $util.isInteger(message.version.low) && $util.isInteger(message.version.high)))
23458
+ return "version: integer|Long expected";
21376
23459
  }
21377
- if (message.property != null && message.hasOwnProperty("property")) {
21378
- if (!$util.isString(message.property))
21379
- return "property: string expected";
23460
+ if (message.atlas != null && message.hasOwnProperty("atlas")) {
23461
+ properties.payload = 1;
23462
+ {
23463
+ let error = $root.sesame.v1.sidedata.AtlasLayout.verify(message.atlas);
23464
+ if (error)
23465
+ return "atlas." + error;
23466
+ }
21380
23467
  }
21381
- if (message.value != null && message.hasOwnProperty("value")) {
21382
- let error = $root.sesame.v1.common.PropValue.verify(message.value);
21383
- if (error)
21384
- return "value." + error;
23468
+ if (message.json != null && message.hasOwnProperty("json")) {
23469
+ if (properties.payload === 1)
23470
+ return "payload: multiple values";
23471
+ properties.payload = 1;
23472
+ if (!$util.isString(message.json))
23473
+ return "json: string expected";
23474
+ }
23475
+ if (message.binary != null && message.hasOwnProperty("binary")) {
23476
+ if (properties.payload === 1)
23477
+ return "payload: multiple values";
23478
+ properties.payload = 1;
23479
+ if (!(message.binary && typeof message.binary.length === "number" || $util.isString(message.binary)))
23480
+ return "binary: buffer expected";
21385
23481
  }
21386
23482
  return null;
21387
23483
  };
21388
- PropertySetRequest.fromObject = function fromObject(object) {
21389
- if (object instanceof $root.sesame.v1.compositor.PropertySetRequest)
23484
+ SideData2.fromObject = function fromObject(object) {
23485
+ if (object instanceof $root.sesame.v1.sidedata.SideData)
21390
23486
  return object;
21391
- let message = new $root.sesame.v1.compositor.PropertySetRequest();
21392
- if (object.domain != null) {
21393
- if (typeof object.domain !== "object")
21394
- throw TypeError(".sesame.v1.compositor.PropertySetRequest.domain: object expected");
21395
- message.domain = $root.sesame.v1.common.PropertyDomain.fromObject(object.domain);
21396
- }
21397
- if (object.address != null)
21398
- message.address = String(object.address);
21399
- if (object.property != null)
21400
- message.property = String(object.property);
21401
- if (object.value != null) {
21402
- if (typeof object.value !== "object")
21403
- throw TypeError(".sesame.v1.compositor.PropertySetRequest.value: object expected");
21404
- message.value = $root.sesame.v1.common.PropValue.fromObject(object.value);
21405
- }
21406
- return message;
21407
- };
21408
- PropertySetRequest.toObject = function toObject(message, options) {
23487
+ let message = new $root.sesame.v1.sidedata.SideData();
23488
+ if (object.id != null)
23489
+ message.id = String(object.id);
23490
+ if (object.version != null) {
23491
+ if ($util.Long)
23492
+ (message.version = $util.Long.fromValue(object.version)).unsigned = true;
23493
+ else if (typeof object.version === "string")
23494
+ message.version = parseInt(object.version, 10);
23495
+ else if (typeof object.version === "number")
23496
+ message.version = object.version;
23497
+ else if (typeof object.version === "object")
23498
+ message.version = new $util.LongBits(object.version.low >>> 0, object.version.high >>> 0).toNumber(true);
23499
+ }
23500
+ if (object.atlas != null) {
23501
+ if (typeof object.atlas !== "object")
23502
+ throw TypeError(".sesame.v1.sidedata.SideData.atlas: object expected");
23503
+ message.atlas = $root.sesame.v1.sidedata.AtlasLayout.fromObject(object.atlas);
23504
+ }
23505
+ if (object.json != null)
23506
+ message.json = String(object.json);
23507
+ if (object.binary != null) {
23508
+ if (typeof object.binary === "string")
23509
+ $util.base64.decode(object.binary, message.binary = $util.newBuffer($util.base64.length(object.binary)), 0);
23510
+ else if (object.binary.length >= 0)
23511
+ message.binary = object.binary;
23512
+ }
23513
+ return message;
23514
+ };
23515
+ SideData2.toObject = function toObject(message, options) {
21409
23516
  if (!options)
21410
23517
  options = {};
21411
23518
  let object = {};
21412
23519
  if (options.defaults) {
21413
- object.domain = null;
21414
- object.address = "";
21415
- object.property = "";
21416
- object.value = null;
23520
+ object.id = "";
23521
+ if ($util.Long) {
23522
+ let long = new $util.Long(0, 0, true);
23523
+ object.version = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
23524
+ } else
23525
+ object.version = options.longs === String ? "0" : 0;
23526
+ }
23527
+ if (message.id != null && message.hasOwnProperty("id"))
23528
+ object.id = message.id;
23529
+ if (message.version != null && message.hasOwnProperty("version"))
23530
+ if (typeof message.version === "number")
23531
+ object.version = options.longs === String ? String(message.version) : message.version;
23532
+ else
23533
+ object.version = options.longs === String ? $util.Long.prototype.toString.call(message.version) : options.longs === Number ? new $util.LongBits(message.version.low >>> 0, message.version.high >>> 0).toNumber(true) : message.version;
23534
+ if (message.atlas != null && message.hasOwnProperty("atlas")) {
23535
+ object.atlas = $root.sesame.v1.sidedata.AtlasLayout.toObject(message.atlas, options);
23536
+ if (options.oneofs)
23537
+ object.payload = "atlas";
23538
+ }
23539
+ if (message.json != null && message.hasOwnProperty("json")) {
23540
+ object.json = message.json;
23541
+ if (options.oneofs)
23542
+ object.payload = "json";
23543
+ }
23544
+ if (message.binary != null && message.hasOwnProperty("binary")) {
23545
+ object.binary = options.bytes === String ? $util.base64.encode(message.binary, 0, message.binary.length) : options.bytes === Array ? Array.prototype.slice.call(message.binary) : message.binary;
23546
+ if (options.oneofs)
23547
+ object.payload = "binary";
21417
23548
  }
21418
- if (message.domain != null && message.hasOwnProperty("domain"))
21419
- object.domain = $root.sesame.v1.common.PropertyDomain.toObject(message.domain, options);
21420
- if (message.address != null && message.hasOwnProperty("address"))
21421
- object.address = message.address;
21422
- if (message.property != null && message.hasOwnProperty("property"))
21423
- object.property = message.property;
21424
- if (message.value != null && message.hasOwnProperty("value"))
21425
- object.value = $root.sesame.v1.common.PropValue.toObject(message.value, options);
21426
23549
  return object;
21427
23550
  };
21428
- PropertySetRequest.prototype.toJSON = function toJSON() {
23551
+ SideData2.prototype.toJSON = function toJSON() {
21429
23552
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21430
23553
  };
21431
- PropertySetRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
23554
+ SideData2.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
21432
23555
  if (typeUrlPrefix === void 0) {
21433
23556
  typeUrlPrefix = "type.googleapis.com";
21434
23557
  }
21435
- return typeUrlPrefix + "/sesame.v1.compositor.PropertySetRequest";
23558
+ return typeUrlPrefix + "/sesame.v1.sidedata.SideData";
21436
23559
  };
21437
- return PropertySetRequest;
23560
+ return SideData2;
21438
23561
  }();
21439
- compositor.PropertyAnimateRequest = function() {
21440
- function PropertyAnimateRequest(properties) {
21441
- this.keyframes = [];
23562
+ sidedata.SideDataSet = function() {
23563
+ function SideDataSet(properties) {
23564
+ this.entries = [];
21442
23565
  if (properties) {
21443
23566
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21444
23567
  if (properties[keys[i]] != null)
21445
23568
  this[keys[i]] = properties[keys[i]];
21446
23569
  }
21447
23570
  }
21448
- PropertyAnimateRequest.prototype.domain = null;
21449
- PropertyAnimateRequest.prototype.address = "";
21450
- PropertyAnimateRequest.prototype.property = "";
21451
- PropertyAnimateRequest.prototype.keyframes = $util.emptyArray;
21452
- PropertyAnimateRequest.prototype.before = 0;
21453
- PropertyAnimateRequest.prototype.after = 0;
21454
- PropertyAnimateRequest.create = function create(properties) {
21455
- return new PropertyAnimateRequest(properties);
23571
+ SideDataSet.prototype.entries = $util.emptyArray;
23572
+ SideDataSet.create = function create(properties) {
23573
+ return new SideDataSet(properties);
21456
23574
  };
21457
- PropertyAnimateRequest.encode = function encode(message, writer) {
23575
+ SideDataSet.encode = function encode(message, writer) {
21458
23576
  if (!writer)
21459
23577
  writer = $Writer.create();
21460
- if (message.domain != null && Object.hasOwnProperty.call(message, "domain"))
21461
- $root.sesame.v1.common.PropertyDomain.encode(message.domain, writer.uint32(
21462
- /* id 1, wireType 2 =*/
21463
- 10
21464
- ).fork()).ldelim();
21465
- if (message.address != null && Object.hasOwnProperty.call(message, "address"))
21466
- writer.uint32(
21467
- /* id 2, wireType 2 =*/
21468
- 18
21469
- ).string(message.address);
21470
- if (message.property != null && Object.hasOwnProperty.call(message, "property"))
21471
- writer.uint32(
21472
- /* id 3, wireType 2 =*/
21473
- 26
21474
- ).string(message.property);
21475
- if (message.keyframes != null && message.keyframes.length)
21476
- for (let i = 0; i < message.keyframes.length; ++i)
21477
- $root.sesame.v1.compositor.KeyFrame.encode(message.keyframes[i], writer.uint32(
21478
- /* id 4, wireType 2 =*/
21479
- 34
23578
+ if (message.entries != null && message.entries.length)
23579
+ for (let i = 0; i < message.entries.length; ++i)
23580
+ $root.sesame.v1.sidedata.SideData.encode(message.entries[i], writer.uint32(
23581
+ /* id 1, wireType 2 =*/
23582
+ 10
21480
23583
  ).fork()).ldelim();
21481
- if (message.before != null && Object.hasOwnProperty.call(message, "before"))
21482
- writer.uint32(
21483
- /* id 5, wireType 0 =*/
21484
- 40
21485
- ).int32(message.before);
21486
- if (message.after != null && Object.hasOwnProperty.call(message, "after"))
21487
- writer.uint32(
21488
- /* id 6, wireType 0 =*/
21489
- 48
21490
- ).int32(message.after);
21491
23584
  return writer;
21492
23585
  };
21493
- PropertyAnimateRequest.encodeDelimited = function encodeDelimited(message, writer) {
23586
+ SideDataSet.encodeDelimited = function encodeDelimited(message, writer) {
21494
23587
  return this.encode(message, writer).ldelim();
21495
23588
  };
21496
- PropertyAnimateRequest.decode = function decode(reader, length, error) {
23589
+ SideDataSet.decode = function decode(reader, length, error) {
21497
23590
  if (!(reader instanceof $Reader))
21498
23591
  reader = $Reader.create(reader);
21499
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.compositor.PropertyAnimateRequest();
23592
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sidedata.SideDataSet();
21500
23593
  while (reader.pos < end) {
21501
23594
  let tag = reader.uint32();
21502
23595
  if (tag === error)
21503
23596
  break;
21504
23597
  switch (tag >>> 3) {
21505
23598
  case 1: {
21506
- message.domain = $root.sesame.v1.common.PropertyDomain.decode(reader, reader.uint32());
21507
- break;
21508
- }
21509
- case 2: {
21510
- message.address = reader.string();
21511
- break;
21512
- }
21513
- case 3: {
21514
- message.property = reader.string();
21515
- break;
21516
- }
21517
- case 4: {
21518
- if (!(message.keyframes && message.keyframes.length))
21519
- message.keyframes = [];
21520
- message.keyframes.push($root.sesame.v1.compositor.KeyFrame.decode(reader, reader.uint32()));
21521
- break;
21522
- }
21523
- case 5: {
21524
- message.before = reader.int32();
21525
- break;
21526
- }
21527
- case 6: {
21528
- message.after = reader.int32();
23599
+ if (!(message.entries && message.entries.length))
23600
+ message.entries = [];
23601
+ message.entries.push($root.sesame.v1.sidedata.SideData.decode(reader, reader.uint32()));
21529
23602
  break;
21530
23603
  }
21531
23604
  default:
@@ -21535,173 +23608,66 @@ var sesame = $root.sesame = (() => {
21535
23608
  }
21536
23609
  return message;
21537
23610
  };
21538
- PropertyAnimateRequest.decodeDelimited = function decodeDelimited(reader) {
23611
+ SideDataSet.decodeDelimited = function decodeDelimited(reader) {
21539
23612
  if (!(reader instanceof $Reader))
21540
23613
  reader = new $Reader(reader);
21541
23614
  return this.decode(reader, reader.uint32());
21542
23615
  };
21543
- PropertyAnimateRequest.verify = function verify(message) {
23616
+ SideDataSet.verify = function verify(message) {
21544
23617
  if (typeof message !== "object" || message === null)
21545
23618
  return "object expected";
21546
- if (message.domain != null && message.hasOwnProperty("domain")) {
21547
- let error = $root.sesame.v1.common.PropertyDomain.verify(message.domain);
21548
- if (error)
21549
- return "domain." + error;
21550
- }
21551
- if (message.address != null && message.hasOwnProperty("address")) {
21552
- if (!$util.isString(message.address))
21553
- return "address: string expected";
21554
- }
21555
- if (message.property != null && message.hasOwnProperty("property")) {
21556
- if (!$util.isString(message.property))
21557
- return "property: string expected";
21558
- }
21559
- if (message.keyframes != null && message.hasOwnProperty("keyframes")) {
21560
- if (!Array.isArray(message.keyframes))
21561
- return "keyframes: array expected";
21562
- for (let i = 0; i < message.keyframes.length; ++i) {
21563
- let error = $root.sesame.v1.compositor.KeyFrame.verify(message.keyframes[i]);
23619
+ if (message.entries != null && message.hasOwnProperty("entries")) {
23620
+ if (!Array.isArray(message.entries))
23621
+ return "entries: array expected";
23622
+ for (let i = 0; i < message.entries.length; ++i) {
23623
+ let error = $root.sesame.v1.sidedata.SideData.verify(message.entries[i]);
21564
23624
  if (error)
21565
- return "keyframes." + error;
23625
+ return "entries." + error;
21566
23626
  }
21567
23627
  }
21568
- if (message.before != null && message.hasOwnProperty("before"))
21569
- switch (message.before) {
21570
- default:
21571
- return "before: enum value expected";
21572
- case 0:
21573
- case 1:
21574
- case 2:
21575
- case 3:
21576
- break;
21577
- }
21578
- if (message.after != null && message.hasOwnProperty("after"))
21579
- switch (message.after) {
21580
- default:
21581
- return "after: enum value expected";
21582
- case 0:
21583
- case 1:
21584
- case 2:
21585
- case 3:
21586
- break;
21587
- }
21588
23628
  return null;
21589
23629
  };
21590
- PropertyAnimateRequest.fromObject = function fromObject(object) {
21591
- if (object instanceof $root.sesame.v1.compositor.PropertyAnimateRequest)
23630
+ SideDataSet.fromObject = function fromObject(object) {
23631
+ if (object instanceof $root.sesame.v1.sidedata.SideDataSet)
21592
23632
  return object;
21593
- let message = new $root.sesame.v1.compositor.PropertyAnimateRequest();
21594
- if (object.domain != null) {
21595
- if (typeof object.domain !== "object")
21596
- throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.domain: object expected");
21597
- message.domain = $root.sesame.v1.common.PropertyDomain.fromObject(object.domain);
21598
- }
21599
- if (object.address != null)
21600
- message.address = String(object.address);
21601
- if (object.property != null)
21602
- message.property = String(object.property);
21603
- if (object.keyframes) {
21604
- if (!Array.isArray(object.keyframes))
21605
- throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.keyframes: array expected");
21606
- message.keyframes = [];
21607
- for (let i = 0; i < object.keyframes.length; ++i) {
21608
- if (typeof object.keyframes[i] !== "object")
21609
- throw TypeError(".sesame.v1.compositor.PropertyAnimateRequest.keyframes: object expected");
21610
- message.keyframes[i] = $root.sesame.v1.compositor.KeyFrame.fromObject(object.keyframes[i]);
23633
+ let message = new $root.sesame.v1.sidedata.SideDataSet();
23634
+ if (object.entries) {
23635
+ if (!Array.isArray(object.entries))
23636
+ throw TypeError(".sesame.v1.sidedata.SideDataSet.entries: array expected");
23637
+ message.entries = [];
23638
+ for (let i = 0; i < object.entries.length; ++i) {
23639
+ if (typeof object.entries[i] !== "object")
23640
+ throw TypeError(".sesame.v1.sidedata.SideDataSet.entries: object expected");
23641
+ message.entries[i] = $root.sesame.v1.sidedata.SideData.fromObject(object.entries[i]);
21611
23642
  }
21612
23643
  }
21613
- switch (object.before) {
21614
- default:
21615
- if (typeof object.before === "number") {
21616
- message.before = object.before;
21617
- break;
21618
- }
21619
- break;
21620
- case "ANIM_MODE_CONSTANT":
21621
- case 0:
21622
- message.before = 0;
21623
- break;
21624
- case "ANIM_MODE_STATE_FROM":
21625
- case 1:
21626
- message.before = 1;
21627
- break;
21628
- case "ANIM_MODE_LOOP":
21629
- case 2:
21630
- message.before = 2;
21631
- break;
21632
- case "ANIM_MODE_BOUNCE":
21633
- case 3:
21634
- message.before = 3;
21635
- break;
21636
- }
21637
- switch (object.after) {
21638
- default:
21639
- if (typeof object.after === "number") {
21640
- message.after = object.after;
21641
- break;
21642
- }
21643
- break;
21644
- case "ANIM_MODE_CONSTANT":
21645
- case 0:
21646
- message.after = 0;
21647
- break;
21648
- case "ANIM_MODE_STATE_FROM":
21649
- case 1:
21650
- message.after = 1;
21651
- break;
21652
- case "ANIM_MODE_LOOP":
21653
- case 2:
21654
- message.after = 2;
21655
- break;
21656
- case "ANIM_MODE_BOUNCE":
21657
- case 3:
21658
- message.after = 3;
21659
- break;
21660
- }
21661
23644
  return message;
21662
23645
  };
21663
- PropertyAnimateRequest.toObject = function toObject(message, options) {
23646
+ SideDataSet.toObject = function toObject(message, options) {
21664
23647
  if (!options)
21665
23648
  options = {};
21666
23649
  let object = {};
21667
23650
  if (options.arrays || options.defaults)
21668
- object.keyframes = [];
21669
- if (options.defaults) {
21670
- object.domain = null;
21671
- object.address = "";
21672
- object.property = "";
21673
- object.before = options.enums === String ? "ANIM_MODE_CONSTANT" : 0;
21674
- object.after = options.enums === String ? "ANIM_MODE_CONSTANT" : 0;
21675
- }
21676
- if (message.domain != null && message.hasOwnProperty("domain"))
21677
- object.domain = $root.sesame.v1.common.PropertyDomain.toObject(message.domain, options);
21678
- if (message.address != null && message.hasOwnProperty("address"))
21679
- object.address = message.address;
21680
- if (message.property != null && message.hasOwnProperty("property"))
21681
- object.property = message.property;
21682
- if (message.keyframes && message.keyframes.length) {
21683
- object.keyframes = [];
21684
- for (let j = 0; j < message.keyframes.length; ++j)
21685
- object.keyframes[j] = $root.sesame.v1.compositor.KeyFrame.toObject(message.keyframes[j], options);
23651
+ object.entries = [];
23652
+ if (message.entries && message.entries.length) {
23653
+ object.entries = [];
23654
+ for (let j = 0; j < message.entries.length; ++j)
23655
+ object.entries[j] = $root.sesame.v1.sidedata.SideData.toObject(message.entries[j], options);
21686
23656
  }
21687
- if (message.before != null && message.hasOwnProperty("before"))
21688
- object.before = options.enums === String ? $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.before] === void 0 ? message.before : $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.before] : message.before;
21689
- if (message.after != null && message.hasOwnProperty("after"))
21690
- object.after = options.enums === String ? $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.after] === void 0 ? message.after : $root.sesame.v1.compositor.AnimationChannelEvaluationMode[message.after] : message.after;
21691
23657
  return object;
21692
23658
  };
21693
- PropertyAnimateRequest.prototype.toJSON = function toJSON() {
23659
+ SideDataSet.prototype.toJSON = function toJSON() {
21694
23660
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21695
23661
  };
21696
- PropertyAnimateRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
23662
+ SideDataSet.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
21697
23663
  if (typeUrlPrefix === void 0) {
21698
23664
  typeUrlPrefix = "type.googleapis.com";
21699
23665
  }
21700
- return typeUrlPrefix + "/sesame.v1.compositor.PropertyAnimateRequest";
23666
+ return typeUrlPrefix + "/sesame.v1.sidedata.SideDataSet";
21701
23667
  };
21702
- return PropertyAnimateRequest;
23668
+ return SideDataSet;
21703
23669
  }();
21704
- return compositor;
23670
+ return sidedata;
21705
23671
  }();
21706
23672
  v1.jobs = function() {
21707
23673
  const jobs = {};
@@ -24631,6 +26597,9 @@ var sesame = $root.sesame = (() => {
24631
26597
  case 4:
24632
26598
  case 5:
24633
26599
  case 6:
26600
+ case 7:
26601
+ case 8:
26602
+ case 9:
24634
26603
  break;
24635
26604
  }
24636
26605
  return null;
@@ -24684,6 +26653,18 @@ var sesame = $root.sesame = (() => {
24684
26653
  case 6:
24685
26654
  message.dataType = 6;
24686
26655
  break;
26656
+ case "DATA_TYPE_OUTPUT_STATUS":
26657
+ case 7:
26658
+ message.dataType = 7;
26659
+ break;
26660
+ case "DATA_TYPE_OUTPUT_CONTROL":
26661
+ case 8:
26662
+ message.dataType = 8;
26663
+ break;
26664
+ case "DATA_TYPE_ENGINE_STATUS":
26665
+ case 9:
26666
+ message.dataType = 9;
26667
+ break;
24687
26668
  }
24688
26669
  return message;
24689
26670
  };
@@ -25232,6 +27213,7 @@ var sesame = $root.sesame = (() => {
25232
27213
  MediaFrameData.prototype.pts = $util.Long ? $util.Long.fromBits(0, 0, true) : 0;
25233
27214
  MediaFrameData.prototype.keyframe = false;
25234
27215
  MediaFrameData.prototype.codecData = null;
27216
+ MediaFrameData.prototype.sideData = null;
25235
27217
  MediaFrameData.create = function create(properties) {
25236
27218
  return new MediaFrameData(properties);
25237
27219
  };
@@ -25253,6 +27235,11 @@ var sesame = $root.sesame = (() => {
25253
27235
  /* id 3, wireType 2 =*/
25254
27236
  26
25255
27237
  ).fork()).ldelim();
27238
+ if (message.sideData != null && Object.hasOwnProperty.call(message, "sideData"))
27239
+ $root.sesame.v1.sidedata.SideDataSet.encode(message.sideData, writer.uint32(
27240
+ /* id 4, wireType 2 =*/
27241
+ 34
27242
+ ).fork()).ldelim();
25256
27243
  return writer;
25257
27244
  };
25258
27245
  MediaFrameData.encodeDelimited = function encodeDelimited(message, writer) {
@@ -25279,6 +27266,10 @@ var sesame = $root.sesame = (() => {
25279
27266
  message.codecData = $root.sesame.v1.wire.MediaCodecData.decode(reader, reader.uint32());
25280
27267
  break;
25281
27268
  }
27269
+ case 4: {
27270
+ message.sideData = $root.sesame.v1.sidedata.SideDataSet.decode(reader, reader.uint32());
27271
+ break;
27272
+ }
25282
27273
  default:
25283
27274
  reader.skipType(tag & 7);
25284
27275
  break;
@@ -25307,6 +27298,11 @@ var sesame = $root.sesame = (() => {
25307
27298
  if (error)
25308
27299
  return "codecData." + error;
25309
27300
  }
27301
+ if (message.sideData != null && message.hasOwnProperty("sideData")) {
27302
+ let error = $root.sesame.v1.sidedata.SideDataSet.verify(message.sideData);
27303
+ if (error)
27304
+ return "sideData." + error;
27305
+ }
25310
27306
  return null;
25311
27307
  };
25312
27308
  MediaFrameData.fromObject = function fromObject(object) {
@@ -25330,6 +27326,11 @@ var sesame = $root.sesame = (() => {
25330
27326
  throw TypeError(".sesame.v1.wire.MediaFrameData.codecData: object expected");
25331
27327
  message.codecData = $root.sesame.v1.wire.MediaCodecData.fromObject(object.codecData);
25332
27328
  }
27329
+ if (object.sideData != null) {
27330
+ if (typeof object.sideData !== "object")
27331
+ throw TypeError(".sesame.v1.wire.MediaFrameData.sideData: object expected");
27332
+ message.sideData = $root.sesame.v1.sidedata.SideDataSet.fromObject(object.sideData);
27333
+ }
25333
27334
  return message;
25334
27335
  };
25335
27336
  MediaFrameData.toObject = function toObject(message, options) {
@@ -25344,6 +27345,7 @@ var sesame = $root.sesame = (() => {
25344
27345
  object.pts = options.longs === String ? "0" : 0;
25345
27346
  object.keyframe = false;
25346
27347
  object.codecData = null;
27348
+ object.sideData = null;
25347
27349
  }
25348
27350
  if (message.pts != null && message.hasOwnProperty("pts"))
25349
27351
  if (typeof message.pts === "number")
@@ -25354,6 +27356,8 @@ var sesame = $root.sesame = (() => {
25354
27356
  object.keyframe = message.keyframe;
25355
27357
  if (message.codecData != null && message.hasOwnProperty("codecData"))
25356
27358
  object.codecData = $root.sesame.v1.wire.MediaCodecData.toObject(message.codecData, options);
27359
+ if (message.sideData != null && message.hasOwnProperty("sideData"))
27360
+ object.sideData = $root.sesame.v1.sidedata.SideDataSet.toObject(message.sideData, options);
25357
27361
  return object;
25358
27362
  };
25359
27363
  MediaFrameData.prototype.toJSON = function toJSON() {
@@ -25376,6 +27380,9 @@ var sesame = $root.sesame = (() => {
25376
27380
  values[valuesById[4] = "DATA_TYPE_TRANSPORT_CONTROL"] = 4;
25377
27381
  values[valuesById[5] = "DATA_TYPE_AUDIO_CONTROL"] = 5;
25378
27382
  values[valuesById[6] = "DATA_TYPE_BINARY"] = 6;
27383
+ values[valuesById[7] = "DATA_TYPE_OUTPUT_STATUS"] = 7;
27384
+ values[valuesById[8] = "DATA_TYPE_OUTPUT_CONTROL"] = 8;
27385
+ values[valuesById[9] = "DATA_TYPE_ENGINE_STATUS"] = 9;
25379
27386
  return values;
25380
27387
  }();
25381
27388
  wire.DataFrameData = function() {
@@ -25452,6 +27459,9 @@ var sesame = $root.sesame = (() => {
25452
27459
  case 4:
25453
27460
  case 5:
25454
27461
  case 6:
27462
+ case 7:
27463
+ case 8:
27464
+ case 9:
25455
27465
  break;
25456
27466
  }
25457
27467
  if (message.trackName != null && message.hasOwnProperty("trackName")) {
@@ -25499,6 +27509,18 @@ var sesame = $root.sesame = (() => {
25499
27509
  case 6:
25500
27510
  message.dataType = 6;
25501
27511
  break;
27512
+ case "DATA_TYPE_OUTPUT_STATUS":
27513
+ case 7:
27514
+ message.dataType = 7;
27515
+ break;
27516
+ case "DATA_TYPE_OUTPUT_CONTROL":
27517
+ case 8:
27518
+ message.dataType = 8;
27519
+ break;
27520
+ case "DATA_TYPE_ENGINE_STATUS":
27521
+ case 9:
27522
+ message.dataType = 9;
27523
+ break;
25502
27524
  }
25503
27525
  if (object.trackName != null)
25504
27526
  message.trackName = String(object.trackName);
@@ -25835,6 +27857,32 @@ var CommandList = class {
25835
27857
  item.clearCompositor = { id };
25836
27858
  return this.add(item, timeOffsetMs);
25837
27859
  }
27860
+ /**
27861
+ * Attach side data to every frame the compositor renders from now on.
27862
+ * Replaces the entry with the same `id`. Encoded WebSocket/MoQ outputs carry
27863
+ * the full set in the wire header on key frames and whenever it changes.
27864
+ * Batch it with the node changes it describes so both land on the same frame.
27865
+ *
27866
+ * @example
27867
+ * ```ts
27868
+ * cl.sideDataSet('atlas', {
27869
+ * id: 'sesame.atlas.v1',
27870
+ * version: 3,
27871
+ * atlas: { width: 1920, height: 1080, entries: [{ sourceId: 'cam-1', x: 0, y: 0, width: 960, height: 540 }] },
27872
+ * });
27873
+ * ```
27874
+ */
27875
+ sideDataSet(compositorId, sideData, timeOffsetMs) {
27876
+ let item = new sesame.v1.commands.CommandListItem();
27877
+ item.setSideData = { compositorId, sideData };
27878
+ return this.add(item, timeOffsetMs);
27879
+ }
27880
+ /** Remove one side data entry from a compositor. */
27881
+ sideDataRemove(compositorId, id, timeOffsetMs) {
27882
+ let item = new sesame.v1.commands.CommandListItem();
27883
+ item.removeSideData = { compositorId, id };
27884
+ return this.add(item, timeOffsetMs);
27885
+ }
25838
27886
  sourceAdd(id, cfg, timeOffsetMs) {
25839
27887
  let item = new sesame.v1.commands.CommandListItem();
25840
27888
  item.addSource = { id, config: cfg };
@@ -26011,6 +28059,15 @@ var CommandList = class {
26011
28059
  item.removeOutput = { id };
26012
28060
  return this.add(item, timeOffsetMs);
26013
28061
  }
28062
+ /** Start or stop a manually controlled output stream (SRT outputs with streamControl 'manual'). */
28063
+ outputControl(id, action, timeOffsetMs) {
28064
+ let item = new sesame.v1.commands.CommandListItem();
28065
+ item.outputControl = {
28066
+ id,
28067
+ action: action === "start" ? sesame.v1.outputs.OutputControlAction.OUTPUT_CONTROL_ACTION_START : sesame.v1.outputs.OutputControlAction.OUTPUT_CONTROL_ACTION_STOP
28068
+ };
28069
+ return this.add(item, timeOffsetMs);
28070
+ }
26014
28071
  encoderAdd(id, cfg, timeOffsetMs) {
26015
28072
  let item = new sesame.v1.commands.CommandListItem();
26016
28073
  item.addEncoder = { id, ...cfg };
@@ -26124,6 +28181,7 @@ var DataType = sesame.v1.wire.DataType;
26124
28181
  var FrameHeader = sesame.v1.wire.FrameHeader;
26125
28182
  var MediaCodecData = sesame.v1.wire.MediaCodecData;
26126
28183
  var CodecType = sesame.v1.common.CodecType;
28184
+ var SideData = sesame.v1.sidedata.SideData;
26127
28185
  function parseDataFrame(frame) {
26128
28186
  if (!frame.valid || !frame.header || !frame.payload) return null;
26129
28187
  if (frame.header.type !== sesame.v1.wire.FrameType.FRAME_TYPE_DATA) return null;
@@ -26170,6 +28228,29 @@ function parseDataFrame(frame) {
26170
28228
  return null;
26171
28229
  }
26172
28230
  }
28231
+ function getSideData(frame) {
28232
+ const media = frame.header?.media;
28233
+ if (!media || !media.sideData) return null;
28234
+ return media.sideData.entries ?? [];
28235
+ }
28236
+ var SideDataTracker = class {
28237
+ constructor() {
28238
+ this.entries = /* @__PURE__ */ new Map();
28239
+ }
28240
+ /** Feed every media frame in order; returns true when the set changed. */
28241
+ update(frame) {
28242
+ const entries = getSideData(frame);
28243
+ if (entries === null) return false;
28244
+ this.entries = new Map(entries.map((e) => [e.id ?? "", e]));
28245
+ return true;
28246
+ }
28247
+ get(id) {
28248
+ return this.entries.get(id);
28249
+ }
28250
+ all() {
28251
+ return [...this.entries.values()];
28252
+ }
28253
+ };
26173
28254
  function buildAudioControlFrame(trackName, request) {
26174
28255
  const payload = sesame.v1.audio.AudioControlRequest.encode(request).finish();
26175
28256
  return WireProtocol.serialize(
@@ -26892,12 +28973,15 @@ export {
26892
28973
  Response,
26893
28974
  SesameClient,
26894
28975
  SesameConnection,
28976
+ SideData,
28977
+ SideDataTracker,
26895
28978
  StatusApi,
26896
28979
  WireProtocol,
26897
28980
  buildAudioControlFrame,
26898
28981
  buildBinaryDataFrame,
26899
28982
  buildTransportControlFrame,
26900
28983
  getLogger,
28984
+ getSideData,
26901
28985
  log,
26902
28986
  parseDataFrame,
26903
28987
  sesame,