@stinkycomputing/sesame-api-client 1.5.7 → 1.5.9

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.
@@ -866,6 +866,14 @@ var sesame = $root.sesame = (() => {
866
866
  AudioMixerChannel.prototype.level = 0;
867
867
  AudioMixerChannel.prototype.pan = 0;
868
868
  AudioMixerChannel.prototype.plugins = $util.emptyArray;
869
+ AudioMixerChannel.prototype.mute = false;
870
+ AudioMixerChannel.prototype.automationLevel = null;
871
+ AudioMixerChannel.prototype.automationMute = false;
872
+ let $oneOfFields;
873
+ Object.defineProperty(AudioMixerChannel.prototype, "_automationLevel", {
874
+ get: $util.oneOfGetter($oneOfFields = ["automationLevel"]),
875
+ set: $util.oneOfSetter($oneOfFields)
876
+ });
869
877
  AudioMixerChannel.create = function create(properties) {
870
878
  return new AudioMixerChannel(properties);
871
879
  };
@@ -912,6 +920,21 @@ var sesame = $root.sesame = (() => {
912
920
  /* id 7, wireType 2 =*/
913
921
  58
914
922
  ).fork()).ldelim();
923
+ if (message.mute != null && Object.hasOwnProperty.call(message, "mute"))
924
+ writer.uint32(
925
+ /* id 8, wireType 0 =*/
926
+ 64
927
+ ).bool(message.mute);
928
+ if (message.automationLevel != null && Object.hasOwnProperty.call(message, "automationLevel"))
929
+ writer.uint32(
930
+ /* id 9, wireType 5 =*/
931
+ 77
932
+ ).float(message.automationLevel);
933
+ if (message.automationMute != null && Object.hasOwnProperty.call(message, "automationMute"))
934
+ writer.uint32(
935
+ /* id 10, wireType 0 =*/
936
+ 80
937
+ ).bool(message.automationMute);
915
938
  return writer;
916
939
  };
917
940
  AudioMixerChannel.encodeDelimited = function encodeDelimited(message, writer) {
@@ -963,6 +986,18 @@ var sesame = $root.sesame = (() => {
963
986
  message.plugins.push($root.sesame.v1.audio.AudioPlugin.decode(reader, reader.uint32()));
964
987
  break;
965
988
  }
989
+ case 8: {
990
+ message.mute = reader.bool();
991
+ break;
992
+ }
993
+ case 9: {
994
+ message.automationLevel = reader.float();
995
+ break;
996
+ }
997
+ case 10: {
998
+ message.automationMute = reader.bool();
999
+ break;
1000
+ }
966
1001
  default:
967
1002
  reader.skipType(tag & 7);
968
1003
  break;
@@ -978,6 +1013,7 @@ var sesame = $root.sesame = (() => {
978
1013
  AudioMixerChannel.verify = function verify(message) {
979
1014
  if (typeof message !== "object" || message === null)
980
1015
  return "object expected";
1016
+ let properties = {};
981
1017
  if (message.id != null && message.hasOwnProperty("id")) {
982
1018
  if (!$util.isString(message.id))
983
1019
  return "id: string expected";
@@ -1019,6 +1055,19 @@ var sesame = $root.sesame = (() => {
1019
1055
  return "plugins." + error;
1020
1056
  }
1021
1057
  }
1058
+ if (message.mute != null && message.hasOwnProperty("mute")) {
1059
+ if (typeof message.mute !== "boolean")
1060
+ return "mute: boolean expected";
1061
+ }
1062
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel")) {
1063
+ properties._automationLevel = 1;
1064
+ if (typeof message.automationLevel !== "number")
1065
+ return "automationLevel: number expected";
1066
+ }
1067
+ if (message.automationMute != null && message.hasOwnProperty("automationMute")) {
1068
+ if (typeof message.automationMute !== "boolean")
1069
+ return "automationMute: boolean expected";
1070
+ }
1022
1071
  return null;
1023
1072
  };
1024
1073
  AudioMixerChannel.fromObject = function fromObject(object) {
@@ -1070,6 +1119,12 @@ var sesame = $root.sesame = (() => {
1070
1119
  message.plugins[i] = $root.sesame.v1.audio.AudioPlugin.fromObject(object.plugins[i]);
1071
1120
  }
1072
1121
  }
1122
+ if (object.mute != null)
1123
+ message.mute = Boolean(object.mute);
1124
+ if (object.automationLevel != null)
1125
+ message.automationLevel = Number(object.automationLevel);
1126
+ if (object.automationMute != null)
1127
+ message.automationMute = Boolean(object.automationMute);
1073
1128
  return message;
1074
1129
  };
1075
1130
  AudioMixerChannel.toObject = function toObject(message, options) {
@@ -1086,6 +1141,8 @@ var sesame = $root.sesame = (() => {
1086
1141
  object.channelType = options.enums === String ? "AUDIO_MIXER_CHANNEL_TYPE_UNSPECIFIED" : 0;
1087
1142
  object.level = 0;
1088
1143
  object.pan = 0;
1144
+ object.mute = false;
1145
+ object.automationMute = false;
1089
1146
  }
1090
1147
  if (message.id != null && message.hasOwnProperty("id"))
1091
1148
  object.id = message.id;
@@ -1107,6 +1164,15 @@ var sesame = $root.sesame = (() => {
1107
1164
  for (let j = 0; j < message.plugins.length; ++j)
1108
1165
  object.plugins[j] = $root.sesame.v1.audio.AudioPlugin.toObject(message.plugins[j], options);
1109
1166
  }
1167
+ if (message.mute != null && message.hasOwnProperty("mute"))
1168
+ object.mute = message.mute;
1169
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel")) {
1170
+ object.automationLevel = options.json && !isFinite(message.automationLevel) ? String(message.automationLevel) : message.automationLevel;
1171
+ if (options.oneofs)
1172
+ object._automationLevel = "automationLevel";
1173
+ }
1174
+ if (message.automationMute != null && message.hasOwnProperty("automationMute"))
1175
+ object.automationMute = message.automationMute;
1110
1176
  return object;
1111
1177
  };
1112
1178
  AudioMixerChannel.prototype.toJSON = function toJSON() {
@@ -1120,9 +1186,162 @@ var sesame = $root.sesame = (() => {
1120
1186
  };
1121
1187
  return AudioMixerChannel;
1122
1188
  }();
1189
+ audio.AudioMixerOutput = function() {
1190
+ function AudioMixerOutput(properties) {
1191
+ this.excludedChannelIds = [];
1192
+ if (properties) {
1193
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1194
+ if (properties[keys[i]] != null)
1195
+ this[keys[i]] = properties[keys[i]];
1196
+ }
1197
+ }
1198
+ AudioMixerOutput.prototype.id = "";
1199
+ AudioMixerOutput.prototype.excludedChannelIds = $util.emptyArray;
1200
+ AudioMixerOutput.prototype.includeMasterPlugins = null;
1201
+ let $oneOfFields;
1202
+ Object.defineProperty(AudioMixerOutput.prototype, "_includeMasterPlugins", {
1203
+ get: $util.oneOfGetter($oneOfFields = ["includeMasterPlugins"]),
1204
+ set: $util.oneOfSetter($oneOfFields)
1205
+ });
1206
+ AudioMixerOutput.create = function create(properties) {
1207
+ return new AudioMixerOutput(properties);
1208
+ };
1209
+ AudioMixerOutput.encode = function encode(message, writer) {
1210
+ if (!writer)
1211
+ writer = $Writer.create();
1212
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
1213
+ writer.uint32(
1214
+ /* id 1, wireType 2 =*/
1215
+ 10
1216
+ ).string(message.id);
1217
+ if (message.excludedChannelIds != null && message.excludedChannelIds.length)
1218
+ for (let i = 0; i < message.excludedChannelIds.length; ++i)
1219
+ writer.uint32(
1220
+ /* id 2, wireType 2 =*/
1221
+ 18
1222
+ ).string(message.excludedChannelIds[i]);
1223
+ if (message.includeMasterPlugins != null && Object.hasOwnProperty.call(message, "includeMasterPlugins"))
1224
+ writer.uint32(
1225
+ /* id 3, wireType 0 =*/
1226
+ 24
1227
+ ).bool(message.includeMasterPlugins);
1228
+ return writer;
1229
+ };
1230
+ AudioMixerOutput.encodeDelimited = function encodeDelimited(message, writer) {
1231
+ return this.encode(message, writer).ldelim();
1232
+ };
1233
+ AudioMixerOutput.decode = function decode(reader, length, error) {
1234
+ if (!(reader instanceof $Reader))
1235
+ reader = $Reader.create(reader);
1236
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.audio.AudioMixerOutput();
1237
+ while (reader.pos < end) {
1238
+ let tag = reader.uint32();
1239
+ if (tag === error)
1240
+ break;
1241
+ switch (tag >>> 3) {
1242
+ case 1: {
1243
+ message.id = reader.string();
1244
+ break;
1245
+ }
1246
+ case 2: {
1247
+ if (!(message.excludedChannelIds && message.excludedChannelIds.length))
1248
+ message.excludedChannelIds = [];
1249
+ message.excludedChannelIds.push(reader.string());
1250
+ break;
1251
+ }
1252
+ case 3: {
1253
+ message.includeMasterPlugins = reader.bool();
1254
+ break;
1255
+ }
1256
+ default:
1257
+ reader.skipType(tag & 7);
1258
+ break;
1259
+ }
1260
+ }
1261
+ return message;
1262
+ };
1263
+ AudioMixerOutput.decodeDelimited = function decodeDelimited(reader) {
1264
+ if (!(reader instanceof $Reader))
1265
+ reader = new $Reader(reader);
1266
+ return this.decode(reader, reader.uint32());
1267
+ };
1268
+ AudioMixerOutput.verify = function verify(message) {
1269
+ if (typeof message !== "object" || message === null)
1270
+ return "object expected";
1271
+ let properties = {};
1272
+ if (message.id != null && message.hasOwnProperty("id")) {
1273
+ if (!$util.isString(message.id))
1274
+ return "id: string expected";
1275
+ }
1276
+ if (message.excludedChannelIds != null && message.hasOwnProperty("excludedChannelIds")) {
1277
+ if (!Array.isArray(message.excludedChannelIds))
1278
+ return "excludedChannelIds: array expected";
1279
+ for (let i = 0; i < message.excludedChannelIds.length; ++i)
1280
+ if (!$util.isString(message.excludedChannelIds[i]))
1281
+ return "excludedChannelIds: string[] expected";
1282
+ }
1283
+ if (message.includeMasterPlugins != null && message.hasOwnProperty("includeMasterPlugins")) {
1284
+ properties._includeMasterPlugins = 1;
1285
+ if (typeof message.includeMasterPlugins !== "boolean")
1286
+ return "includeMasterPlugins: boolean expected";
1287
+ }
1288
+ return null;
1289
+ };
1290
+ AudioMixerOutput.fromObject = function fromObject(object) {
1291
+ if (object instanceof $root.sesame.v1.audio.AudioMixerOutput)
1292
+ return object;
1293
+ let message = new $root.sesame.v1.audio.AudioMixerOutput();
1294
+ if (object.id != null)
1295
+ message.id = String(object.id);
1296
+ if (object.excludedChannelIds) {
1297
+ if (!Array.isArray(object.excludedChannelIds))
1298
+ throw TypeError(".sesame.v1.audio.AudioMixerOutput.excludedChannelIds: array expected");
1299
+ message.excludedChannelIds = [];
1300
+ for (let i = 0; i < object.excludedChannelIds.length; ++i)
1301
+ message.excludedChannelIds[i] = String(object.excludedChannelIds[i]);
1302
+ }
1303
+ if (object.includeMasterPlugins != null)
1304
+ message.includeMasterPlugins = Boolean(object.includeMasterPlugins);
1305
+ return message;
1306
+ };
1307
+ AudioMixerOutput.toObject = function toObject(message, options) {
1308
+ if (!options)
1309
+ options = {};
1310
+ let object = {};
1311
+ if (options.arrays || options.defaults)
1312
+ object.excludedChannelIds = [];
1313
+ if (options.defaults)
1314
+ object.id = "";
1315
+ if (message.id != null && message.hasOwnProperty("id"))
1316
+ object.id = message.id;
1317
+ if (message.excludedChannelIds && message.excludedChannelIds.length) {
1318
+ object.excludedChannelIds = [];
1319
+ for (let j = 0; j < message.excludedChannelIds.length; ++j)
1320
+ object.excludedChannelIds[j] = message.excludedChannelIds[j];
1321
+ }
1322
+ if (message.includeMasterPlugins != null && message.hasOwnProperty("includeMasterPlugins")) {
1323
+ object.includeMasterPlugins = message.includeMasterPlugins;
1324
+ if (options.oneofs)
1325
+ object._includeMasterPlugins = "includeMasterPlugins";
1326
+ }
1327
+ return object;
1328
+ };
1329
+ AudioMixerOutput.prototype.toJSON = function toJSON() {
1330
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1331
+ };
1332
+ AudioMixerOutput.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
1333
+ if (typeUrlPrefix === void 0) {
1334
+ typeUrlPrefix = "type.googleapis.com";
1335
+ }
1336
+ return typeUrlPrefix + "/sesame.v1.audio.AudioMixerOutput";
1337
+ };
1338
+ return AudioMixerOutput;
1339
+ }();
1123
1340
  audio.AudioMixerConfig = function() {
1124
1341
  function AudioMixerConfig(properties) {
1125
1342
  this.channels = [];
1343
+ this.outputs = [];
1344
+ this.masterPlugins = [];
1126
1345
  if (properties) {
1127
1346
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1128
1347
  if (properties[keys[i]] != null)
@@ -1132,6 +1351,19 @@ var sesame = $root.sesame = (() => {
1132
1351
  AudioMixerConfig.prototype.channels = $util.emptyArray;
1133
1352
  AudioMixerConfig.prototype.outputType = 0;
1134
1353
  AudioMixerConfig.prototype.order = 0;
1354
+ AudioMixerConfig.prototype.outputs = $util.emptyArray;
1355
+ AudioMixerConfig.prototype.masterLevel = null;
1356
+ AudioMixerConfig.prototype.masterAutomationLevel = null;
1357
+ AudioMixerConfig.prototype.masterPlugins = $util.emptyArray;
1358
+ let $oneOfFields;
1359
+ Object.defineProperty(AudioMixerConfig.prototype, "_masterLevel", {
1360
+ get: $util.oneOfGetter($oneOfFields = ["masterLevel"]),
1361
+ set: $util.oneOfSetter($oneOfFields)
1362
+ });
1363
+ Object.defineProperty(AudioMixerConfig.prototype, "_masterAutomationLevel", {
1364
+ get: $util.oneOfGetter($oneOfFields = ["masterAutomationLevel"]),
1365
+ set: $util.oneOfSetter($oneOfFields)
1366
+ });
1135
1367
  AudioMixerConfig.create = function create(properties) {
1136
1368
  return new AudioMixerConfig(properties);
1137
1369
  };
@@ -1154,6 +1386,28 @@ var sesame = $root.sesame = (() => {
1154
1386
  /* id 3, wireType 0 =*/
1155
1387
  24
1156
1388
  ).uint32(message.order);
1389
+ if (message.outputs != null && message.outputs.length)
1390
+ for (let i = 0; i < message.outputs.length; ++i)
1391
+ $root.sesame.v1.audio.AudioMixerOutput.encode(message.outputs[i], writer.uint32(
1392
+ /* id 4, wireType 2 =*/
1393
+ 34
1394
+ ).fork()).ldelim();
1395
+ if (message.masterLevel != null && Object.hasOwnProperty.call(message, "masterLevel"))
1396
+ writer.uint32(
1397
+ /* id 5, wireType 5 =*/
1398
+ 45
1399
+ ).float(message.masterLevel);
1400
+ if (message.masterAutomationLevel != null && Object.hasOwnProperty.call(message, "masterAutomationLevel"))
1401
+ writer.uint32(
1402
+ /* id 6, wireType 5 =*/
1403
+ 53
1404
+ ).float(message.masterAutomationLevel);
1405
+ if (message.masterPlugins != null && message.masterPlugins.length)
1406
+ for (let i = 0; i < message.masterPlugins.length; ++i)
1407
+ $root.sesame.v1.audio.AudioPlugin.encode(message.masterPlugins[i], writer.uint32(
1408
+ /* id 7, wireType 2 =*/
1409
+ 58
1410
+ ).fork()).ldelim();
1157
1411
  return writer;
1158
1412
  };
1159
1413
  AudioMixerConfig.encodeDelimited = function encodeDelimited(message, writer) {
@@ -1182,6 +1436,26 @@ var sesame = $root.sesame = (() => {
1182
1436
  message.order = reader.uint32();
1183
1437
  break;
1184
1438
  }
1439
+ case 4: {
1440
+ if (!(message.outputs && message.outputs.length))
1441
+ message.outputs = [];
1442
+ message.outputs.push($root.sesame.v1.audio.AudioMixerOutput.decode(reader, reader.uint32()));
1443
+ break;
1444
+ }
1445
+ case 5: {
1446
+ message.masterLevel = reader.float();
1447
+ break;
1448
+ }
1449
+ case 6: {
1450
+ message.masterAutomationLevel = reader.float();
1451
+ break;
1452
+ }
1453
+ case 7: {
1454
+ if (!(message.masterPlugins && message.masterPlugins.length))
1455
+ message.masterPlugins = [];
1456
+ message.masterPlugins.push($root.sesame.v1.audio.AudioPlugin.decode(reader, reader.uint32()));
1457
+ break;
1458
+ }
1185
1459
  default:
1186
1460
  reader.skipType(tag & 7);
1187
1461
  break;
@@ -1197,6 +1471,7 @@ var sesame = $root.sesame = (() => {
1197
1471
  AudioMixerConfig.verify = function verify(message) {
1198
1472
  if (typeof message !== "object" || message === null)
1199
1473
  return "object expected";
1474
+ let properties = {};
1200
1475
  if (message.channels != null && message.hasOwnProperty("channels")) {
1201
1476
  if (!Array.isArray(message.channels))
1202
1477
  return "channels: array expected";
@@ -1219,6 +1494,34 @@ var sesame = $root.sesame = (() => {
1219
1494
  if (!$util.isInteger(message.order))
1220
1495
  return "order: integer expected";
1221
1496
  }
1497
+ if (message.outputs != null && message.hasOwnProperty("outputs")) {
1498
+ if (!Array.isArray(message.outputs))
1499
+ return "outputs: array expected";
1500
+ for (let i = 0; i < message.outputs.length; ++i) {
1501
+ let error = $root.sesame.v1.audio.AudioMixerOutput.verify(message.outputs[i]);
1502
+ if (error)
1503
+ return "outputs." + error;
1504
+ }
1505
+ }
1506
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel")) {
1507
+ properties._masterLevel = 1;
1508
+ if (typeof message.masterLevel !== "number")
1509
+ return "masterLevel: number expected";
1510
+ }
1511
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel")) {
1512
+ properties._masterAutomationLevel = 1;
1513
+ if (typeof message.masterAutomationLevel !== "number")
1514
+ return "masterAutomationLevel: number expected";
1515
+ }
1516
+ if (message.masterPlugins != null && message.hasOwnProperty("masterPlugins")) {
1517
+ if (!Array.isArray(message.masterPlugins))
1518
+ return "masterPlugins: array expected";
1519
+ for (let i = 0; i < message.masterPlugins.length; ++i) {
1520
+ let error = $root.sesame.v1.audio.AudioPlugin.verify(message.masterPlugins[i]);
1521
+ if (error)
1522
+ return "masterPlugins." + error;
1523
+ }
1524
+ }
1222
1525
  return null;
1223
1526
  };
1224
1527
  AudioMixerConfig.fromObject = function fromObject(object) {
@@ -1257,14 +1560,41 @@ var sesame = $root.sesame = (() => {
1257
1560
  }
1258
1561
  if (object.order != null)
1259
1562
  message.order = object.order >>> 0;
1563
+ if (object.outputs) {
1564
+ if (!Array.isArray(object.outputs))
1565
+ throw TypeError(".sesame.v1.audio.AudioMixerConfig.outputs: array expected");
1566
+ message.outputs = [];
1567
+ for (let i = 0; i < object.outputs.length; ++i) {
1568
+ if (typeof object.outputs[i] !== "object")
1569
+ throw TypeError(".sesame.v1.audio.AudioMixerConfig.outputs: object expected");
1570
+ message.outputs[i] = $root.sesame.v1.audio.AudioMixerOutput.fromObject(object.outputs[i]);
1571
+ }
1572
+ }
1573
+ if (object.masterLevel != null)
1574
+ message.masterLevel = Number(object.masterLevel);
1575
+ if (object.masterAutomationLevel != null)
1576
+ message.masterAutomationLevel = Number(object.masterAutomationLevel);
1577
+ if (object.masterPlugins) {
1578
+ if (!Array.isArray(object.masterPlugins))
1579
+ throw TypeError(".sesame.v1.audio.AudioMixerConfig.masterPlugins: array expected");
1580
+ message.masterPlugins = [];
1581
+ for (let i = 0; i < object.masterPlugins.length; ++i) {
1582
+ if (typeof object.masterPlugins[i] !== "object")
1583
+ throw TypeError(".sesame.v1.audio.AudioMixerConfig.masterPlugins: object expected");
1584
+ message.masterPlugins[i] = $root.sesame.v1.audio.AudioPlugin.fromObject(object.masterPlugins[i]);
1585
+ }
1586
+ }
1260
1587
  return message;
1261
1588
  };
1262
1589
  AudioMixerConfig.toObject = function toObject(message, options) {
1263
1590
  if (!options)
1264
1591
  options = {};
1265
1592
  let object = {};
1266
- if (options.arrays || options.defaults)
1593
+ if (options.arrays || options.defaults) {
1267
1594
  object.channels = [];
1595
+ object.outputs = [];
1596
+ object.masterPlugins = [];
1597
+ }
1268
1598
  if (options.defaults) {
1269
1599
  object.outputType = options.enums === String ? "AUDIO_MIXER_CHANNEL_TYPE_UNSPECIFIED" : 0;
1270
1600
  object.order = 0;
@@ -1278,6 +1608,26 @@ var sesame = $root.sesame = (() => {
1278
1608
  object.outputType = options.enums === String ? $root.sesame.v1.audio.AudioMixerChannelType[message.outputType] === void 0 ? message.outputType : $root.sesame.v1.audio.AudioMixerChannelType[message.outputType] : message.outputType;
1279
1609
  if (message.order != null && message.hasOwnProperty("order"))
1280
1610
  object.order = message.order;
1611
+ if (message.outputs && message.outputs.length) {
1612
+ object.outputs = [];
1613
+ for (let j = 0; j < message.outputs.length; ++j)
1614
+ object.outputs[j] = $root.sesame.v1.audio.AudioMixerOutput.toObject(message.outputs[j], options);
1615
+ }
1616
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel")) {
1617
+ object.masterLevel = options.json && !isFinite(message.masterLevel) ? String(message.masterLevel) : message.masterLevel;
1618
+ if (options.oneofs)
1619
+ object._masterLevel = "masterLevel";
1620
+ }
1621
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel")) {
1622
+ object.masterAutomationLevel = options.json && !isFinite(message.masterAutomationLevel) ? String(message.masterAutomationLevel) : message.masterAutomationLevel;
1623
+ if (options.oneofs)
1624
+ object._masterAutomationLevel = "masterAutomationLevel";
1625
+ }
1626
+ if (message.masterPlugins && message.masterPlugins.length) {
1627
+ object.masterPlugins = [];
1628
+ for (let j = 0; j < message.masterPlugins.length; ++j)
1629
+ object.masterPlugins[j] = $root.sesame.v1.audio.AudioPlugin.toObject(message.masterPlugins[j], options);
1630
+ }
1281
1631
  return object;
1282
1632
  };
1283
1633
  AudioMixerConfig.prototype.toJSON = function toJSON() {
@@ -1989,6 +2339,11 @@ var sesame = $root.sesame = (() => {
1989
2339
  AudioChannelStatus.prototype.hasData = false;
1990
2340
  AudioChannelStatus.prototype.readErrors = 0;
1991
2341
  AudioChannelStatus.prototype.plugins = $util.emptyArray;
2342
+ AudioChannelStatus.prototype.mute = false;
2343
+ AudioChannelStatus.prototype.automationLevel = 0;
2344
+ AudioChannelStatus.prototype.automationMute = false;
2345
+ AudioChannelStatus.prototype.effectiveLevel = 0;
2346
+ AudioChannelStatus.prototype.effectiveMute = false;
1992
2347
  AudioChannelStatus.create = function create(properties) {
1993
2348
  return new AudioChannelStatus(properties);
1994
2349
  };
@@ -2040,6 +2395,31 @@ var sesame = $root.sesame = (() => {
2040
2395
  /* id 8, wireType 2 =*/
2041
2396
  66
2042
2397
  ).fork()).ldelim();
2398
+ if (message.mute != null && Object.hasOwnProperty.call(message, "mute"))
2399
+ writer.uint32(
2400
+ /* id 9, wireType 0 =*/
2401
+ 72
2402
+ ).bool(message.mute);
2403
+ if (message.automationLevel != null && Object.hasOwnProperty.call(message, "automationLevel"))
2404
+ writer.uint32(
2405
+ /* id 10, wireType 5 =*/
2406
+ 85
2407
+ ).float(message.automationLevel);
2408
+ if (message.automationMute != null && Object.hasOwnProperty.call(message, "automationMute"))
2409
+ writer.uint32(
2410
+ /* id 11, wireType 0 =*/
2411
+ 88
2412
+ ).bool(message.automationMute);
2413
+ if (message.effectiveLevel != null && Object.hasOwnProperty.call(message, "effectiveLevel"))
2414
+ writer.uint32(
2415
+ /* id 12, wireType 5 =*/
2416
+ 101
2417
+ ).float(message.effectiveLevel);
2418
+ if (message.effectiveMute != null && Object.hasOwnProperty.call(message, "effectiveMute"))
2419
+ writer.uint32(
2420
+ /* id 13, wireType 0 =*/
2421
+ 104
2422
+ ).bool(message.effectiveMute);
2043
2423
  return writer;
2044
2424
  };
2045
2425
  AudioChannelStatus.encodeDelimited = function encodeDelimited(message, writer) {
@@ -2095,6 +2475,26 @@ var sesame = $root.sesame = (() => {
2095
2475
  message.plugins.push($root.sesame.v1.audio.AudioChannelPluginStatus.decode(reader, reader.uint32()));
2096
2476
  break;
2097
2477
  }
2478
+ case 9: {
2479
+ message.mute = reader.bool();
2480
+ break;
2481
+ }
2482
+ case 10: {
2483
+ message.automationLevel = reader.float();
2484
+ break;
2485
+ }
2486
+ case 11: {
2487
+ message.automationMute = reader.bool();
2488
+ break;
2489
+ }
2490
+ case 12: {
2491
+ message.effectiveLevel = reader.float();
2492
+ break;
2493
+ }
2494
+ case 13: {
2495
+ message.effectiveMute = reader.bool();
2496
+ break;
2497
+ }
2098
2498
  default:
2099
2499
  reader.skipType(tag & 7);
2100
2500
  break;
@@ -2155,6 +2555,26 @@ var sesame = $root.sesame = (() => {
2155
2555
  return "plugins." + error;
2156
2556
  }
2157
2557
  }
2558
+ if (message.mute != null && message.hasOwnProperty("mute")) {
2559
+ if (typeof message.mute !== "boolean")
2560
+ return "mute: boolean expected";
2561
+ }
2562
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel")) {
2563
+ if (typeof message.automationLevel !== "number")
2564
+ return "automationLevel: number expected";
2565
+ }
2566
+ if (message.automationMute != null && message.hasOwnProperty("automationMute")) {
2567
+ if (typeof message.automationMute !== "boolean")
2568
+ return "automationMute: boolean expected";
2569
+ }
2570
+ if (message.effectiveLevel != null && message.hasOwnProperty("effectiveLevel")) {
2571
+ if (typeof message.effectiveLevel !== "number")
2572
+ return "effectiveLevel: number expected";
2573
+ }
2574
+ if (message.effectiveMute != null && message.hasOwnProperty("effectiveMute")) {
2575
+ if (typeof message.effectiveMute !== "boolean")
2576
+ return "effectiveMute: boolean expected";
2577
+ }
2158
2578
  return null;
2159
2579
  };
2160
2580
  AudioChannelStatus.fromObject = function fromObject(object) {
@@ -2208,6 +2628,16 @@ var sesame = $root.sesame = (() => {
2208
2628
  message.plugins[i] = $root.sesame.v1.audio.AudioChannelPluginStatus.fromObject(object.plugins[i]);
2209
2629
  }
2210
2630
  }
2631
+ if (object.mute != null)
2632
+ message.mute = Boolean(object.mute);
2633
+ if (object.automationLevel != null)
2634
+ message.automationLevel = Number(object.automationLevel);
2635
+ if (object.automationMute != null)
2636
+ message.automationMute = Boolean(object.automationMute);
2637
+ if (object.effectiveLevel != null)
2638
+ message.effectiveLevel = Number(object.effectiveLevel);
2639
+ if (object.effectiveMute != null)
2640
+ message.effectiveMute = Boolean(object.effectiveMute);
2211
2641
  return message;
2212
2642
  };
2213
2643
  AudioChannelStatus.toObject = function toObject(message, options) {
@@ -2225,6 +2655,11 @@ var sesame = $root.sesame = (() => {
2225
2655
  object.pan = 0;
2226
2656
  object.hasData = false;
2227
2657
  object.readErrors = 0;
2658
+ object.mute = false;
2659
+ object.automationLevel = 0;
2660
+ object.automationMute = false;
2661
+ object.effectiveLevel = 0;
2662
+ object.effectiveMute = false;
2228
2663
  }
2229
2664
  if (message.id != null && message.hasOwnProperty("id"))
2230
2665
  object.id = message.id;
@@ -2248,6 +2683,16 @@ var sesame = $root.sesame = (() => {
2248
2683
  for (let j = 0; j < message.plugins.length; ++j)
2249
2684
  object.plugins[j] = $root.sesame.v1.audio.AudioChannelPluginStatus.toObject(message.plugins[j], options);
2250
2685
  }
2686
+ if (message.mute != null && message.hasOwnProperty("mute"))
2687
+ object.mute = message.mute;
2688
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel"))
2689
+ object.automationLevel = options.json && !isFinite(message.automationLevel) ? String(message.automationLevel) : message.automationLevel;
2690
+ if (message.automationMute != null && message.hasOwnProperty("automationMute"))
2691
+ object.automationMute = message.automationMute;
2692
+ if (message.effectiveLevel != null && message.hasOwnProperty("effectiveLevel"))
2693
+ object.effectiveLevel = options.json && !isFinite(message.effectiveLevel) ? String(message.effectiveLevel) : message.effectiveLevel;
2694
+ if (message.effectiveMute != null && message.hasOwnProperty("effectiveMute"))
2695
+ object.effectiveMute = message.effectiveMute;
2251
2696
  return object;
2252
2697
  };
2253
2698
  AudioChannelStatus.prototype.toJSON = function toJSON() {
@@ -2261,24 +2706,25 @@ var sesame = $root.sesame = (() => {
2261
2706
  };
2262
2707
  return AudioChannelStatus;
2263
2708
  }();
2264
- audio.AudioMixerStatus = function() {
2265
- function AudioMixerStatus(properties) {
2709
+ audio.AudioMixerOutputStatus = function() {
2710
+ function AudioMixerOutputStatus(properties) {
2266
2711
  this.vu = [];
2267
- this.channels = [];
2712
+ this.excludedChannelIds = [];
2268
2713
  if (properties) {
2269
2714
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2270
2715
  if (properties[keys[i]] != null)
2271
2716
  this[keys[i]] = properties[keys[i]];
2272
2717
  }
2273
2718
  }
2274
- AudioMixerStatus.prototype.id = "";
2275
- AudioMixerStatus.prototype.outputType = 0;
2276
- AudioMixerStatus.prototype.vu = $util.emptyArray;
2277
- AudioMixerStatus.prototype.channels = $util.emptyArray;
2278
- AudioMixerStatus.create = function create(properties) {
2279
- return new AudioMixerStatus(properties);
2280
- };
2281
- AudioMixerStatus.encode = function encode(message, writer) {
2719
+ AudioMixerOutputStatus.prototype.id = "";
2720
+ AudioMixerOutputStatus.prototype.outputType = 0;
2721
+ AudioMixerOutputStatus.prototype.vu = $util.emptyArray;
2722
+ AudioMixerOutputStatus.prototype.excludedChannelIds = $util.emptyArray;
2723
+ AudioMixerOutputStatus.prototype.includeMasterPlugins = false;
2724
+ AudioMixerOutputStatus.create = function create(properties) {
2725
+ return new AudioMixerOutputStatus(properties);
2726
+ };
2727
+ AudioMixerOutputStatus.encode = function encode(message, writer) {
2282
2728
  if (!writer)
2283
2729
  writer = $Writer.create();
2284
2730
  if (message.id != null && Object.hasOwnProperty.call(message, "id"))
@@ -2300,21 +2746,26 @@ var sesame = $root.sesame = (() => {
2300
2746
  writer.float(message.vu[i]);
2301
2747
  writer.ldelim();
2302
2748
  }
2303
- if (message.channels != null && message.channels.length)
2304
- for (let i = 0; i < message.channels.length; ++i)
2305
- $root.sesame.v1.audio.AudioChannelStatus.encode(message.channels[i], writer.uint32(
2749
+ if (message.excludedChannelIds != null && message.excludedChannelIds.length)
2750
+ for (let i = 0; i < message.excludedChannelIds.length; ++i)
2751
+ writer.uint32(
2306
2752
  /* id 4, wireType 2 =*/
2307
2753
  34
2308
- ).fork()).ldelim();
2754
+ ).string(message.excludedChannelIds[i]);
2755
+ if (message.includeMasterPlugins != null && Object.hasOwnProperty.call(message, "includeMasterPlugins"))
2756
+ writer.uint32(
2757
+ /* id 5, wireType 0 =*/
2758
+ 40
2759
+ ).bool(message.includeMasterPlugins);
2309
2760
  return writer;
2310
2761
  };
2311
- AudioMixerStatus.encodeDelimited = function encodeDelimited(message, writer) {
2762
+ AudioMixerOutputStatus.encodeDelimited = function encodeDelimited(message, writer) {
2312
2763
  return this.encode(message, writer).ldelim();
2313
2764
  };
2314
- AudioMixerStatus.decode = function decode(reader, length, error) {
2765
+ AudioMixerOutputStatus.decode = function decode(reader, length, error) {
2315
2766
  if (!(reader instanceof $Reader))
2316
2767
  reader = $Reader.create(reader);
2317
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.audio.AudioMixerStatus();
2768
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.audio.AudioMixerOutputStatus();
2318
2769
  while (reader.pos < end) {
2319
2770
  let tag = reader.uint32();
2320
2771
  if (tag === error)
@@ -2340,9 +2791,13 @@ var sesame = $root.sesame = (() => {
2340
2791
  break;
2341
2792
  }
2342
2793
  case 4: {
2343
- if (!(message.channels && message.channels.length))
2344
- message.channels = [];
2345
- message.channels.push($root.sesame.v1.audio.AudioChannelStatus.decode(reader, reader.uint32()));
2794
+ if (!(message.excludedChannelIds && message.excludedChannelIds.length))
2795
+ message.excludedChannelIds = [];
2796
+ message.excludedChannelIds.push(reader.string());
2797
+ break;
2798
+ }
2799
+ case 5: {
2800
+ message.includeMasterPlugins = reader.bool();
2346
2801
  break;
2347
2802
  }
2348
2803
  default:
@@ -2352,12 +2807,12 @@ var sesame = $root.sesame = (() => {
2352
2807
  }
2353
2808
  return message;
2354
2809
  };
2355
- AudioMixerStatus.decodeDelimited = function decodeDelimited(reader) {
2810
+ AudioMixerOutputStatus.decodeDelimited = function decodeDelimited(reader) {
2356
2811
  if (!(reader instanceof $Reader))
2357
2812
  reader = new $Reader(reader);
2358
2813
  return this.decode(reader, reader.uint32());
2359
2814
  };
2360
- AudioMixerStatus.verify = function verify(message) {
2815
+ AudioMixerOutputStatus.verify = function verify(message) {
2361
2816
  if (typeof message !== "object" || message === null)
2362
2817
  return "object expected";
2363
2818
  if (message.id != null && message.hasOwnProperty("id")) {
@@ -2380,15 +2835,321 @@ var sesame = $root.sesame = (() => {
2380
2835
  if (typeof message.vu[i] !== "number")
2381
2836
  return "vu: number[] expected";
2382
2837
  }
2383
- if (message.channels != null && message.hasOwnProperty("channels")) {
2384
- if (!Array.isArray(message.channels))
2385
- return "channels: array expected";
2386
- for (let i = 0; i < message.channels.length; ++i) {
2387
- let error = $root.sesame.v1.audio.AudioChannelStatus.verify(message.channels[i]);
2838
+ if (message.excludedChannelIds != null && message.hasOwnProperty("excludedChannelIds")) {
2839
+ if (!Array.isArray(message.excludedChannelIds))
2840
+ return "excludedChannelIds: array expected";
2841
+ for (let i = 0; i < message.excludedChannelIds.length; ++i)
2842
+ if (!$util.isString(message.excludedChannelIds[i]))
2843
+ return "excludedChannelIds: string[] expected";
2844
+ }
2845
+ if (message.includeMasterPlugins != null && message.hasOwnProperty("includeMasterPlugins")) {
2846
+ if (typeof message.includeMasterPlugins !== "boolean")
2847
+ return "includeMasterPlugins: boolean expected";
2848
+ }
2849
+ return null;
2850
+ };
2851
+ AudioMixerOutputStatus.fromObject = function fromObject(object) {
2852
+ if (object instanceof $root.sesame.v1.audio.AudioMixerOutputStatus)
2853
+ return object;
2854
+ let message = new $root.sesame.v1.audio.AudioMixerOutputStatus();
2855
+ if (object.id != null)
2856
+ message.id = String(object.id);
2857
+ switch (object.outputType) {
2858
+ default:
2859
+ if (typeof object.outputType === "number") {
2860
+ message.outputType = object.outputType;
2861
+ break;
2862
+ }
2863
+ break;
2864
+ case "AUDIO_MIXER_CHANNEL_TYPE_UNSPECIFIED":
2865
+ case 0:
2866
+ message.outputType = 0;
2867
+ break;
2868
+ case "AUDIO_MIXER_CHANNEL_TYPE_MONO":
2869
+ case 1:
2870
+ message.outputType = 1;
2871
+ break;
2872
+ case "AUDIO_MIXER_CHANNEL_TYPE_STEREO":
2873
+ case 2:
2874
+ message.outputType = 2;
2875
+ break;
2876
+ }
2877
+ if (object.vu) {
2878
+ if (!Array.isArray(object.vu))
2879
+ throw TypeError(".sesame.v1.audio.AudioMixerOutputStatus.vu: array expected");
2880
+ message.vu = [];
2881
+ for (let i = 0; i < object.vu.length; ++i)
2882
+ message.vu[i] = Number(object.vu[i]);
2883
+ }
2884
+ if (object.excludedChannelIds) {
2885
+ if (!Array.isArray(object.excludedChannelIds))
2886
+ throw TypeError(".sesame.v1.audio.AudioMixerOutputStatus.excludedChannelIds: array expected");
2887
+ message.excludedChannelIds = [];
2888
+ for (let i = 0; i < object.excludedChannelIds.length; ++i)
2889
+ message.excludedChannelIds[i] = String(object.excludedChannelIds[i]);
2890
+ }
2891
+ if (object.includeMasterPlugins != null)
2892
+ message.includeMasterPlugins = Boolean(object.includeMasterPlugins);
2893
+ return message;
2894
+ };
2895
+ AudioMixerOutputStatus.toObject = function toObject(message, options) {
2896
+ if (!options)
2897
+ options = {};
2898
+ let object = {};
2899
+ if (options.arrays || options.defaults) {
2900
+ object.vu = [];
2901
+ object.excludedChannelIds = [];
2902
+ }
2903
+ if (options.defaults) {
2904
+ object.id = "";
2905
+ object.outputType = options.enums === String ? "AUDIO_MIXER_CHANNEL_TYPE_UNSPECIFIED" : 0;
2906
+ object.includeMasterPlugins = false;
2907
+ }
2908
+ if (message.id != null && message.hasOwnProperty("id"))
2909
+ object.id = message.id;
2910
+ if (message.outputType != null && message.hasOwnProperty("outputType"))
2911
+ object.outputType = options.enums === String ? $root.sesame.v1.audio.AudioMixerChannelType[message.outputType] === void 0 ? message.outputType : $root.sesame.v1.audio.AudioMixerChannelType[message.outputType] : message.outputType;
2912
+ if (message.vu && message.vu.length) {
2913
+ object.vu = [];
2914
+ for (let j = 0; j < message.vu.length; ++j)
2915
+ object.vu[j] = options.json && !isFinite(message.vu[j]) ? String(message.vu[j]) : message.vu[j];
2916
+ }
2917
+ if (message.excludedChannelIds && message.excludedChannelIds.length) {
2918
+ object.excludedChannelIds = [];
2919
+ for (let j = 0; j < message.excludedChannelIds.length; ++j)
2920
+ object.excludedChannelIds[j] = message.excludedChannelIds[j];
2921
+ }
2922
+ if (message.includeMasterPlugins != null && message.hasOwnProperty("includeMasterPlugins"))
2923
+ object.includeMasterPlugins = message.includeMasterPlugins;
2924
+ return object;
2925
+ };
2926
+ AudioMixerOutputStatus.prototype.toJSON = function toJSON() {
2927
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2928
+ };
2929
+ AudioMixerOutputStatus.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
2930
+ if (typeUrlPrefix === void 0) {
2931
+ typeUrlPrefix = "type.googleapis.com";
2932
+ }
2933
+ return typeUrlPrefix + "/sesame.v1.audio.AudioMixerOutputStatus";
2934
+ };
2935
+ return AudioMixerOutputStatus;
2936
+ }();
2937
+ audio.AudioMixerStatus = function() {
2938
+ function AudioMixerStatus(properties) {
2939
+ this.vu = [];
2940
+ this.channels = [];
2941
+ this.masterPlugins = [];
2942
+ this.outputs = [];
2943
+ if (properties) {
2944
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2945
+ if (properties[keys[i]] != null)
2946
+ this[keys[i]] = properties[keys[i]];
2947
+ }
2948
+ }
2949
+ AudioMixerStatus.prototype.id = "";
2950
+ AudioMixerStatus.prototype.outputType = 0;
2951
+ AudioMixerStatus.prototype.vu = $util.emptyArray;
2952
+ AudioMixerStatus.prototype.channels = $util.emptyArray;
2953
+ AudioMixerStatus.prototype.masterLevel = 0;
2954
+ AudioMixerStatus.prototype.masterAutomationLevel = 0;
2955
+ AudioMixerStatus.prototype.masterEffectiveLevel = 0;
2956
+ AudioMixerStatus.prototype.masterPlugins = $util.emptyArray;
2957
+ AudioMixerStatus.prototype.outputs = $util.emptyArray;
2958
+ AudioMixerStatus.create = function create(properties) {
2959
+ return new AudioMixerStatus(properties);
2960
+ };
2961
+ AudioMixerStatus.encode = function encode(message, writer) {
2962
+ if (!writer)
2963
+ writer = $Writer.create();
2964
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
2965
+ writer.uint32(
2966
+ /* id 1, wireType 2 =*/
2967
+ 10
2968
+ ).string(message.id);
2969
+ if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType"))
2970
+ writer.uint32(
2971
+ /* id 2, wireType 0 =*/
2972
+ 16
2973
+ ).int32(message.outputType);
2974
+ if (message.vu != null && message.vu.length) {
2975
+ writer.uint32(
2976
+ /* id 3, wireType 2 =*/
2977
+ 26
2978
+ ).fork();
2979
+ for (let i = 0; i < message.vu.length; ++i)
2980
+ writer.float(message.vu[i]);
2981
+ writer.ldelim();
2982
+ }
2983
+ if (message.channels != null && message.channels.length)
2984
+ for (let i = 0; i < message.channels.length; ++i)
2985
+ $root.sesame.v1.audio.AudioChannelStatus.encode(message.channels[i], writer.uint32(
2986
+ /* id 4, wireType 2 =*/
2987
+ 34
2988
+ ).fork()).ldelim();
2989
+ if (message.masterLevel != null && Object.hasOwnProperty.call(message, "masterLevel"))
2990
+ writer.uint32(
2991
+ /* id 5, wireType 5 =*/
2992
+ 45
2993
+ ).float(message.masterLevel);
2994
+ if (message.masterAutomationLevel != null && Object.hasOwnProperty.call(message, "masterAutomationLevel"))
2995
+ writer.uint32(
2996
+ /* id 6, wireType 5 =*/
2997
+ 53
2998
+ ).float(message.masterAutomationLevel);
2999
+ if (message.masterEffectiveLevel != null && Object.hasOwnProperty.call(message, "masterEffectiveLevel"))
3000
+ writer.uint32(
3001
+ /* id 7, wireType 5 =*/
3002
+ 61
3003
+ ).float(message.masterEffectiveLevel);
3004
+ if (message.masterPlugins != null && message.masterPlugins.length)
3005
+ for (let i = 0; i < message.masterPlugins.length; ++i)
3006
+ $root.sesame.v1.audio.AudioChannelPluginStatus.encode(message.masterPlugins[i], writer.uint32(
3007
+ /* id 8, wireType 2 =*/
3008
+ 66
3009
+ ).fork()).ldelim();
3010
+ if (message.outputs != null && message.outputs.length)
3011
+ for (let i = 0; i < message.outputs.length; ++i)
3012
+ $root.sesame.v1.audio.AudioMixerOutputStatus.encode(message.outputs[i], writer.uint32(
3013
+ /* id 9, wireType 2 =*/
3014
+ 74
3015
+ ).fork()).ldelim();
3016
+ return writer;
3017
+ };
3018
+ AudioMixerStatus.encodeDelimited = function encodeDelimited(message, writer) {
3019
+ return this.encode(message, writer).ldelim();
3020
+ };
3021
+ AudioMixerStatus.decode = function decode(reader, length, error) {
3022
+ if (!(reader instanceof $Reader))
3023
+ reader = $Reader.create(reader);
3024
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.audio.AudioMixerStatus();
3025
+ while (reader.pos < end) {
3026
+ let tag = reader.uint32();
3027
+ if (tag === error)
3028
+ break;
3029
+ switch (tag >>> 3) {
3030
+ case 1: {
3031
+ message.id = reader.string();
3032
+ break;
3033
+ }
3034
+ case 2: {
3035
+ message.outputType = reader.int32();
3036
+ break;
3037
+ }
3038
+ case 3: {
3039
+ if (!(message.vu && message.vu.length))
3040
+ message.vu = [];
3041
+ if ((tag & 7) === 2) {
3042
+ let end2 = reader.uint32() + reader.pos;
3043
+ while (reader.pos < end2)
3044
+ message.vu.push(reader.float());
3045
+ } else
3046
+ message.vu.push(reader.float());
3047
+ break;
3048
+ }
3049
+ case 4: {
3050
+ if (!(message.channels && message.channels.length))
3051
+ message.channels = [];
3052
+ message.channels.push($root.sesame.v1.audio.AudioChannelStatus.decode(reader, reader.uint32()));
3053
+ break;
3054
+ }
3055
+ case 5: {
3056
+ message.masterLevel = reader.float();
3057
+ break;
3058
+ }
3059
+ case 6: {
3060
+ message.masterAutomationLevel = reader.float();
3061
+ break;
3062
+ }
3063
+ case 7: {
3064
+ message.masterEffectiveLevel = reader.float();
3065
+ break;
3066
+ }
3067
+ case 8: {
3068
+ if (!(message.masterPlugins && message.masterPlugins.length))
3069
+ message.masterPlugins = [];
3070
+ message.masterPlugins.push($root.sesame.v1.audio.AudioChannelPluginStatus.decode(reader, reader.uint32()));
3071
+ break;
3072
+ }
3073
+ case 9: {
3074
+ if (!(message.outputs && message.outputs.length))
3075
+ message.outputs = [];
3076
+ message.outputs.push($root.sesame.v1.audio.AudioMixerOutputStatus.decode(reader, reader.uint32()));
3077
+ break;
3078
+ }
3079
+ default:
3080
+ reader.skipType(tag & 7);
3081
+ break;
3082
+ }
3083
+ }
3084
+ return message;
3085
+ };
3086
+ AudioMixerStatus.decodeDelimited = function decodeDelimited(reader) {
3087
+ if (!(reader instanceof $Reader))
3088
+ reader = new $Reader(reader);
3089
+ return this.decode(reader, reader.uint32());
3090
+ };
3091
+ AudioMixerStatus.verify = function verify(message) {
3092
+ if (typeof message !== "object" || message === null)
3093
+ return "object expected";
3094
+ if (message.id != null && message.hasOwnProperty("id")) {
3095
+ if (!$util.isString(message.id))
3096
+ return "id: string expected";
3097
+ }
3098
+ if (message.outputType != null && message.hasOwnProperty("outputType"))
3099
+ switch (message.outputType) {
3100
+ default:
3101
+ return "outputType: enum value expected";
3102
+ case 0:
3103
+ case 1:
3104
+ case 2:
3105
+ break;
3106
+ }
3107
+ if (message.vu != null && message.hasOwnProperty("vu")) {
3108
+ if (!Array.isArray(message.vu))
3109
+ return "vu: array expected";
3110
+ for (let i = 0; i < message.vu.length; ++i)
3111
+ if (typeof message.vu[i] !== "number")
3112
+ return "vu: number[] expected";
3113
+ }
3114
+ if (message.channels != null && message.hasOwnProperty("channels")) {
3115
+ if (!Array.isArray(message.channels))
3116
+ return "channels: array expected";
3117
+ for (let i = 0; i < message.channels.length; ++i) {
3118
+ let error = $root.sesame.v1.audio.AudioChannelStatus.verify(message.channels[i]);
2388
3119
  if (error)
2389
3120
  return "channels." + error;
2390
3121
  }
2391
3122
  }
3123
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel")) {
3124
+ if (typeof message.masterLevel !== "number")
3125
+ return "masterLevel: number expected";
3126
+ }
3127
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel")) {
3128
+ if (typeof message.masterAutomationLevel !== "number")
3129
+ return "masterAutomationLevel: number expected";
3130
+ }
3131
+ if (message.masterEffectiveLevel != null && message.hasOwnProperty("masterEffectiveLevel")) {
3132
+ if (typeof message.masterEffectiveLevel !== "number")
3133
+ return "masterEffectiveLevel: number expected";
3134
+ }
3135
+ if (message.masterPlugins != null && message.hasOwnProperty("masterPlugins")) {
3136
+ if (!Array.isArray(message.masterPlugins))
3137
+ return "masterPlugins: array expected";
3138
+ for (let i = 0; i < message.masterPlugins.length; ++i) {
3139
+ let error = $root.sesame.v1.audio.AudioChannelPluginStatus.verify(message.masterPlugins[i]);
3140
+ if (error)
3141
+ return "masterPlugins." + error;
3142
+ }
3143
+ }
3144
+ if (message.outputs != null && message.hasOwnProperty("outputs")) {
3145
+ if (!Array.isArray(message.outputs))
3146
+ return "outputs: array expected";
3147
+ for (let i = 0; i < message.outputs.length; ++i) {
3148
+ let error = $root.sesame.v1.audio.AudioMixerOutputStatus.verify(message.outputs[i]);
3149
+ if (error)
3150
+ return "outputs." + error;
3151
+ }
3152
+ }
2392
3153
  return null;
2393
3154
  };
2394
3155
  AudioMixerStatus.fromObject = function fromObject(object) {
@@ -2434,6 +3195,32 @@ var sesame = $root.sesame = (() => {
2434
3195
  message.channels[i] = $root.sesame.v1.audio.AudioChannelStatus.fromObject(object.channels[i]);
2435
3196
  }
2436
3197
  }
3198
+ if (object.masterLevel != null)
3199
+ message.masterLevel = Number(object.masterLevel);
3200
+ if (object.masterAutomationLevel != null)
3201
+ message.masterAutomationLevel = Number(object.masterAutomationLevel);
3202
+ if (object.masterEffectiveLevel != null)
3203
+ message.masterEffectiveLevel = Number(object.masterEffectiveLevel);
3204
+ if (object.masterPlugins) {
3205
+ if (!Array.isArray(object.masterPlugins))
3206
+ throw TypeError(".sesame.v1.audio.AudioMixerStatus.masterPlugins: array expected");
3207
+ message.masterPlugins = [];
3208
+ for (let i = 0; i < object.masterPlugins.length; ++i) {
3209
+ if (typeof object.masterPlugins[i] !== "object")
3210
+ throw TypeError(".sesame.v1.audio.AudioMixerStatus.masterPlugins: object expected");
3211
+ message.masterPlugins[i] = $root.sesame.v1.audio.AudioChannelPluginStatus.fromObject(object.masterPlugins[i]);
3212
+ }
3213
+ }
3214
+ if (object.outputs) {
3215
+ if (!Array.isArray(object.outputs))
3216
+ throw TypeError(".sesame.v1.audio.AudioMixerStatus.outputs: array expected");
3217
+ message.outputs = [];
3218
+ for (let i = 0; i < object.outputs.length; ++i) {
3219
+ if (typeof object.outputs[i] !== "object")
3220
+ throw TypeError(".sesame.v1.audio.AudioMixerStatus.outputs: object expected");
3221
+ message.outputs[i] = $root.sesame.v1.audio.AudioMixerOutputStatus.fromObject(object.outputs[i]);
3222
+ }
3223
+ }
2437
3224
  return message;
2438
3225
  };
2439
3226
  AudioMixerStatus.toObject = function toObject(message, options) {
@@ -2443,10 +3230,15 @@ var sesame = $root.sesame = (() => {
2443
3230
  if (options.arrays || options.defaults) {
2444
3231
  object.vu = [];
2445
3232
  object.channels = [];
3233
+ object.masterPlugins = [];
3234
+ object.outputs = [];
2446
3235
  }
2447
3236
  if (options.defaults) {
2448
3237
  object.id = "";
2449
3238
  object.outputType = options.enums === String ? "AUDIO_MIXER_CHANNEL_TYPE_UNSPECIFIED" : 0;
3239
+ object.masterLevel = 0;
3240
+ object.masterAutomationLevel = 0;
3241
+ object.masterEffectiveLevel = 0;
2450
3242
  }
2451
3243
  if (message.id != null && message.hasOwnProperty("id"))
2452
3244
  object.id = message.id;
@@ -2462,6 +3254,22 @@ var sesame = $root.sesame = (() => {
2462
3254
  for (let j = 0; j < message.channels.length; ++j)
2463
3255
  object.channels[j] = $root.sesame.v1.audio.AudioChannelStatus.toObject(message.channels[j], options);
2464
3256
  }
3257
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel"))
3258
+ object.masterLevel = options.json && !isFinite(message.masterLevel) ? String(message.masterLevel) : message.masterLevel;
3259
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel"))
3260
+ object.masterAutomationLevel = options.json && !isFinite(message.masterAutomationLevel) ? String(message.masterAutomationLevel) : message.masterAutomationLevel;
3261
+ if (message.masterEffectiveLevel != null && message.hasOwnProperty("masterEffectiveLevel"))
3262
+ object.masterEffectiveLevel = options.json && !isFinite(message.masterEffectiveLevel) ? String(message.masterEffectiveLevel) : message.masterEffectiveLevel;
3263
+ if (message.masterPlugins && message.masterPlugins.length) {
3264
+ object.masterPlugins = [];
3265
+ for (let j = 0; j < message.masterPlugins.length; ++j)
3266
+ object.masterPlugins[j] = $root.sesame.v1.audio.AudioChannelPluginStatus.toObject(message.masterPlugins[j], options);
3267
+ }
3268
+ if (message.outputs && message.outputs.length) {
3269
+ object.outputs = [];
3270
+ for (let j = 0; j < message.outputs.length; ++j)
3271
+ object.outputs[j] = $root.sesame.v1.audio.AudioMixerOutputStatus.toObject(message.outputs[j], options);
3272
+ }
2465
3273
  return object;
2466
3274
  };
2467
3275
  AudioMixerStatus.prototype.toJSON = function toJSON() {
@@ -2616,6 +3424,9 @@ var sesame = $root.sesame = (() => {
2616
3424
  AudioChannelControlRequest.prototype.level = null;
2617
3425
  AudioChannelControlRequest.prototype.pan = null;
2618
3426
  AudioChannelControlRequest.prototype.plugins = $util.emptyArray;
3427
+ AudioChannelControlRequest.prototype.mute = null;
3428
+ AudioChannelControlRequest.prototype.automationLevel = null;
3429
+ AudioChannelControlRequest.prototype.automationMute = null;
2619
3430
  let $oneOfFields;
2620
3431
  Object.defineProperty(AudioChannelControlRequest.prototype, "_level", {
2621
3432
  get: $util.oneOfGetter($oneOfFields = ["level"]),
@@ -2625,11 +3436,23 @@ var sesame = $root.sesame = (() => {
2625
3436
  get: $util.oneOfGetter($oneOfFields = ["pan"]),
2626
3437
  set: $util.oneOfSetter($oneOfFields)
2627
3438
  });
2628
- AudioChannelControlRequest.create = function create(properties) {
2629
- return new AudioChannelControlRequest(properties);
2630
- };
2631
- AudioChannelControlRequest.encode = function encode(message, writer) {
2632
- if (!writer)
3439
+ Object.defineProperty(AudioChannelControlRequest.prototype, "_mute", {
3440
+ get: $util.oneOfGetter($oneOfFields = ["mute"]),
3441
+ set: $util.oneOfSetter($oneOfFields)
3442
+ });
3443
+ Object.defineProperty(AudioChannelControlRequest.prototype, "_automationLevel", {
3444
+ get: $util.oneOfGetter($oneOfFields = ["automationLevel"]),
3445
+ set: $util.oneOfSetter($oneOfFields)
3446
+ });
3447
+ Object.defineProperty(AudioChannelControlRequest.prototype, "_automationMute", {
3448
+ get: $util.oneOfGetter($oneOfFields = ["automationMute"]),
3449
+ set: $util.oneOfSetter($oneOfFields)
3450
+ });
3451
+ AudioChannelControlRequest.create = function create(properties) {
3452
+ return new AudioChannelControlRequest(properties);
3453
+ };
3454
+ AudioChannelControlRequest.encode = function encode(message, writer) {
3455
+ if (!writer)
2633
3456
  writer = $Writer.create();
2634
3457
  if (message.channelId != null && Object.hasOwnProperty.call(message, "channelId"))
2635
3458
  writer.uint32(
@@ -2652,6 +3475,21 @@ var sesame = $root.sesame = (() => {
2652
3475
  /* id 4, wireType 2 =*/
2653
3476
  34
2654
3477
  ).fork()).ldelim();
3478
+ if (message.mute != null && Object.hasOwnProperty.call(message, "mute"))
3479
+ writer.uint32(
3480
+ /* id 5, wireType 0 =*/
3481
+ 40
3482
+ ).bool(message.mute);
3483
+ if (message.automationLevel != null && Object.hasOwnProperty.call(message, "automationLevel"))
3484
+ writer.uint32(
3485
+ /* id 6, wireType 5 =*/
3486
+ 53
3487
+ ).float(message.automationLevel);
3488
+ if (message.automationMute != null && Object.hasOwnProperty.call(message, "automationMute"))
3489
+ writer.uint32(
3490
+ /* id 7, wireType 0 =*/
3491
+ 56
3492
+ ).bool(message.automationMute);
2655
3493
  return writer;
2656
3494
  };
2657
3495
  AudioChannelControlRequest.encodeDelimited = function encodeDelimited(message, writer) {
@@ -2684,6 +3522,18 @@ var sesame = $root.sesame = (() => {
2684
3522
  message.plugins.push($root.sesame.v1.audio.AudioPluginControlRequest.decode(reader, reader.uint32()));
2685
3523
  break;
2686
3524
  }
3525
+ case 5: {
3526
+ message.mute = reader.bool();
3527
+ break;
3528
+ }
3529
+ case 6: {
3530
+ message.automationLevel = reader.float();
3531
+ break;
3532
+ }
3533
+ case 7: {
3534
+ message.automationMute = reader.bool();
3535
+ break;
3536
+ }
2687
3537
  default:
2688
3538
  reader.skipType(tag & 7);
2689
3539
  break;
@@ -2723,6 +3573,21 @@ var sesame = $root.sesame = (() => {
2723
3573
  return "plugins." + error;
2724
3574
  }
2725
3575
  }
3576
+ if (message.mute != null && message.hasOwnProperty("mute")) {
3577
+ properties._mute = 1;
3578
+ if (typeof message.mute !== "boolean")
3579
+ return "mute: boolean expected";
3580
+ }
3581
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel")) {
3582
+ properties._automationLevel = 1;
3583
+ if (typeof message.automationLevel !== "number")
3584
+ return "automationLevel: number expected";
3585
+ }
3586
+ if (message.automationMute != null && message.hasOwnProperty("automationMute")) {
3587
+ properties._automationMute = 1;
3588
+ if (typeof message.automationMute !== "boolean")
3589
+ return "automationMute: boolean expected";
3590
+ }
2726
3591
  return null;
2727
3592
  };
2728
3593
  AudioChannelControlRequest.fromObject = function fromObject(object) {
@@ -2745,6 +3610,12 @@ var sesame = $root.sesame = (() => {
2745
3610
  message.plugins[i] = $root.sesame.v1.audio.AudioPluginControlRequest.fromObject(object.plugins[i]);
2746
3611
  }
2747
3612
  }
3613
+ if (object.mute != null)
3614
+ message.mute = Boolean(object.mute);
3615
+ if (object.automationLevel != null)
3616
+ message.automationLevel = Number(object.automationLevel);
3617
+ if (object.automationMute != null)
3618
+ message.automationMute = Boolean(object.automationMute);
2748
3619
  return message;
2749
3620
  };
2750
3621
  AudioChannelControlRequest.toObject = function toObject(message, options) {
@@ -2772,6 +3643,21 @@ var sesame = $root.sesame = (() => {
2772
3643
  for (let j = 0; j < message.plugins.length; ++j)
2773
3644
  object.plugins[j] = $root.sesame.v1.audio.AudioPluginControlRequest.toObject(message.plugins[j], options);
2774
3645
  }
3646
+ if (message.mute != null && message.hasOwnProperty("mute")) {
3647
+ object.mute = message.mute;
3648
+ if (options.oneofs)
3649
+ object._mute = "mute";
3650
+ }
3651
+ if (message.automationLevel != null && message.hasOwnProperty("automationLevel")) {
3652
+ object.automationLevel = options.json && !isFinite(message.automationLevel) ? String(message.automationLevel) : message.automationLevel;
3653
+ if (options.oneofs)
3654
+ object._automationLevel = "automationLevel";
3655
+ }
3656
+ if (message.automationMute != null && message.hasOwnProperty("automationMute")) {
3657
+ object.automationMute = message.automationMute;
3658
+ if (options.oneofs)
3659
+ object._automationMute = "automationMute";
3660
+ }
2775
3661
  return object;
2776
3662
  };
2777
3663
  AudioChannelControlRequest.prototype.toJSON = function toJSON() {
@@ -2788,6 +3674,7 @@ var sesame = $root.sesame = (() => {
2788
3674
  audio.AudioControlRequest = function() {
2789
3675
  function AudioControlRequest(properties) {
2790
3676
  this.channels = [];
3677
+ this.masterPlugins = [];
2791
3678
  if (properties) {
2792
3679
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2793
3680
  if (properties[keys[i]] != null)
@@ -2795,6 +3682,18 @@ var sesame = $root.sesame = (() => {
2795
3682
  }
2796
3683
  }
2797
3684
  AudioControlRequest.prototype.channels = $util.emptyArray;
3685
+ AudioControlRequest.prototype.masterLevel = null;
3686
+ AudioControlRequest.prototype.masterAutomationLevel = null;
3687
+ AudioControlRequest.prototype.masterPlugins = $util.emptyArray;
3688
+ let $oneOfFields;
3689
+ Object.defineProperty(AudioControlRequest.prototype, "_masterLevel", {
3690
+ get: $util.oneOfGetter($oneOfFields = ["masterLevel"]),
3691
+ set: $util.oneOfSetter($oneOfFields)
3692
+ });
3693
+ Object.defineProperty(AudioControlRequest.prototype, "_masterAutomationLevel", {
3694
+ get: $util.oneOfGetter($oneOfFields = ["masterAutomationLevel"]),
3695
+ set: $util.oneOfSetter($oneOfFields)
3696
+ });
2798
3697
  AudioControlRequest.create = function create(properties) {
2799
3698
  return new AudioControlRequest(properties);
2800
3699
  };
@@ -2807,6 +3706,22 @@ var sesame = $root.sesame = (() => {
2807
3706
  /* id 1, wireType 2 =*/
2808
3707
  10
2809
3708
  ).fork()).ldelim();
3709
+ if (message.masterLevel != null && Object.hasOwnProperty.call(message, "masterLevel"))
3710
+ writer.uint32(
3711
+ /* id 2, wireType 5 =*/
3712
+ 21
3713
+ ).float(message.masterLevel);
3714
+ if (message.masterAutomationLevel != null && Object.hasOwnProperty.call(message, "masterAutomationLevel"))
3715
+ writer.uint32(
3716
+ /* id 3, wireType 5 =*/
3717
+ 29
3718
+ ).float(message.masterAutomationLevel);
3719
+ if (message.masterPlugins != null && message.masterPlugins.length)
3720
+ for (let i = 0; i < message.masterPlugins.length; ++i)
3721
+ $root.sesame.v1.audio.AudioPluginControlRequest.encode(message.masterPlugins[i], writer.uint32(
3722
+ /* id 4, wireType 2 =*/
3723
+ 34
3724
+ ).fork()).ldelim();
2810
3725
  return writer;
2811
3726
  };
2812
3727
  AudioControlRequest.encodeDelimited = function encodeDelimited(message, writer) {
@@ -2827,6 +3742,20 @@ var sesame = $root.sesame = (() => {
2827
3742
  message.channels.push($root.sesame.v1.audio.AudioChannelControlRequest.decode(reader, reader.uint32()));
2828
3743
  break;
2829
3744
  }
3745
+ case 2: {
3746
+ message.masterLevel = reader.float();
3747
+ break;
3748
+ }
3749
+ case 3: {
3750
+ message.masterAutomationLevel = reader.float();
3751
+ break;
3752
+ }
3753
+ case 4: {
3754
+ if (!(message.masterPlugins && message.masterPlugins.length))
3755
+ message.masterPlugins = [];
3756
+ message.masterPlugins.push($root.sesame.v1.audio.AudioPluginControlRequest.decode(reader, reader.uint32()));
3757
+ break;
3758
+ }
2830
3759
  default:
2831
3760
  reader.skipType(tag & 7);
2832
3761
  break;
@@ -2842,6 +3771,7 @@ var sesame = $root.sesame = (() => {
2842
3771
  AudioControlRequest.verify = function verify(message) {
2843
3772
  if (typeof message !== "object" || message === null)
2844
3773
  return "object expected";
3774
+ let properties = {};
2845
3775
  if (message.channels != null && message.hasOwnProperty("channels")) {
2846
3776
  if (!Array.isArray(message.channels))
2847
3777
  return "channels: array expected";
@@ -2851,6 +3781,25 @@ var sesame = $root.sesame = (() => {
2851
3781
  return "channels." + error;
2852
3782
  }
2853
3783
  }
3784
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel")) {
3785
+ properties._masterLevel = 1;
3786
+ if (typeof message.masterLevel !== "number")
3787
+ return "masterLevel: number expected";
3788
+ }
3789
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel")) {
3790
+ properties._masterAutomationLevel = 1;
3791
+ if (typeof message.masterAutomationLevel !== "number")
3792
+ return "masterAutomationLevel: number expected";
3793
+ }
3794
+ if (message.masterPlugins != null && message.hasOwnProperty("masterPlugins")) {
3795
+ if (!Array.isArray(message.masterPlugins))
3796
+ return "masterPlugins: array expected";
3797
+ for (let i = 0; i < message.masterPlugins.length; ++i) {
3798
+ let error = $root.sesame.v1.audio.AudioPluginControlRequest.verify(message.masterPlugins[i]);
3799
+ if (error)
3800
+ return "masterPlugins." + error;
3801
+ }
3802
+ }
2854
3803
  return null;
2855
3804
  };
2856
3805
  AudioControlRequest.fromObject = function fromObject(object) {
@@ -2867,19 +3816,50 @@ var sesame = $root.sesame = (() => {
2867
3816
  message.channels[i] = $root.sesame.v1.audio.AudioChannelControlRequest.fromObject(object.channels[i]);
2868
3817
  }
2869
3818
  }
3819
+ if (object.masterLevel != null)
3820
+ message.masterLevel = Number(object.masterLevel);
3821
+ if (object.masterAutomationLevel != null)
3822
+ message.masterAutomationLevel = Number(object.masterAutomationLevel);
3823
+ if (object.masterPlugins) {
3824
+ if (!Array.isArray(object.masterPlugins))
3825
+ throw TypeError(".sesame.v1.audio.AudioControlRequest.masterPlugins: array expected");
3826
+ message.masterPlugins = [];
3827
+ for (let i = 0; i < object.masterPlugins.length; ++i) {
3828
+ if (typeof object.masterPlugins[i] !== "object")
3829
+ throw TypeError(".sesame.v1.audio.AudioControlRequest.masterPlugins: object expected");
3830
+ message.masterPlugins[i] = $root.sesame.v1.audio.AudioPluginControlRequest.fromObject(object.masterPlugins[i]);
3831
+ }
3832
+ }
2870
3833
  return message;
2871
3834
  };
2872
3835
  AudioControlRequest.toObject = function toObject(message, options) {
2873
3836
  if (!options)
2874
3837
  options = {};
2875
3838
  let object = {};
2876
- if (options.arrays || options.defaults)
3839
+ if (options.arrays || options.defaults) {
2877
3840
  object.channels = [];
3841
+ object.masterPlugins = [];
3842
+ }
2878
3843
  if (message.channels && message.channels.length) {
2879
3844
  object.channels = [];
2880
3845
  for (let j = 0; j < message.channels.length; ++j)
2881
3846
  object.channels[j] = $root.sesame.v1.audio.AudioChannelControlRequest.toObject(message.channels[j], options);
2882
3847
  }
3848
+ if (message.masterLevel != null && message.hasOwnProperty("masterLevel")) {
3849
+ object.masterLevel = options.json && !isFinite(message.masterLevel) ? String(message.masterLevel) : message.masterLevel;
3850
+ if (options.oneofs)
3851
+ object._masterLevel = "masterLevel";
3852
+ }
3853
+ if (message.masterAutomationLevel != null && message.hasOwnProperty("masterAutomationLevel")) {
3854
+ object.masterAutomationLevel = options.json && !isFinite(message.masterAutomationLevel) ? String(message.masterAutomationLevel) : message.masterAutomationLevel;
3855
+ if (options.oneofs)
3856
+ object._masterAutomationLevel = "masterAutomationLevel";
3857
+ }
3858
+ if (message.masterPlugins && message.masterPlugins.length) {
3859
+ object.masterPlugins = [];
3860
+ for (let j = 0; j < message.masterPlugins.length; ++j)
3861
+ object.masterPlugins[j] = $root.sesame.v1.audio.AudioPluginControlRequest.toObject(message.masterPlugins[j], options);
3862
+ }
2883
3863
  return object;
2884
3864
  };
2885
3865
  AudioControlRequest.prototype.toJSON = function toJSON() {
@@ -2931,11 +3911,15 @@ var sesame = $root.sesame = (() => {
2931
3911
  CommandListItem.prototype.callback = null;
2932
3912
  CommandListItem.prototype.setSourceMetadata = null;
2933
3913
  CommandListItem.prototype.setMetadataBindings = null;
3914
+ CommandListItem.prototype.addEncoder = null;
3915
+ CommandListItem.prototype.updateEncoder = null;
3916
+ CommandListItem.prototype.removeEncoder = null;
3917
+ CommandListItem.prototype.takePlaylist = null;
2934
3918
  CommandListItem.prototype.transactionId = null;
2935
3919
  CommandListItem.prototype.transactionDeps = $util.emptyArray;
2936
3920
  let $oneOfFields;
2937
3921
  Object.defineProperty(CommandListItem.prototype, "item", {
2938
- 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"]),
3922
+ 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"]),
2939
3923
  set: $util.oneOfSetter($oneOfFields)
2940
3924
  });
2941
3925
  Object.defineProperty(CommandListItem.prototype, "_transactionId", {
@@ -3087,6 +4071,26 @@ var sesame = $root.sesame = (() => {
3087
4071
  /* id 27, wireType 2 =*/
3088
4072
  218
3089
4073
  ).fork()).ldelim();
4074
+ if (message.addEncoder != null && Object.hasOwnProperty.call(message, "addEncoder"))
4075
+ $root.sesame.v1.outputs.EncoderAddRequest.encode(message.addEncoder, writer.uint32(
4076
+ /* id 28, wireType 2 =*/
4077
+ 226
4078
+ ).fork()).ldelim();
4079
+ if (message.updateEncoder != null && Object.hasOwnProperty.call(message, "updateEncoder"))
4080
+ $root.sesame.v1.outputs.EncoderUpdateRequest.encode(message.updateEncoder, writer.uint32(
4081
+ /* id 29, wireType 2 =*/
4082
+ 234
4083
+ ).fork()).ldelim();
4084
+ if (message.removeEncoder != null && Object.hasOwnProperty.call(message, "removeEncoder"))
4085
+ $root.sesame.v1.outputs.EncoderRemoveRequest.encode(message.removeEncoder, writer.uint32(
4086
+ /* id 30, wireType 2 =*/
4087
+ 242
4088
+ ).fork()).ldelim();
4089
+ if (message.takePlaylist != null && Object.hasOwnProperty.call(message, "takePlaylist"))
4090
+ $root.sesame.v1.sources.TakePlaylistRequest.encode(message.takePlaylist, writer.uint32(
4091
+ /* id 31, wireType 2 =*/
4092
+ 250
4093
+ ).fork()).ldelim();
3090
4094
  return writer;
3091
4095
  };
3092
4096
  CommandListItem.encodeDelimited = function encodeDelimited(message, writer) {
@@ -3201,6 +4205,22 @@ var sesame = $root.sesame = (() => {
3201
4205
  message.setMetadataBindings = $root.sesame.v1.commands.SetMetadataBindingsRequest.decode(reader, reader.uint32());
3202
4206
  break;
3203
4207
  }
4208
+ case 28: {
4209
+ message.addEncoder = $root.sesame.v1.outputs.EncoderAddRequest.decode(reader, reader.uint32());
4210
+ break;
4211
+ }
4212
+ case 29: {
4213
+ message.updateEncoder = $root.sesame.v1.outputs.EncoderUpdateRequest.decode(reader, reader.uint32());
4214
+ break;
4215
+ }
4216
+ case 30: {
4217
+ message.removeEncoder = $root.sesame.v1.outputs.EncoderRemoveRequest.decode(reader, reader.uint32());
4218
+ break;
4219
+ }
4220
+ case 31: {
4221
+ message.takePlaylist = $root.sesame.v1.sources.TakePlaylistRequest.decode(reader, reader.uint32());
4222
+ break;
4223
+ }
3204
4224
  case 25: {
3205
4225
  message.transactionId = reader.uint32();
3206
4226
  break;
@@ -3474,6 +4494,46 @@ var sesame = $root.sesame = (() => {
3474
4494
  return "setMetadataBindings." + error;
3475
4495
  }
3476
4496
  }
4497
+ if (message.addEncoder != null && message.hasOwnProperty("addEncoder")) {
4498
+ if (properties.item === 1)
4499
+ return "item: multiple values";
4500
+ properties.item = 1;
4501
+ {
4502
+ let error = $root.sesame.v1.outputs.EncoderAddRequest.verify(message.addEncoder);
4503
+ if (error)
4504
+ return "addEncoder." + error;
4505
+ }
4506
+ }
4507
+ if (message.updateEncoder != null && message.hasOwnProperty("updateEncoder")) {
4508
+ if (properties.item === 1)
4509
+ return "item: multiple values";
4510
+ properties.item = 1;
4511
+ {
4512
+ let error = $root.sesame.v1.outputs.EncoderUpdateRequest.verify(message.updateEncoder);
4513
+ if (error)
4514
+ return "updateEncoder." + error;
4515
+ }
4516
+ }
4517
+ if (message.removeEncoder != null && message.hasOwnProperty("removeEncoder")) {
4518
+ if (properties.item === 1)
4519
+ return "item: multiple values";
4520
+ properties.item = 1;
4521
+ {
4522
+ let error = $root.sesame.v1.outputs.EncoderRemoveRequest.verify(message.removeEncoder);
4523
+ if (error)
4524
+ return "removeEncoder." + error;
4525
+ }
4526
+ }
4527
+ if (message.takePlaylist != null && message.hasOwnProperty("takePlaylist")) {
4528
+ if (properties.item === 1)
4529
+ return "item: multiple values";
4530
+ properties.item = 1;
4531
+ {
4532
+ let error = $root.sesame.v1.sources.TakePlaylistRequest.verify(message.takePlaylist);
4533
+ if (error)
4534
+ return "takePlaylist." + error;
4535
+ }
4536
+ }
3477
4537
  if (message.transactionId != null && message.hasOwnProperty("transactionId")) {
3478
4538
  properties._transactionId = 1;
3479
4539
  if (!$util.isInteger(message.transactionId))
@@ -3622,6 +4682,26 @@ var sesame = $root.sesame = (() => {
3622
4682
  throw TypeError(".sesame.v1.commands.CommandListItem.setMetadataBindings: object expected");
3623
4683
  message.setMetadataBindings = $root.sesame.v1.commands.SetMetadataBindingsRequest.fromObject(object.setMetadataBindings);
3624
4684
  }
4685
+ if (object.addEncoder != null) {
4686
+ if (typeof object.addEncoder !== "object")
4687
+ throw TypeError(".sesame.v1.commands.CommandListItem.addEncoder: object expected");
4688
+ message.addEncoder = $root.sesame.v1.outputs.EncoderAddRequest.fromObject(object.addEncoder);
4689
+ }
4690
+ if (object.updateEncoder != null) {
4691
+ if (typeof object.updateEncoder !== "object")
4692
+ throw TypeError(".sesame.v1.commands.CommandListItem.updateEncoder: object expected");
4693
+ message.updateEncoder = $root.sesame.v1.outputs.EncoderUpdateRequest.fromObject(object.updateEncoder);
4694
+ }
4695
+ if (object.removeEncoder != null) {
4696
+ if (typeof object.removeEncoder !== "object")
4697
+ throw TypeError(".sesame.v1.commands.CommandListItem.removeEncoder: object expected");
4698
+ message.removeEncoder = $root.sesame.v1.outputs.EncoderRemoveRequest.fromObject(object.removeEncoder);
4699
+ }
4700
+ if (object.takePlaylist != null) {
4701
+ if (typeof object.takePlaylist !== "object")
4702
+ throw TypeError(".sesame.v1.commands.CommandListItem.takePlaylist: object expected");
4703
+ message.takePlaylist = $root.sesame.v1.sources.TakePlaylistRequest.fromObject(object.takePlaylist);
4704
+ }
3625
4705
  if (object.transactionId != null)
3626
4706
  message.transactionId = object.transactionId >>> 0;
3627
4707
  if (object.transactionDeps) {
@@ -3780,6 +4860,26 @@ var sesame = $root.sesame = (() => {
3780
4860
  if (options.oneofs)
3781
4861
  object.item = "setMetadataBindings";
3782
4862
  }
4863
+ if (message.addEncoder != null && message.hasOwnProperty("addEncoder")) {
4864
+ object.addEncoder = $root.sesame.v1.outputs.EncoderAddRequest.toObject(message.addEncoder, options);
4865
+ if (options.oneofs)
4866
+ object.item = "addEncoder";
4867
+ }
4868
+ if (message.updateEncoder != null && message.hasOwnProperty("updateEncoder")) {
4869
+ object.updateEncoder = $root.sesame.v1.outputs.EncoderUpdateRequest.toObject(message.updateEncoder, options);
4870
+ if (options.oneofs)
4871
+ object.item = "updateEncoder";
4872
+ }
4873
+ if (message.removeEncoder != null && message.hasOwnProperty("removeEncoder")) {
4874
+ object.removeEncoder = $root.sesame.v1.outputs.EncoderRemoveRequest.toObject(message.removeEncoder, options);
4875
+ if (options.oneofs)
4876
+ object.item = "removeEncoder";
4877
+ }
4878
+ if (message.takePlaylist != null && message.hasOwnProperty("takePlaylist")) {
4879
+ object.takePlaylist = $root.sesame.v1.sources.TakePlaylistRequest.toObject(message.takePlaylist, options);
4880
+ if (options.oneofs)
4881
+ object.item = "takePlaylist";
4882
+ }
3783
4883
  return object;
3784
4884
  };
3785
4885
  CommandListItem.prototype.toJSON = function toJSON() {
@@ -9308,19 +10408,48 @@ var sesame = $root.sesame = (() => {
9308
10408
  };
9309
10409
  return LoadPlaylistRequest;
9310
10410
  }();
9311
- sources.EjectPlaylistRequest = function() {
9312
- function EjectPlaylistRequest(properties) {
10411
+ sources.TakePlaylistRequest = function() {
10412
+ function TakePlaylistRequest(properties) {
10413
+ this.items = [];
9313
10414
  if (properties) {
9314
10415
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9315
10416
  if (properties[keys[i]] != null)
9316
10417
  this[keys[i]] = properties[keys[i]];
9317
10418
  }
9318
10419
  }
9319
- EjectPlaylistRequest.prototype.sourceId = "";
9320
- EjectPlaylistRequest.create = function create(properties) {
9321
- return new EjectPlaylistRequest(properties);
10420
+ TakePlaylistRequest.prototype.sourceId = "";
10421
+ TakePlaylistRequest.prototype.userPlaylistId = "";
10422
+ TakePlaylistRequest.prototype.items = $util.emptyArray;
10423
+ TakePlaylistRequest.prototype.startTimeUs = null;
10424
+ TakePlaylistRequest.prototype.startIndex = null;
10425
+ TakePlaylistRequest.prototype.materialPosUs = null;
10426
+ TakePlaylistRequest.prototype.transitionTimeUs = null;
10427
+ TakePlaylistRequest.prototype.playbackSpeed = null;
10428
+ let $oneOfFields;
10429
+ Object.defineProperty(TakePlaylistRequest.prototype, "_startTimeUs", {
10430
+ get: $util.oneOfGetter($oneOfFields = ["startTimeUs"]),
10431
+ set: $util.oneOfSetter($oneOfFields)
10432
+ });
10433
+ Object.defineProperty(TakePlaylistRequest.prototype, "_startIndex", {
10434
+ get: $util.oneOfGetter($oneOfFields = ["startIndex"]),
10435
+ set: $util.oneOfSetter($oneOfFields)
10436
+ });
10437
+ Object.defineProperty(TakePlaylistRequest.prototype, "_materialPosUs", {
10438
+ get: $util.oneOfGetter($oneOfFields = ["materialPosUs"]),
10439
+ set: $util.oneOfSetter($oneOfFields)
10440
+ });
10441
+ Object.defineProperty(TakePlaylistRequest.prototype, "_transitionTimeUs", {
10442
+ get: $util.oneOfGetter($oneOfFields = ["transitionTimeUs"]),
10443
+ set: $util.oneOfSetter($oneOfFields)
10444
+ });
10445
+ Object.defineProperty(TakePlaylistRequest.prototype, "_playbackSpeed", {
10446
+ get: $util.oneOfGetter($oneOfFields = ["playbackSpeed"]),
10447
+ set: $util.oneOfSetter($oneOfFields)
10448
+ });
10449
+ TakePlaylistRequest.create = function create(properties) {
10450
+ return new TakePlaylistRequest(properties);
9322
10451
  };
9323
- EjectPlaylistRequest.encode = function encode(message, writer) {
10452
+ TakePlaylistRequest.encode = function encode(message, writer) {
9324
10453
  if (!writer)
9325
10454
  writer = $Writer.create();
9326
10455
  if (message.sourceId != null && Object.hasOwnProperty.call(message, "sourceId"))
@@ -9328,15 +10457,51 @@ var sesame = $root.sesame = (() => {
9328
10457
  /* id 1, wireType 2 =*/
9329
10458
  10
9330
10459
  ).string(message.sourceId);
10460
+ if (message.userPlaylistId != null && Object.hasOwnProperty.call(message, "userPlaylistId"))
10461
+ writer.uint32(
10462
+ /* id 2, wireType 2 =*/
10463
+ 18
10464
+ ).string(message.userPlaylistId);
10465
+ if (message.items != null && message.items.length)
10466
+ for (let i = 0; i < message.items.length; ++i)
10467
+ $root.sesame.v1.recorder.PlaylistItem.encode(message.items[i], writer.uint32(
10468
+ /* id 3, wireType 2 =*/
10469
+ 26
10470
+ ).fork()).ldelim();
10471
+ if (message.startTimeUs != null && Object.hasOwnProperty.call(message, "startTimeUs"))
10472
+ writer.uint32(
10473
+ /* id 4, wireType 0 =*/
10474
+ 32
10475
+ ).int64(message.startTimeUs);
10476
+ if (message.startIndex != null && Object.hasOwnProperty.call(message, "startIndex"))
10477
+ writer.uint32(
10478
+ /* id 5, wireType 0 =*/
10479
+ 40
10480
+ ).int64(message.startIndex);
10481
+ if (message.materialPosUs != null && Object.hasOwnProperty.call(message, "materialPosUs"))
10482
+ writer.uint32(
10483
+ /* id 6, wireType 0 =*/
10484
+ 48
10485
+ ).int64(message.materialPosUs);
10486
+ if (message.transitionTimeUs != null && Object.hasOwnProperty.call(message, "transitionTimeUs"))
10487
+ writer.uint32(
10488
+ /* id 7, wireType 0 =*/
10489
+ 56
10490
+ ).int64(message.transitionTimeUs);
10491
+ if (message.playbackSpeed != null && Object.hasOwnProperty.call(message, "playbackSpeed"))
10492
+ writer.uint32(
10493
+ /* id 8, wireType 5 =*/
10494
+ 69
10495
+ ).float(message.playbackSpeed);
9331
10496
  return writer;
9332
10497
  };
9333
- EjectPlaylistRequest.encodeDelimited = function encodeDelimited(message, writer) {
10498
+ TakePlaylistRequest.encodeDelimited = function encodeDelimited(message, writer) {
9334
10499
  return this.encode(message, writer).ldelim();
9335
10500
  };
9336
- EjectPlaylistRequest.decode = function decode(reader, length, error) {
10501
+ TakePlaylistRequest.decode = function decode(reader, length, error) {
9337
10502
  if (!(reader instanceof $Reader))
9338
10503
  reader = $Reader.create(reader);
9339
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.EjectPlaylistRequest();
10504
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.TakePlaylistRequest();
9340
10505
  while (reader.pos < end) {
9341
10506
  let tag = reader.uint32();
9342
10507
  if (tag === error)
@@ -9346,6 +10511,36 @@ var sesame = $root.sesame = (() => {
9346
10511
  message.sourceId = reader.string();
9347
10512
  break;
9348
10513
  }
10514
+ case 2: {
10515
+ message.userPlaylistId = reader.string();
10516
+ break;
10517
+ }
10518
+ case 3: {
10519
+ if (!(message.items && message.items.length))
10520
+ message.items = [];
10521
+ message.items.push($root.sesame.v1.recorder.PlaylistItem.decode(reader, reader.uint32()));
10522
+ break;
10523
+ }
10524
+ case 4: {
10525
+ message.startTimeUs = reader.int64();
10526
+ break;
10527
+ }
10528
+ case 5: {
10529
+ message.startIndex = reader.int64();
10530
+ break;
10531
+ }
10532
+ case 6: {
10533
+ message.materialPosUs = reader.int64();
10534
+ break;
10535
+ }
10536
+ case 7: {
10537
+ message.transitionTimeUs = reader.int64();
10538
+ break;
10539
+ }
10540
+ case 8: {
10541
+ message.playbackSpeed = reader.float();
10542
+ break;
10543
+ }
9349
10544
  default:
9350
10545
  reader.skipType(tag & 7);
9351
10546
  break;
@@ -9353,29 +10548,258 @@ var sesame = $root.sesame = (() => {
9353
10548
  }
9354
10549
  return message;
9355
10550
  };
9356
- EjectPlaylistRequest.decodeDelimited = function decodeDelimited(reader) {
10551
+ TakePlaylistRequest.decodeDelimited = function decodeDelimited(reader) {
9357
10552
  if (!(reader instanceof $Reader))
9358
10553
  reader = new $Reader(reader);
9359
10554
  return this.decode(reader, reader.uint32());
9360
10555
  };
9361
- EjectPlaylistRequest.verify = function verify(message) {
10556
+ TakePlaylistRequest.verify = function verify(message) {
9362
10557
  if (typeof message !== "object" || message === null)
9363
10558
  return "object expected";
10559
+ let properties = {};
9364
10560
  if (message.sourceId != null && message.hasOwnProperty("sourceId")) {
9365
10561
  if (!$util.isString(message.sourceId))
9366
10562
  return "sourceId: string expected";
9367
10563
  }
10564
+ if (message.userPlaylistId != null && message.hasOwnProperty("userPlaylistId")) {
10565
+ if (!$util.isString(message.userPlaylistId))
10566
+ return "userPlaylistId: string expected";
10567
+ }
10568
+ if (message.items != null && message.hasOwnProperty("items")) {
10569
+ if (!Array.isArray(message.items))
10570
+ return "items: array expected";
10571
+ for (let i = 0; i < message.items.length; ++i) {
10572
+ let error = $root.sesame.v1.recorder.PlaylistItem.verify(message.items[i]);
10573
+ if (error)
10574
+ return "items." + error;
10575
+ }
10576
+ }
10577
+ if (message.startTimeUs != null && message.hasOwnProperty("startTimeUs")) {
10578
+ properties._startTimeUs = 1;
10579
+ if (!$util.isInteger(message.startTimeUs) && !(message.startTimeUs && $util.isInteger(message.startTimeUs.low) && $util.isInteger(message.startTimeUs.high)))
10580
+ return "startTimeUs: integer|Long expected";
10581
+ }
10582
+ if (message.startIndex != null && message.hasOwnProperty("startIndex")) {
10583
+ properties._startIndex = 1;
10584
+ if (!$util.isInteger(message.startIndex) && !(message.startIndex && $util.isInteger(message.startIndex.low) && $util.isInteger(message.startIndex.high)))
10585
+ return "startIndex: integer|Long expected";
10586
+ }
10587
+ if (message.materialPosUs != null && message.hasOwnProperty("materialPosUs")) {
10588
+ properties._materialPosUs = 1;
10589
+ if (!$util.isInteger(message.materialPosUs) && !(message.materialPosUs && $util.isInteger(message.materialPosUs.low) && $util.isInteger(message.materialPosUs.high)))
10590
+ return "materialPosUs: integer|Long expected";
10591
+ }
10592
+ if (message.transitionTimeUs != null && message.hasOwnProperty("transitionTimeUs")) {
10593
+ properties._transitionTimeUs = 1;
10594
+ if (!$util.isInteger(message.transitionTimeUs) && !(message.transitionTimeUs && $util.isInteger(message.transitionTimeUs.low) && $util.isInteger(message.transitionTimeUs.high)))
10595
+ return "transitionTimeUs: integer|Long expected";
10596
+ }
10597
+ if (message.playbackSpeed != null && message.hasOwnProperty("playbackSpeed")) {
10598
+ properties._playbackSpeed = 1;
10599
+ if (typeof message.playbackSpeed !== "number")
10600
+ return "playbackSpeed: number expected";
10601
+ }
9368
10602
  return null;
9369
10603
  };
9370
- EjectPlaylistRequest.fromObject = function fromObject(object) {
9371
- if (object instanceof $root.sesame.v1.sources.EjectPlaylistRequest)
10604
+ TakePlaylistRequest.fromObject = function fromObject(object) {
10605
+ if (object instanceof $root.sesame.v1.sources.TakePlaylistRequest)
9372
10606
  return object;
9373
- let message = new $root.sesame.v1.sources.EjectPlaylistRequest();
10607
+ let message = new $root.sesame.v1.sources.TakePlaylistRequest();
9374
10608
  if (object.sourceId != null)
9375
10609
  message.sourceId = String(object.sourceId);
9376
- return message;
9377
- };
9378
- EjectPlaylistRequest.toObject = function toObject(message, options) {
10610
+ if (object.userPlaylistId != null)
10611
+ message.userPlaylistId = String(object.userPlaylistId);
10612
+ if (object.items) {
10613
+ if (!Array.isArray(object.items))
10614
+ throw TypeError(".sesame.v1.sources.TakePlaylistRequest.items: array expected");
10615
+ message.items = [];
10616
+ for (let i = 0; i < object.items.length; ++i) {
10617
+ if (typeof object.items[i] !== "object")
10618
+ throw TypeError(".sesame.v1.sources.TakePlaylistRequest.items: object expected");
10619
+ message.items[i] = $root.sesame.v1.recorder.PlaylistItem.fromObject(object.items[i]);
10620
+ }
10621
+ }
10622
+ if (object.startTimeUs != null) {
10623
+ if ($util.Long)
10624
+ (message.startTimeUs = $util.Long.fromValue(object.startTimeUs)).unsigned = false;
10625
+ else if (typeof object.startTimeUs === "string")
10626
+ message.startTimeUs = parseInt(object.startTimeUs, 10);
10627
+ else if (typeof object.startTimeUs === "number")
10628
+ message.startTimeUs = object.startTimeUs;
10629
+ else if (typeof object.startTimeUs === "object")
10630
+ message.startTimeUs = new $util.LongBits(object.startTimeUs.low >>> 0, object.startTimeUs.high >>> 0).toNumber();
10631
+ }
10632
+ if (object.startIndex != null) {
10633
+ if ($util.Long)
10634
+ (message.startIndex = $util.Long.fromValue(object.startIndex)).unsigned = false;
10635
+ else if (typeof object.startIndex === "string")
10636
+ message.startIndex = parseInt(object.startIndex, 10);
10637
+ else if (typeof object.startIndex === "number")
10638
+ message.startIndex = object.startIndex;
10639
+ else if (typeof object.startIndex === "object")
10640
+ message.startIndex = new $util.LongBits(object.startIndex.low >>> 0, object.startIndex.high >>> 0).toNumber();
10641
+ }
10642
+ if (object.materialPosUs != null) {
10643
+ if ($util.Long)
10644
+ (message.materialPosUs = $util.Long.fromValue(object.materialPosUs)).unsigned = false;
10645
+ else if (typeof object.materialPosUs === "string")
10646
+ message.materialPosUs = parseInt(object.materialPosUs, 10);
10647
+ else if (typeof object.materialPosUs === "number")
10648
+ message.materialPosUs = object.materialPosUs;
10649
+ else if (typeof object.materialPosUs === "object")
10650
+ message.materialPosUs = new $util.LongBits(object.materialPosUs.low >>> 0, object.materialPosUs.high >>> 0).toNumber();
10651
+ }
10652
+ if (object.transitionTimeUs != null) {
10653
+ if ($util.Long)
10654
+ (message.transitionTimeUs = $util.Long.fromValue(object.transitionTimeUs)).unsigned = false;
10655
+ else if (typeof object.transitionTimeUs === "string")
10656
+ message.transitionTimeUs = parseInt(object.transitionTimeUs, 10);
10657
+ else if (typeof object.transitionTimeUs === "number")
10658
+ message.transitionTimeUs = object.transitionTimeUs;
10659
+ else if (typeof object.transitionTimeUs === "object")
10660
+ message.transitionTimeUs = new $util.LongBits(object.transitionTimeUs.low >>> 0, object.transitionTimeUs.high >>> 0).toNumber();
10661
+ }
10662
+ if (object.playbackSpeed != null)
10663
+ message.playbackSpeed = Number(object.playbackSpeed);
10664
+ return message;
10665
+ };
10666
+ TakePlaylistRequest.toObject = function toObject(message, options) {
10667
+ if (!options)
10668
+ options = {};
10669
+ let object = {};
10670
+ if (options.arrays || options.defaults)
10671
+ object.items = [];
10672
+ if (options.defaults) {
10673
+ object.sourceId = "";
10674
+ object.userPlaylistId = "";
10675
+ }
10676
+ if (message.sourceId != null && message.hasOwnProperty("sourceId"))
10677
+ object.sourceId = message.sourceId;
10678
+ if (message.userPlaylistId != null && message.hasOwnProperty("userPlaylistId"))
10679
+ object.userPlaylistId = message.userPlaylistId;
10680
+ if (message.items && message.items.length) {
10681
+ object.items = [];
10682
+ for (let j = 0; j < message.items.length; ++j)
10683
+ object.items[j] = $root.sesame.v1.recorder.PlaylistItem.toObject(message.items[j], options);
10684
+ }
10685
+ if (message.startTimeUs != null && message.hasOwnProperty("startTimeUs")) {
10686
+ if (typeof message.startTimeUs === "number")
10687
+ object.startTimeUs = options.longs === String ? String(message.startTimeUs) : message.startTimeUs;
10688
+ else
10689
+ object.startTimeUs = options.longs === String ? $util.Long.prototype.toString.call(message.startTimeUs) : options.longs === Number ? new $util.LongBits(message.startTimeUs.low >>> 0, message.startTimeUs.high >>> 0).toNumber() : message.startTimeUs;
10690
+ if (options.oneofs)
10691
+ object._startTimeUs = "startTimeUs";
10692
+ }
10693
+ if (message.startIndex != null && message.hasOwnProperty("startIndex")) {
10694
+ if (typeof message.startIndex === "number")
10695
+ object.startIndex = options.longs === String ? String(message.startIndex) : message.startIndex;
10696
+ else
10697
+ object.startIndex = options.longs === String ? $util.Long.prototype.toString.call(message.startIndex) : options.longs === Number ? new $util.LongBits(message.startIndex.low >>> 0, message.startIndex.high >>> 0).toNumber() : message.startIndex;
10698
+ if (options.oneofs)
10699
+ object._startIndex = "startIndex";
10700
+ }
10701
+ if (message.materialPosUs != null && message.hasOwnProperty("materialPosUs")) {
10702
+ if (typeof message.materialPosUs === "number")
10703
+ object.materialPosUs = options.longs === String ? String(message.materialPosUs) : message.materialPosUs;
10704
+ else
10705
+ object.materialPosUs = options.longs === String ? $util.Long.prototype.toString.call(message.materialPosUs) : options.longs === Number ? new $util.LongBits(message.materialPosUs.low >>> 0, message.materialPosUs.high >>> 0).toNumber() : message.materialPosUs;
10706
+ if (options.oneofs)
10707
+ object._materialPosUs = "materialPosUs";
10708
+ }
10709
+ if (message.transitionTimeUs != null && message.hasOwnProperty("transitionTimeUs")) {
10710
+ if (typeof message.transitionTimeUs === "number")
10711
+ object.transitionTimeUs = options.longs === String ? String(message.transitionTimeUs) : message.transitionTimeUs;
10712
+ else
10713
+ object.transitionTimeUs = options.longs === String ? $util.Long.prototype.toString.call(message.transitionTimeUs) : options.longs === Number ? new $util.LongBits(message.transitionTimeUs.low >>> 0, message.transitionTimeUs.high >>> 0).toNumber() : message.transitionTimeUs;
10714
+ if (options.oneofs)
10715
+ object._transitionTimeUs = "transitionTimeUs";
10716
+ }
10717
+ if (message.playbackSpeed != null && message.hasOwnProperty("playbackSpeed")) {
10718
+ object.playbackSpeed = options.json && !isFinite(message.playbackSpeed) ? String(message.playbackSpeed) : message.playbackSpeed;
10719
+ if (options.oneofs)
10720
+ object._playbackSpeed = "playbackSpeed";
10721
+ }
10722
+ return object;
10723
+ };
10724
+ TakePlaylistRequest.prototype.toJSON = function toJSON() {
10725
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10726
+ };
10727
+ TakePlaylistRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
10728
+ if (typeUrlPrefix === void 0) {
10729
+ typeUrlPrefix = "type.googleapis.com";
10730
+ }
10731
+ return typeUrlPrefix + "/sesame.v1.sources.TakePlaylistRequest";
10732
+ };
10733
+ return TakePlaylistRequest;
10734
+ }();
10735
+ sources.EjectPlaylistRequest = function() {
10736
+ function EjectPlaylistRequest(properties) {
10737
+ if (properties) {
10738
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10739
+ if (properties[keys[i]] != null)
10740
+ this[keys[i]] = properties[keys[i]];
10741
+ }
10742
+ }
10743
+ EjectPlaylistRequest.prototype.sourceId = "";
10744
+ EjectPlaylistRequest.create = function create(properties) {
10745
+ return new EjectPlaylistRequest(properties);
10746
+ };
10747
+ EjectPlaylistRequest.encode = function encode(message, writer) {
10748
+ if (!writer)
10749
+ writer = $Writer.create();
10750
+ if (message.sourceId != null && Object.hasOwnProperty.call(message, "sourceId"))
10751
+ writer.uint32(
10752
+ /* id 1, wireType 2 =*/
10753
+ 10
10754
+ ).string(message.sourceId);
10755
+ return writer;
10756
+ };
10757
+ EjectPlaylistRequest.encodeDelimited = function encodeDelimited(message, writer) {
10758
+ return this.encode(message, writer).ldelim();
10759
+ };
10760
+ EjectPlaylistRequest.decode = function decode(reader, length, error) {
10761
+ if (!(reader instanceof $Reader))
10762
+ reader = $Reader.create(reader);
10763
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.sources.EjectPlaylistRequest();
10764
+ while (reader.pos < end) {
10765
+ let tag = reader.uint32();
10766
+ if (tag === error)
10767
+ break;
10768
+ switch (tag >>> 3) {
10769
+ case 1: {
10770
+ message.sourceId = reader.string();
10771
+ break;
10772
+ }
10773
+ default:
10774
+ reader.skipType(tag & 7);
10775
+ break;
10776
+ }
10777
+ }
10778
+ return message;
10779
+ };
10780
+ EjectPlaylistRequest.decodeDelimited = function decodeDelimited(reader) {
10781
+ if (!(reader instanceof $Reader))
10782
+ reader = new $Reader(reader);
10783
+ return this.decode(reader, reader.uint32());
10784
+ };
10785
+ EjectPlaylistRequest.verify = function verify(message) {
10786
+ if (typeof message !== "object" || message === null)
10787
+ return "object expected";
10788
+ if (message.sourceId != null && message.hasOwnProperty("sourceId")) {
10789
+ if (!$util.isString(message.sourceId))
10790
+ return "sourceId: string expected";
10791
+ }
10792
+ return null;
10793
+ };
10794
+ EjectPlaylistRequest.fromObject = function fromObject(object) {
10795
+ if (object instanceof $root.sesame.v1.sources.EjectPlaylistRequest)
10796
+ return object;
10797
+ let message = new $root.sesame.v1.sources.EjectPlaylistRequest();
10798
+ if (object.sourceId != null)
10799
+ message.sourceId = String(object.sourceId);
10800
+ return message;
10801
+ };
10802
+ EjectPlaylistRequest.toObject = function toObject(message, options) {
9379
10803
  if (!options)
9380
10804
  options = {};
9381
10805
  let object = {};
@@ -14326,6 +15750,7 @@ var sesame = $root.sesame = (() => {
14326
15750
  this.audioMixes = [];
14327
15751
  this.outputs = [];
14328
15752
  this.recorders = [];
15753
+ this.encoders = [];
14329
15754
  if (properties) {
14330
15755
  for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
14331
15756
  if (properties[keys[i]] != null)
@@ -14340,6 +15765,7 @@ var sesame = $root.sesame = (() => {
14340
15765
  Status.prototype.audioMixes = $util.emptyArray;
14341
15766
  Status.prototype.outputs = $util.emptyArray;
14342
15767
  Status.prototype.recorders = $util.emptyArray;
15768
+ Status.prototype.encoders = $util.emptyArray;
14343
15769
  Status.create = function create(properties) {
14344
15770
  return new Status(properties);
14345
15771
  };
@@ -14391,6 +15817,12 @@ var sesame = $root.sesame = (() => {
14391
15817
  /* id 8, wireType 2 =*/
14392
15818
  66
14393
15819
  ).fork()).ldelim();
15820
+ if (message.encoders != null && message.encoders.length)
15821
+ for (let i = 0; i < message.encoders.length; ++i)
15822
+ $root.sesame.v1.outputs.EncoderStatus.encode(message.encoders[i], writer.uint32(
15823
+ /* id 9, wireType 2 =*/
15824
+ 74
15825
+ ).fork()).ldelim();
14394
15826
  return writer;
14395
15827
  };
14396
15828
  Status.encodeDelimited = function encodeDelimited(message, writer) {
@@ -14447,6 +15879,12 @@ var sesame = $root.sesame = (() => {
14447
15879
  message.recorders.push($root.sesame.v1.recorder.RecorderStatus.decode(reader, reader.uint32()));
14448
15880
  break;
14449
15881
  }
15882
+ case 9: {
15883
+ if (!(message.encoders && message.encoders.length))
15884
+ message.encoders = [];
15885
+ message.encoders.push($root.sesame.v1.outputs.EncoderStatus.decode(reader, reader.uint32()));
15886
+ break;
15887
+ }
14450
15888
  default:
14451
15889
  reader.skipType(tag & 7);
14452
15890
  break;
@@ -14522,6 +15960,15 @@ var sesame = $root.sesame = (() => {
14522
15960
  return "recorders." + error;
14523
15961
  }
14524
15962
  }
15963
+ if (message.encoders != null && message.hasOwnProperty("encoders")) {
15964
+ if (!Array.isArray(message.encoders))
15965
+ return "encoders: array expected";
15966
+ for (let i = 0; i < message.encoders.length; ++i) {
15967
+ let error = $root.sesame.v1.outputs.EncoderStatus.verify(message.encoders[i]);
15968
+ if (error)
15969
+ return "encoders." + error;
15970
+ }
15971
+ }
14525
15972
  return null;
14526
15973
  };
14527
15974
  Status.fromObject = function fromObject(object) {
@@ -14593,6 +16040,16 @@ var sesame = $root.sesame = (() => {
14593
16040
  message.recorders[i] = $root.sesame.v1.recorder.RecorderStatus.fromObject(object.recorders[i]);
14594
16041
  }
14595
16042
  }
16043
+ if (object.encoders) {
16044
+ if (!Array.isArray(object.encoders))
16045
+ throw TypeError(".sesame.v1.status.Status.encoders: array expected");
16046
+ message.encoders = [];
16047
+ for (let i = 0; i < object.encoders.length; ++i) {
16048
+ if (typeof object.encoders[i] !== "object")
16049
+ throw TypeError(".sesame.v1.status.Status.encoders: object expected");
16050
+ message.encoders[i] = $root.sesame.v1.outputs.EncoderStatus.fromObject(object.encoders[i]);
16051
+ }
16052
+ }
14596
16053
  return message;
14597
16054
  };
14598
16055
  Status.toObject = function toObject(message, options) {
@@ -14605,6 +16062,7 @@ var sesame = $root.sesame = (() => {
14605
16062
  object.audioMixes = [];
14606
16063
  object.outputs = [];
14607
16064
  object.recorders = [];
16065
+ object.encoders = [];
14608
16066
  }
14609
16067
  if (options.defaults) {
14610
16068
  object.systemStatus = null;
@@ -14642,6 +16100,11 @@ var sesame = $root.sesame = (() => {
14642
16100
  for (let j = 0; j < message.recorders.length; ++j)
14643
16101
  object.recorders[j] = $root.sesame.v1.recorder.RecorderStatus.toObject(message.recorders[j], options);
14644
16102
  }
16103
+ if (message.encoders && message.encoders.length) {
16104
+ object.encoders = [];
16105
+ for (let j = 0; j < message.encoders.length; ++j)
16106
+ object.encoders[j] = $root.sesame.v1.outputs.EncoderStatus.toObject(message.encoders[j], options);
16107
+ }
14645
16108
  return object;
14646
16109
  };
14647
16110
  Status.prototype.toJSON = function toJSON() {
@@ -15949,6 +17412,12 @@ var sesame = $root.sesame = (() => {
15949
17412
  values[valuesById[7] = "OUTPUT_TYPE_ENCODED_SUPER_SLOWMO_RECORDER"] = 7;
15950
17413
  return values;
15951
17414
  }();
17415
+ outputs.EncoderType = function() {
17416
+ const valuesById = {}, values = Object.create(valuesById);
17417
+ values[valuesById[0] = "ENCODER_TYPE_UNSPECIFIED"] = 0;
17418
+ values[valuesById[1] = "ENCODER_TYPE_VIDEO"] = 1;
17419
+ return values;
17420
+ }();
15952
17421
  outputs.EncoderPreset = function() {
15953
17422
  const valuesById = {}, values = Object.create(valuesById);
15954
17423
  values[valuesById[0] = "ENCODER_PRESET_UNSPECIFIED"] = 0;
@@ -16017,49 +17486,550 @@ var sesame = $root.sesame = (() => {
16017
17486
  ).uint32(message.height);
16018
17487
  if (message.fps != null && Object.hasOwnProperty.call(message, "fps"))
16019
17488
  writer.uint32(
16020
- /* id 7, wireType 5 =*/
16021
- 61
16022
- ).float(message.fps);
17489
+ /* id 7, wireType 5 =*/
17490
+ 61
17491
+ ).float(message.fps);
17492
+ return writer;
17493
+ };
17494
+ EncoderConfig.encodeDelimited = function encodeDelimited(message, writer) {
17495
+ return this.encode(message, writer).ldelim();
17496
+ };
17497
+ EncoderConfig.decode = function decode(reader, length, error) {
17498
+ if (!(reader instanceof $Reader))
17499
+ reader = $Reader.create(reader);
17500
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderConfig();
17501
+ while (reader.pos < end) {
17502
+ let tag = reader.uint32();
17503
+ if (tag === error)
17504
+ break;
17505
+ switch (tag >>> 3) {
17506
+ case 1: {
17507
+ message.codec = reader.int32();
17508
+ break;
17509
+ }
17510
+ case 2: {
17511
+ message.preset = reader.int32();
17512
+ break;
17513
+ }
17514
+ case 3: {
17515
+ message.bitrateKbps = reader.uint32();
17516
+ break;
17517
+ }
17518
+ case 4: {
17519
+ message.keyframeInterval = reader.uint32();
17520
+ break;
17521
+ }
17522
+ case 5: {
17523
+ message.width = reader.uint32();
17524
+ break;
17525
+ }
17526
+ case 6: {
17527
+ message.height = reader.uint32();
17528
+ break;
17529
+ }
17530
+ case 7: {
17531
+ message.fps = reader.float();
17532
+ break;
17533
+ }
17534
+ default:
17535
+ reader.skipType(tag & 7);
17536
+ break;
17537
+ }
17538
+ }
17539
+ return message;
17540
+ };
17541
+ EncoderConfig.decodeDelimited = function decodeDelimited(reader) {
17542
+ if (!(reader instanceof $Reader))
17543
+ reader = new $Reader(reader);
17544
+ return this.decode(reader, reader.uint32());
17545
+ };
17546
+ EncoderConfig.verify = function verify(message) {
17547
+ if (typeof message !== "object" || message === null)
17548
+ return "object expected";
17549
+ if (message.codec != null && message.hasOwnProperty("codec"))
17550
+ switch (message.codec) {
17551
+ default:
17552
+ return "codec: enum value expected";
17553
+ case 0:
17554
+ case 1:
17555
+ case 2:
17556
+ case 3:
17557
+ case 4:
17558
+ case 5:
17559
+ case 6:
17560
+ case 7:
17561
+ case 64:
17562
+ case 65:
17563
+ case 66:
17564
+ case 67:
17565
+ break;
17566
+ }
17567
+ if (message.preset != null && message.hasOwnProperty("preset"))
17568
+ switch (message.preset) {
17569
+ default:
17570
+ return "preset: enum value expected";
17571
+ case 0:
17572
+ case 1:
17573
+ case 2:
17574
+ case 3:
17575
+ break;
17576
+ }
17577
+ if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps")) {
17578
+ if (!$util.isInteger(message.bitrateKbps))
17579
+ return "bitrateKbps: integer expected";
17580
+ }
17581
+ if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval")) {
17582
+ if (!$util.isInteger(message.keyframeInterval))
17583
+ return "keyframeInterval: integer expected";
17584
+ }
17585
+ if (message.width != null && message.hasOwnProperty("width")) {
17586
+ if (!$util.isInteger(message.width))
17587
+ return "width: integer expected";
17588
+ }
17589
+ if (message.height != null && message.hasOwnProperty("height")) {
17590
+ if (!$util.isInteger(message.height))
17591
+ return "height: integer expected";
17592
+ }
17593
+ if (message.fps != null && message.hasOwnProperty("fps")) {
17594
+ if (typeof message.fps !== "number")
17595
+ return "fps: number expected";
17596
+ }
17597
+ return null;
17598
+ };
17599
+ EncoderConfig.fromObject = function fromObject(object) {
17600
+ if (object instanceof $root.sesame.v1.outputs.EncoderConfig)
17601
+ return object;
17602
+ let message = new $root.sesame.v1.outputs.EncoderConfig();
17603
+ switch (object.codec) {
17604
+ default:
17605
+ if (typeof object.codec === "number") {
17606
+ message.codec = object.codec;
17607
+ break;
17608
+ }
17609
+ break;
17610
+ case "CODEC_TYPE_UNSPECIFIED":
17611
+ case 0:
17612
+ message.codec = 0;
17613
+ break;
17614
+ case "CODEC_TYPE_VIDEO_VP8":
17615
+ case 1:
17616
+ message.codec = 1;
17617
+ break;
17618
+ case "CODEC_TYPE_VIDEO_VP9":
17619
+ case 2:
17620
+ message.codec = 2;
17621
+ break;
17622
+ case "CODEC_TYPE_VIDEO_AVC":
17623
+ case 3:
17624
+ message.codec = 3;
17625
+ break;
17626
+ case "CODEC_TYPE_VIDEO_HEVC":
17627
+ case 4:
17628
+ message.codec = 4;
17629
+ break;
17630
+ case "CODEC_TYPE_VIDEO_AV1":
17631
+ case 5:
17632
+ message.codec = 5;
17633
+ break;
17634
+ case "CODEC_TYPE_VIDEO_PRORES":
17635
+ case 6:
17636
+ message.codec = 6;
17637
+ break;
17638
+ case "CODEC_TYPE_VIDEO_DNXHR":
17639
+ case 7:
17640
+ message.codec = 7;
17641
+ break;
17642
+ case "CODEC_TYPE_AUDIO_OPUS":
17643
+ case 64:
17644
+ message.codec = 64;
17645
+ break;
17646
+ case "CODEC_TYPE_AUDIO_AAC":
17647
+ case 65:
17648
+ message.codec = 65;
17649
+ break;
17650
+ case "CODEC_TYPE_AUDIO_PCM":
17651
+ case 66:
17652
+ message.codec = 66;
17653
+ break;
17654
+ case "CODEC_TYPE_AUDIO_PCM_S24LE":
17655
+ case 67:
17656
+ message.codec = 67;
17657
+ break;
17658
+ }
17659
+ switch (object.preset) {
17660
+ default:
17661
+ if (typeof object.preset === "number") {
17662
+ message.preset = object.preset;
17663
+ break;
17664
+ }
17665
+ break;
17666
+ case "ENCODER_PRESET_UNSPECIFIED":
17667
+ case 0:
17668
+ message.preset = 0;
17669
+ break;
17670
+ case "ENCODER_PRESET_LOW_LATENCY":
17671
+ case 1:
17672
+ message.preset = 1;
17673
+ break;
17674
+ case "ENCODER_PRESET_LOW_LATENCY_IDR_ONLY":
17675
+ case 2:
17676
+ message.preset = 2;
17677
+ break;
17678
+ case "ENCODER_PRESET_HIGH_QUALITY":
17679
+ case 3:
17680
+ message.preset = 3;
17681
+ break;
17682
+ }
17683
+ if (object.bitrateKbps != null)
17684
+ message.bitrateKbps = object.bitrateKbps >>> 0;
17685
+ if (object.keyframeInterval != null)
17686
+ message.keyframeInterval = object.keyframeInterval >>> 0;
17687
+ if (object.width != null)
17688
+ message.width = object.width >>> 0;
17689
+ if (object.height != null)
17690
+ message.height = object.height >>> 0;
17691
+ if (object.fps != null)
17692
+ message.fps = Number(object.fps);
17693
+ return message;
17694
+ };
17695
+ EncoderConfig.toObject = function toObject(message, options) {
17696
+ if (!options)
17697
+ options = {};
17698
+ let object = {};
17699
+ if (options.defaults) {
17700
+ object.codec = options.enums === String ? "CODEC_TYPE_UNSPECIFIED" : 0;
17701
+ object.preset = options.enums === String ? "ENCODER_PRESET_UNSPECIFIED" : 0;
17702
+ object.bitrateKbps = 0;
17703
+ object.keyframeInterval = 0;
17704
+ object.width = 0;
17705
+ object.height = 0;
17706
+ object.fps = 0;
17707
+ }
17708
+ if (message.codec != null && message.hasOwnProperty("codec"))
17709
+ 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;
17710
+ if (message.preset != null && message.hasOwnProperty("preset"))
17711
+ 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;
17712
+ if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps"))
17713
+ object.bitrateKbps = message.bitrateKbps;
17714
+ if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval"))
17715
+ object.keyframeInterval = message.keyframeInterval;
17716
+ if (message.width != null && message.hasOwnProperty("width"))
17717
+ object.width = message.width;
17718
+ if (message.height != null && message.hasOwnProperty("height"))
17719
+ object.height = message.height;
17720
+ if (message.fps != null && message.hasOwnProperty("fps"))
17721
+ object.fps = options.json && !isFinite(message.fps) ? String(message.fps) : message.fps;
17722
+ return object;
17723
+ };
17724
+ EncoderConfig.prototype.toJSON = function toJSON() {
17725
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17726
+ };
17727
+ EncoderConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
17728
+ if (typeUrlPrefix === void 0) {
17729
+ typeUrlPrefix = "type.googleapis.com";
17730
+ }
17731
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderConfig";
17732
+ };
17733
+ return EncoderConfig;
17734
+ }();
17735
+ outputs.EncoderAddRequest = function() {
17736
+ function EncoderAddRequest(properties) {
17737
+ if (properties) {
17738
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17739
+ if (properties[keys[i]] != null)
17740
+ this[keys[i]] = properties[keys[i]];
17741
+ }
17742
+ }
17743
+ EncoderAddRequest.prototype.id = "";
17744
+ EncoderAddRequest.prototype.compositionId = "";
17745
+ EncoderAddRequest.prototype.encoder = null;
17746
+ EncoderAddRequest.create = function create(properties) {
17747
+ return new EncoderAddRequest(properties);
17748
+ };
17749
+ EncoderAddRequest.encode = function encode(message, writer) {
17750
+ if (!writer)
17751
+ writer = $Writer.create();
17752
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
17753
+ writer.uint32(
17754
+ /* id 1, wireType 2 =*/
17755
+ 10
17756
+ ).string(message.id);
17757
+ if (message.compositionId != null && Object.hasOwnProperty.call(message, "compositionId"))
17758
+ writer.uint32(
17759
+ /* id 2, wireType 2 =*/
17760
+ 18
17761
+ ).string(message.compositionId);
17762
+ if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
17763
+ $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
17764
+ /* id 3, wireType 2 =*/
17765
+ 26
17766
+ ).fork()).ldelim();
17767
+ return writer;
17768
+ };
17769
+ EncoderAddRequest.encodeDelimited = function encodeDelimited(message, writer) {
17770
+ return this.encode(message, writer).ldelim();
17771
+ };
17772
+ EncoderAddRequest.decode = function decode(reader, length, error) {
17773
+ if (!(reader instanceof $Reader))
17774
+ reader = $Reader.create(reader);
17775
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderAddRequest();
17776
+ while (reader.pos < end) {
17777
+ let tag = reader.uint32();
17778
+ if (tag === error)
17779
+ break;
17780
+ switch (tag >>> 3) {
17781
+ case 1: {
17782
+ message.id = reader.string();
17783
+ break;
17784
+ }
17785
+ case 2: {
17786
+ message.compositionId = reader.string();
17787
+ break;
17788
+ }
17789
+ case 3: {
17790
+ message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
17791
+ break;
17792
+ }
17793
+ default:
17794
+ reader.skipType(tag & 7);
17795
+ break;
17796
+ }
17797
+ }
17798
+ return message;
17799
+ };
17800
+ EncoderAddRequest.decodeDelimited = function decodeDelimited(reader) {
17801
+ if (!(reader instanceof $Reader))
17802
+ reader = new $Reader(reader);
17803
+ return this.decode(reader, reader.uint32());
17804
+ };
17805
+ EncoderAddRequest.verify = function verify(message) {
17806
+ if (typeof message !== "object" || message === null)
17807
+ return "object expected";
17808
+ if (message.id != null && message.hasOwnProperty("id")) {
17809
+ if (!$util.isString(message.id))
17810
+ return "id: string expected";
17811
+ }
17812
+ if (message.compositionId != null && message.hasOwnProperty("compositionId")) {
17813
+ if (!$util.isString(message.compositionId))
17814
+ return "compositionId: string expected";
17815
+ }
17816
+ if (message.encoder != null && message.hasOwnProperty("encoder")) {
17817
+ let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
17818
+ if (error)
17819
+ return "encoder." + error;
17820
+ }
17821
+ return null;
17822
+ };
17823
+ EncoderAddRequest.fromObject = function fromObject(object) {
17824
+ if (object instanceof $root.sesame.v1.outputs.EncoderAddRequest)
17825
+ return object;
17826
+ let message = new $root.sesame.v1.outputs.EncoderAddRequest();
17827
+ if (object.id != null)
17828
+ message.id = String(object.id);
17829
+ if (object.compositionId != null)
17830
+ message.compositionId = String(object.compositionId);
17831
+ if (object.encoder != null) {
17832
+ if (typeof object.encoder !== "object")
17833
+ throw TypeError(".sesame.v1.outputs.EncoderAddRequest.encoder: object expected");
17834
+ message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
17835
+ }
17836
+ return message;
17837
+ };
17838
+ EncoderAddRequest.toObject = function toObject(message, options) {
17839
+ if (!options)
17840
+ options = {};
17841
+ let object = {};
17842
+ if (options.defaults) {
17843
+ object.id = "";
17844
+ object.compositionId = "";
17845
+ object.encoder = null;
17846
+ }
17847
+ if (message.id != null && message.hasOwnProperty("id"))
17848
+ object.id = message.id;
17849
+ if (message.compositionId != null && message.hasOwnProperty("compositionId"))
17850
+ object.compositionId = message.compositionId;
17851
+ if (message.encoder != null && message.hasOwnProperty("encoder"))
17852
+ object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
17853
+ return object;
17854
+ };
17855
+ EncoderAddRequest.prototype.toJSON = function toJSON() {
17856
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17857
+ };
17858
+ EncoderAddRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
17859
+ if (typeUrlPrefix === void 0) {
17860
+ typeUrlPrefix = "type.googleapis.com";
17861
+ }
17862
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderAddRequest";
17863
+ };
17864
+ return EncoderAddRequest;
17865
+ }();
17866
+ outputs.EncoderUpdateRequest = function() {
17867
+ function EncoderUpdateRequest(properties) {
17868
+ if (properties) {
17869
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17870
+ if (properties[keys[i]] != null)
17871
+ this[keys[i]] = properties[keys[i]];
17872
+ }
17873
+ }
17874
+ EncoderUpdateRequest.prototype.id = "";
17875
+ EncoderUpdateRequest.prototype.compositionId = "";
17876
+ EncoderUpdateRequest.prototype.encoder = null;
17877
+ EncoderUpdateRequest.create = function create(properties) {
17878
+ return new EncoderUpdateRequest(properties);
17879
+ };
17880
+ EncoderUpdateRequest.encode = function encode(message, writer) {
17881
+ if (!writer)
17882
+ writer = $Writer.create();
17883
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
17884
+ writer.uint32(
17885
+ /* id 1, wireType 2 =*/
17886
+ 10
17887
+ ).string(message.id);
17888
+ if (message.compositionId != null && Object.hasOwnProperty.call(message, "compositionId"))
17889
+ writer.uint32(
17890
+ /* id 2, wireType 2 =*/
17891
+ 18
17892
+ ).string(message.compositionId);
17893
+ if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
17894
+ $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
17895
+ /* id 3, wireType 2 =*/
17896
+ 26
17897
+ ).fork()).ldelim();
17898
+ return writer;
17899
+ };
17900
+ EncoderUpdateRequest.encodeDelimited = function encodeDelimited(message, writer) {
17901
+ return this.encode(message, writer).ldelim();
17902
+ };
17903
+ EncoderUpdateRequest.decode = function decode(reader, length, error) {
17904
+ if (!(reader instanceof $Reader))
17905
+ reader = $Reader.create(reader);
17906
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderUpdateRequest();
17907
+ while (reader.pos < end) {
17908
+ let tag = reader.uint32();
17909
+ if (tag === error)
17910
+ break;
17911
+ switch (tag >>> 3) {
17912
+ case 1: {
17913
+ message.id = reader.string();
17914
+ break;
17915
+ }
17916
+ case 2: {
17917
+ message.compositionId = reader.string();
17918
+ break;
17919
+ }
17920
+ case 3: {
17921
+ message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
17922
+ break;
17923
+ }
17924
+ default:
17925
+ reader.skipType(tag & 7);
17926
+ break;
17927
+ }
17928
+ }
17929
+ return message;
17930
+ };
17931
+ EncoderUpdateRequest.decodeDelimited = function decodeDelimited(reader) {
17932
+ if (!(reader instanceof $Reader))
17933
+ reader = new $Reader(reader);
17934
+ return this.decode(reader, reader.uint32());
17935
+ };
17936
+ EncoderUpdateRequest.verify = function verify(message) {
17937
+ if (typeof message !== "object" || message === null)
17938
+ return "object expected";
17939
+ if (message.id != null && message.hasOwnProperty("id")) {
17940
+ if (!$util.isString(message.id))
17941
+ return "id: string expected";
17942
+ }
17943
+ if (message.compositionId != null && message.hasOwnProperty("compositionId")) {
17944
+ if (!$util.isString(message.compositionId))
17945
+ return "compositionId: string expected";
17946
+ }
17947
+ if (message.encoder != null && message.hasOwnProperty("encoder")) {
17948
+ let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
17949
+ if (error)
17950
+ return "encoder." + error;
17951
+ }
17952
+ return null;
17953
+ };
17954
+ EncoderUpdateRequest.fromObject = function fromObject(object) {
17955
+ if (object instanceof $root.sesame.v1.outputs.EncoderUpdateRequest)
17956
+ return object;
17957
+ let message = new $root.sesame.v1.outputs.EncoderUpdateRequest();
17958
+ if (object.id != null)
17959
+ message.id = String(object.id);
17960
+ if (object.compositionId != null)
17961
+ message.compositionId = String(object.compositionId);
17962
+ if (object.encoder != null) {
17963
+ if (typeof object.encoder !== "object")
17964
+ throw TypeError(".sesame.v1.outputs.EncoderUpdateRequest.encoder: object expected");
17965
+ message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
17966
+ }
17967
+ return message;
17968
+ };
17969
+ EncoderUpdateRequest.toObject = function toObject(message, options) {
17970
+ if (!options)
17971
+ options = {};
17972
+ let object = {};
17973
+ if (options.defaults) {
17974
+ object.id = "";
17975
+ object.compositionId = "";
17976
+ object.encoder = null;
17977
+ }
17978
+ if (message.id != null && message.hasOwnProperty("id"))
17979
+ object.id = message.id;
17980
+ if (message.compositionId != null && message.hasOwnProperty("compositionId"))
17981
+ object.compositionId = message.compositionId;
17982
+ if (message.encoder != null && message.hasOwnProperty("encoder"))
17983
+ object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
17984
+ return object;
17985
+ };
17986
+ EncoderUpdateRequest.prototype.toJSON = function toJSON() {
17987
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17988
+ };
17989
+ EncoderUpdateRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
17990
+ if (typeUrlPrefix === void 0) {
17991
+ typeUrlPrefix = "type.googleapis.com";
17992
+ }
17993
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderUpdateRequest";
17994
+ };
17995
+ return EncoderUpdateRequest;
17996
+ }();
17997
+ outputs.EncoderRemoveRequest = function() {
17998
+ function EncoderRemoveRequest(properties) {
17999
+ if (properties) {
18000
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
18001
+ if (properties[keys[i]] != null)
18002
+ this[keys[i]] = properties[keys[i]];
18003
+ }
18004
+ }
18005
+ EncoderRemoveRequest.prototype.id = "";
18006
+ EncoderRemoveRequest.create = function create(properties) {
18007
+ return new EncoderRemoveRequest(properties);
18008
+ };
18009
+ EncoderRemoveRequest.encode = function encode(message, writer) {
18010
+ if (!writer)
18011
+ writer = $Writer.create();
18012
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
18013
+ writer.uint32(
18014
+ /* id 1, wireType 2 =*/
18015
+ 10
18016
+ ).string(message.id);
16023
18017
  return writer;
16024
18018
  };
16025
- EncoderConfig.encodeDelimited = function encodeDelimited(message, writer) {
18019
+ EncoderRemoveRequest.encodeDelimited = function encodeDelimited(message, writer) {
16026
18020
  return this.encode(message, writer).ldelim();
16027
18021
  };
16028
- EncoderConfig.decode = function decode(reader, length, error) {
18022
+ EncoderRemoveRequest.decode = function decode(reader, length, error) {
16029
18023
  if (!(reader instanceof $Reader))
16030
18024
  reader = $Reader.create(reader);
16031
- let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderConfig();
18025
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderRemoveRequest();
16032
18026
  while (reader.pos < end) {
16033
18027
  let tag = reader.uint32();
16034
18028
  if (tag === error)
16035
18029
  break;
16036
18030
  switch (tag >>> 3) {
16037
18031
  case 1: {
16038
- message.codec = reader.int32();
16039
- break;
16040
- }
16041
- case 2: {
16042
- message.preset = reader.int32();
16043
- break;
16044
- }
16045
- case 3: {
16046
- message.bitrateKbps = reader.uint32();
16047
- break;
16048
- }
16049
- case 4: {
16050
- message.keyframeInterval = reader.uint32();
16051
- break;
16052
- }
16053
- case 5: {
16054
- message.width = reader.uint32();
16055
- break;
16056
- }
16057
- case 6: {
16058
- message.height = reader.uint32();
16059
- break;
16060
- }
16061
- case 7: {
16062
- message.fps = reader.float();
18032
+ message.id = reader.string();
16063
18033
  break;
16064
18034
  }
16065
18035
  default:
@@ -16069,199 +18039,48 @@ var sesame = $root.sesame = (() => {
16069
18039
  }
16070
18040
  return message;
16071
18041
  };
16072
- EncoderConfig.decodeDelimited = function decodeDelimited(reader) {
18042
+ EncoderRemoveRequest.decodeDelimited = function decodeDelimited(reader) {
16073
18043
  if (!(reader instanceof $Reader))
16074
18044
  reader = new $Reader(reader);
16075
18045
  return this.decode(reader, reader.uint32());
16076
18046
  };
16077
- EncoderConfig.verify = function verify(message) {
18047
+ EncoderRemoveRequest.verify = function verify(message) {
16078
18048
  if (typeof message !== "object" || message === null)
16079
18049
  return "object expected";
16080
- if (message.codec != null && message.hasOwnProperty("codec"))
16081
- switch (message.codec) {
16082
- default:
16083
- return "codec: enum value expected";
16084
- case 0:
16085
- case 1:
16086
- case 2:
16087
- case 3:
16088
- case 4:
16089
- case 5:
16090
- case 6:
16091
- case 7:
16092
- case 64:
16093
- case 65:
16094
- case 66:
16095
- case 67:
16096
- break;
16097
- }
16098
- if (message.preset != null && message.hasOwnProperty("preset"))
16099
- switch (message.preset) {
16100
- default:
16101
- return "preset: enum value expected";
16102
- case 0:
16103
- case 1:
16104
- case 2:
16105
- case 3:
16106
- break;
16107
- }
16108
- if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps")) {
16109
- if (!$util.isInteger(message.bitrateKbps))
16110
- return "bitrateKbps: integer expected";
16111
- }
16112
- if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval")) {
16113
- if (!$util.isInteger(message.keyframeInterval))
16114
- return "keyframeInterval: integer expected";
16115
- }
16116
- if (message.width != null && message.hasOwnProperty("width")) {
16117
- if (!$util.isInteger(message.width))
16118
- return "width: integer expected";
16119
- }
16120
- if (message.height != null && message.hasOwnProperty("height")) {
16121
- if (!$util.isInteger(message.height))
16122
- return "height: integer expected";
16123
- }
16124
- if (message.fps != null && message.hasOwnProperty("fps")) {
16125
- if (typeof message.fps !== "number")
16126
- return "fps: number expected";
18050
+ if (message.id != null && message.hasOwnProperty("id")) {
18051
+ if (!$util.isString(message.id))
18052
+ return "id: string expected";
16127
18053
  }
16128
18054
  return null;
16129
18055
  };
16130
- EncoderConfig.fromObject = function fromObject(object) {
16131
- if (object instanceof $root.sesame.v1.outputs.EncoderConfig)
18056
+ EncoderRemoveRequest.fromObject = function fromObject(object) {
18057
+ if (object instanceof $root.sesame.v1.outputs.EncoderRemoveRequest)
16132
18058
  return object;
16133
- let message = new $root.sesame.v1.outputs.EncoderConfig();
16134
- switch (object.codec) {
16135
- default:
16136
- if (typeof object.codec === "number") {
16137
- message.codec = object.codec;
16138
- break;
16139
- }
16140
- break;
16141
- case "CODEC_TYPE_UNSPECIFIED":
16142
- case 0:
16143
- message.codec = 0;
16144
- break;
16145
- case "CODEC_TYPE_VIDEO_VP8":
16146
- case 1:
16147
- message.codec = 1;
16148
- break;
16149
- case "CODEC_TYPE_VIDEO_VP9":
16150
- case 2:
16151
- message.codec = 2;
16152
- break;
16153
- case "CODEC_TYPE_VIDEO_AVC":
16154
- case 3:
16155
- message.codec = 3;
16156
- break;
16157
- case "CODEC_TYPE_VIDEO_HEVC":
16158
- case 4:
16159
- message.codec = 4;
16160
- break;
16161
- case "CODEC_TYPE_VIDEO_AV1":
16162
- case 5:
16163
- message.codec = 5;
16164
- break;
16165
- case "CODEC_TYPE_VIDEO_PRORES":
16166
- case 6:
16167
- message.codec = 6;
16168
- break;
16169
- case "CODEC_TYPE_VIDEO_DNXHR":
16170
- case 7:
16171
- message.codec = 7;
16172
- break;
16173
- case "CODEC_TYPE_AUDIO_OPUS":
16174
- case 64:
16175
- message.codec = 64;
16176
- break;
16177
- case "CODEC_TYPE_AUDIO_AAC":
16178
- case 65:
16179
- message.codec = 65;
16180
- break;
16181
- case "CODEC_TYPE_AUDIO_PCM":
16182
- case 66:
16183
- message.codec = 66;
16184
- break;
16185
- case "CODEC_TYPE_AUDIO_PCM_S24LE":
16186
- case 67:
16187
- message.codec = 67;
16188
- break;
16189
- }
16190
- switch (object.preset) {
16191
- default:
16192
- if (typeof object.preset === "number") {
16193
- message.preset = object.preset;
16194
- break;
16195
- }
16196
- break;
16197
- case "ENCODER_PRESET_UNSPECIFIED":
16198
- case 0:
16199
- message.preset = 0;
16200
- break;
16201
- case "ENCODER_PRESET_LOW_LATENCY":
16202
- case 1:
16203
- message.preset = 1;
16204
- break;
16205
- case "ENCODER_PRESET_LOW_LATENCY_IDR_ONLY":
16206
- case 2:
16207
- message.preset = 2;
16208
- break;
16209
- case "ENCODER_PRESET_HIGH_QUALITY":
16210
- case 3:
16211
- message.preset = 3;
16212
- break;
16213
- }
16214
- if (object.bitrateKbps != null)
16215
- message.bitrateKbps = object.bitrateKbps >>> 0;
16216
- if (object.keyframeInterval != null)
16217
- message.keyframeInterval = object.keyframeInterval >>> 0;
16218
- if (object.width != null)
16219
- message.width = object.width >>> 0;
16220
- if (object.height != null)
16221
- message.height = object.height >>> 0;
16222
- if (object.fps != null)
16223
- message.fps = Number(object.fps);
18059
+ let message = new $root.sesame.v1.outputs.EncoderRemoveRequest();
18060
+ if (object.id != null)
18061
+ message.id = String(object.id);
16224
18062
  return message;
16225
18063
  };
16226
- EncoderConfig.toObject = function toObject(message, options) {
18064
+ EncoderRemoveRequest.toObject = function toObject(message, options) {
16227
18065
  if (!options)
16228
18066
  options = {};
16229
18067
  let object = {};
16230
- if (options.defaults) {
16231
- object.codec = options.enums === String ? "CODEC_TYPE_UNSPECIFIED" : 0;
16232
- object.preset = options.enums === String ? "ENCODER_PRESET_UNSPECIFIED" : 0;
16233
- object.bitrateKbps = 0;
16234
- object.keyframeInterval = 0;
16235
- object.width = 0;
16236
- object.height = 0;
16237
- object.fps = 0;
16238
- }
16239
- if (message.codec != null && message.hasOwnProperty("codec"))
16240
- 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;
16241
- if (message.preset != null && message.hasOwnProperty("preset"))
16242
- 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;
16243
- if (message.bitrateKbps != null && message.hasOwnProperty("bitrateKbps"))
16244
- object.bitrateKbps = message.bitrateKbps;
16245
- if (message.keyframeInterval != null && message.hasOwnProperty("keyframeInterval"))
16246
- object.keyframeInterval = message.keyframeInterval;
16247
- if (message.width != null && message.hasOwnProperty("width"))
16248
- object.width = message.width;
16249
- if (message.height != null && message.hasOwnProperty("height"))
16250
- object.height = message.height;
16251
- if (message.fps != null && message.hasOwnProperty("fps"))
16252
- object.fps = options.json && !isFinite(message.fps) ? String(message.fps) : message.fps;
18068
+ if (options.defaults)
18069
+ object.id = "";
18070
+ if (message.id != null && message.hasOwnProperty("id"))
18071
+ object.id = message.id;
16253
18072
  return object;
16254
18073
  };
16255
- EncoderConfig.prototype.toJSON = function toJSON() {
18074
+ EncoderRemoveRequest.prototype.toJSON = function toJSON() {
16256
18075
  return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
16257
18076
  };
16258
- EncoderConfig.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
18077
+ EncoderRemoveRequest.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
16259
18078
  if (typeUrlPrefix === void 0) {
16260
18079
  typeUrlPrefix = "type.googleapis.com";
16261
18080
  }
16262
- return typeUrlPrefix + "/sesame.v1.outputs.EncoderConfig";
18081
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderRemoveRequest";
16263
18082
  };
16264
- return EncoderConfig;
18083
+ return EncoderRemoveRequest;
16265
18084
  }();
16266
18085
  outputs.DecklinkOutputConfig = function() {
16267
18086
  function DecklinkOutputConfig(properties) {
@@ -16433,7 +18252,7 @@ var sesame = $root.sesame = (() => {
16433
18252
  }
16434
18253
  }
16435
18254
  EncodedWebSocketOutputConfig.prototype.channel = "";
16436
- EncodedWebSocketOutputConfig.prototype.encoder = null;
18255
+ EncodedWebSocketOutputConfig.prototype.encoderId = "";
16437
18256
  EncodedWebSocketOutputConfig.prototype.metadataTracks = $util.emptyArray;
16438
18257
  EncodedWebSocketOutputConfig.create = function create(properties) {
16439
18258
  return new EncodedWebSocketOutputConfig(properties);
@@ -16446,11 +18265,11 @@ var sesame = $root.sesame = (() => {
16446
18265
  /* id 1, wireType 2 =*/
16447
18266
  10
16448
18267
  ).string(message.channel);
16449
- if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
16450
- $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
18268
+ if (message.encoderId != null && Object.hasOwnProperty.call(message, "encoderId"))
18269
+ writer.uint32(
16451
18270
  /* id 2, wireType 2 =*/
16452
18271
  18
16453
- ).fork()).ldelim();
18272
+ ).string(message.encoderId);
16454
18273
  if (message.metadataTracks != null && message.metadataTracks.length)
16455
18274
  for (let i = 0; i < message.metadataTracks.length; ++i)
16456
18275
  writer.uint32(
@@ -16476,7 +18295,7 @@ var sesame = $root.sesame = (() => {
16476
18295
  break;
16477
18296
  }
16478
18297
  case 2: {
16479
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
18298
+ message.encoderId = reader.string();
16480
18299
  break;
16481
18300
  }
16482
18301
  case 3: {
@@ -16504,10 +18323,9 @@ var sesame = $root.sesame = (() => {
16504
18323
  if (!$util.isString(message.channel))
16505
18324
  return "channel: string expected";
16506
18325
  }
16507
- if (message.encoder != null && message.hasOwnProperty("encoder")) {
16508
- let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
16509
- if (error)
16510
- return "encoder." + error;
18326
+ if (message.encoderId != null && message.hasOwnProperty("encoderId")) {
18327
+ if (!$util.isString(message.encoderId))
18328
+ return "encoderId: string expected";
16511
18329
  }
16512
18330
  if (message.metadataTracks != null && message.hasOwnProperty("metadataTracks")) {
16513
18331
  if (!Array.isArray(message.metadataTracks))
@@ -16524,11 +18342,8 @@ var sesame = $root.sesame = (() => {
16524
18342
  let message = new $root.sesame.v1.outputs.EncodedWebSocketOutputConfig();
16525
18343
  if (object.channel != null)
16526
18344
  message.channel = String(object.channel);
16527
- if (object.encoder != null) {
16528
- if (typeof object.encoder !== "object")
16529
- throw TypeError(".sesame.v1.outputs.EncodedWebSocketOutputConfig.encoder: object expected");
16530
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
16531
- }
18345
+ if (object.encoderId != null)
18346
+ message.encoderId = String(object.encoderId);
16532
18347
  if (object.metadataTracks) {
16533
18348
  if (!Array.isArray(object.metadataTracks))
16534
18349
  throw TypeError(".sesame.v1.outputs.EncodedWebSocketOutputConfig.metadataTracks: array expected");
@@ -16546,12 +18361,12 @@ var sesame = $root.sesame = (() => {
16546
18361
  object.metadataTracks = [];
16547
18362
  if (options.defaults) {
16548
18363
  object.channel = "";
16549
- object.encoder = null;
18364
+ object.encoderId = "";
16550
18365
  }
16551
18366
  if (message.channel != null && message.hasOwnProperty("channel"))
16552
18367
  object.channel = message.channel;
16553
- if (message.encoder != null && message.hasOwnProperty("encoder"))
16554
- object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
18368
+ if (message.encoderId != null && message.hasOwnProperty("encoderId"))
18369
+ object.encoderId = message.encoderId;
16555
18370
  if (message.metadataTracks && message.metadataTracks.length) {
16556
18371
  object.metadataTracks = [];
16557
18372
  for (let j = 0; j < message.metadataTracks.length; ++j)
@@ -16578,7 +18393,7 @@ var sesame = $root.sesame = (() => {
16578
18393
  this[keys[i]] = properties[keys[i]];
16579
18394
  }
16580
18395
  }
16581
- EncodedRecorderOutputConfig.prototype.encoder = null;
18396
+ EncodedRecorderOutputConfig.prototype.encoderId = "";
16582
18397
  EncodedRecorderOutputConfig.prototype.filename = "";
16583
18398
  EncodedRecorderOutputConfig.prototype.sizeGb = 0;
16584
18399
  EncodedRecorderOutputConfig.prototype.groupId = "";
@@ -16589,11 +18404,11 @@ var sesame = $root.sesame = (() => {
16589
18404
  EncodedRecorderOutputConfig.encode = function encode(message, writer) {
16590
18405
  if (!writer)
16591
18406
  writer = $Writer.create();
16592
- if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
16593
- $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
18407
+ if (message.encoderId != null && Object.hasOwnProperty.call(message, "encoderId"))
18408
+ writer.uint32(
16594
18409
  /* id 1, wireType 2 =*/
16595
18410
  10
16596
- ).fork()).ldelim();
18411
+ ).string(message.encoderId);
16597
18412
  if (message.filename != null && Object.hasOwnProperty.call(message, "filename"))
16598
18413
  writer.uint32(
16599
18414
  /* id 2, wireType 2 =*/
@@ -16629,7 +18444,7 @@ var sesame = $root.sesame = (() => {
16629
18444
  break;
16630
18445
  switch (tag >>> 3) {
16631
18446
  case 1: {
16632
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
18447
+ message.encoderId = reader.string();
16633
18448
  break;
16634
18449
  }
16635
18450
  case 2: {
@@ -16663,10 +18478,9 @@ var sesame = $root.sesame = (() => {
16663
18478
  EncodedRecorderOutputConfig.verify = function verify(message) {
16664
18479
  if (typeof message !== "object" || message === null)
16665
18480
  return "object expected";
16666
- if (message.encoder != null && message.hasOwnProperty("encoder")) {
16667
- let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
16668
- if (error)
16669
- return "encoder." + error;
18481
+ if (message.encoderId != null && message.hasOwnProperty("encoderId")) {
18482
+ if (!$util.isString(message.encoderId))
18483
+ return "encoderId: string expected";
16670
18484
  }
16671
18485
  if (message.filename != null && message.hasOwnProperty("filename")) {
16672
18486
  if (!$util.isString(message.filename))
@@ -16695,11 +18509,8 @@ var sesame = $root.sesame = (() => {
16695
18509
  if (object instanceof $root.sesame.v1.outputs.EncodedRecorderOutputConfig)
16696
18510
  return object;
16697
18511
  let message = new $root.sesame.v1.outputs.EncodedRecorderOutputConfig();
16698
- if (object.encoder != null) {
16699
- if (typeof object.encoder !== "object")
16700
- throw TypeError(".sesame.v1.outputs.EncodedRecorderOutputConfig.encoder: object expected");
16701
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
16702
- }
18512
+ if (object.encoderId != null)
18513
+ message.encoderId = String(object.encoderId);
16703
18514
  if (object.filename != null)
16704
18515
  message.filename = String(object.filename);
16705
18516
  if (object.sizeGb != null)
@@ -16733,14 +18544,14 @@ var sesame = $root.sesame = (() => {
16733
18544
  options = {};
16734
18545
  let object = {};
16735
18546
  if (options.defaults) {
16736
- object.encoder = null;
18547
+ object.encoderId = "";
16737
18548
  object.filename = "";
16738
18549
  object.sizeGb = 0;
16739
18550
  object.groupId = "";
16740
18551
  object.recorderType = options.enums === String ? "RECORDER_TYPE_UNSPECIFIED" : 0;
16741
18552
  }
16742
- if (message.encoder != null && message.hasOwnProperty("encoder"))
16743
- object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
18553
+ if (message.encoderId != null && message.hasOwnProperty("encoderId"))
18554
+ object.encoderId = message.encoderId;
16744
18555
  if (message.filename != null && message.hasOwnProperty("filename"))
16745
18556
  object.filename = message.filename;
16746
18557
  if (message.sizeGb != null && message.hasOwnProperty("sizeGb"))
@@ -17033,7 +18844,7 @@ var sesame = $root.sesame = (() => {
17033
18844
  }
17034
18845
  }
17035
18846
  EncodedSrtOutputConfig.prototype.url = "";
17036
- EncodedSrtOutputConfig.prototype.encoder = null;
18847
+ EncodedSrtOutputConfig.prototype.encoderId = "";
17037
18848
  EncodedSrtOutputConfig.create = function create(properties) {
17038
18849
  return new EncodedSrtOutputConfig(properties);
17039
18850
  };
@@ -17045,11 +18856,11 @@ var sesame = $root.sesame = (() => {
17045
18856
  /* id 1, wireType 2 =*/
17046
18857
  10
17047
18858
  ).string(message.url);
17048
- if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
17049
- $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
18859
+ if (message.encoderId != null && Object.hasOwnProperty.call(message, "encoderId"))
18860
+ writer.uint32(
17050
18861
  /* id 2, wireType 2 =*/
17051
18862
  18
17052
- ).fork()).ldelim();
18863
+ ).string(message.encoderId);
17053
18864
  return writer;
17054
18865
  };
17055
18866
  EncodedSrtOutputConfig.encodeDelimited = function encodeDelimited(message, writer) {
@@ -17069,7 +18880,7 @@ var sesame = $root.sesame = (() => {
17069
18880
  break;
17070
18881
  }
17071
18882
  case 2: {
17072
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
18883
+ message.encoderId = reader.string();
17073
18884
  break;
17074
18885
  }
17075
18886
  default:
@@ -17091,10 +18902,9 @@ var sesame = $root.sesame = (() => {
17091
18902
  if (!$util.isString(message.url))
17092
18903
  return "url: string expected";
17093
18904
  }
17094
- if (message.encoder != null && message.hasOwnProperty("encoder")) {
17095
- let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
17096
- if (error)
17097
- return "encoder." + error;
18905
+ if (message.encoderId != null && message.hasOwnProperty("encoderId")) {
18906
+ if (!$util.isString(message.encoderId))
18907
+ return "encoderId: string expected";
17098
18908
  }
17099
18909
  return null;
17100
18910
  };
@@ -17104,11 +18914,8 @@ var sesame = $root.sesame = (() => {
17104
18914
  let message = new $root.sesame.v1.outputs.EncodedSrtOutputConfig();
17105
18915
  if (object.url != null)
17106
18916
  message.url = String(object.url);
17107
- if (object.encoder != null) {
17108
- if (typeof object.encoder !== "object")
17109
- throw TypeError(".sesame.v1.outputs.EncodedSrtOutputConfig.encoder: object expected");
17110
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
17111
- }
18917
+ if (object.encoderId != null)
18918
+ message.encoderId = String(object.encoderId);
17112
18919
  return message;
17113
18920
  };
17114
18921
  EncodedSrtOutputConfig.toObject = function toObject(message, options) {
@@ -17117,12 +18924,12 @@ var sesame = $root.sesame = (() => {
17117
18924
  let object = {};
17118
18925
  if (options.defaults) {
17119
18926
  object.url = "";
17120
- object.encoder = null;
18927
+ object.encoderId = "";
17121
18928
  }
17122
18929
  if (message.url != null && message.hasOwnProperty("url"))
17123
18930
  object.url = message.url;
17124
- if (message.encoder != null && message.hasOwnProperty("encoder"))
17125
- object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
18931
+ if (message.encoderId != null && message.hasOwnProperty("encoderId"))
18932
+ object.encoderId = message.encoderId;
17126
18933
  return object;
17127
18934
  };
17128
18935
  EncodedSrtOutputConfig.prototype.toJSON = function toJSON() {
@@ -17145,7 +18952,7 @@ var sesame = $root.sesame = (() => {
17145
18952
  this[keys[i]] = properties[keys[i]];
17146
18953
  }
17147
18954
  }
17148
- EncodedMoqOutputConfig.prototype.encoder = null;
18955
+ EncodedMoqOutputConfig.prototype.encoderId = "";
17149
18956
  EncodedMoqOutputConfig.prototype.url = "";
17150
18957
  EncodedMoqOutputConfig.prototype.broadcast = "";
17151
18958
  EncodedMoqOutputConfig.prototype.key = "";
@@ -17156,11 +18963,11 @@ var sesame = $root.sesame = (() => {
17156
18963
  EncodedMoqOutputConfig.encode = function encode(message, writer) {
17157
18964
  if (!writer)
17158
18965
  writer = $Writer.create();
17159
- if (message.encoder != null && Object.hasOwnProperty.call(message, "encoder"))
17160
- $root.sesame.v1.outputs.EncoderConfig.encode(message.encoder, writer.uint32(
18966
+ if (message.encoderId != null && Object.hasOwnProperty.call(message, "encoderId"))
18967
+ writer.uint32(
17161
18968
  /* id 1, wireType 2 =*/
17162
18969
  10
17163
- ).fork()).ldelim();
18970
+ ).string(message.encoderId);
17164
18971
  if (message.url != null && Object.hasOwnProperty.call(message, "url"))
17165
18972
  writer.uint32(
17166
18973
  /* id 2, wireType 2 =*/
@@ -17197,7 +19004,7 @@ var sesame = $root.sesame = (() => {
17197
19004
  break;
17198
19005
  switch (tag >>> 3) {
17199
19006
  case 1: {
17200
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.decode(reader, reader.uint32());
19007
+ message.encoderId = reader.string();
17201
19008
  break;
17202
19009
  }
17203
19010
  case 2: {
@@ -17233,10 +19040,9 @@ var sesame = $root.sesame = (() => {
17233
19040
  EncodedMoqOutputConfig.verify = function verify(message) {
17234
19041
  if (typeof message !== "object" || message === null)
17235
19042
  return "object expected";
17236
- if (message.encoder != null && message.hasOwnProperty("encoder")) {
17237
- let error = $root.sesame.v1.outputs.EncoderConfig.verify(message.encoder);
17238
- if (error)
17239
- return "encoder." + error;
19043
+ if (message.encoderId != null && message.hasOwnProperty("encoderId")) {
19044
+ if (!$util.isString(message.encoderId))
19045
+ return "encoderId: string expected";
17240
19046
  }
17241
19047
  if (message.url != null && message.hasOwnProperty("url")) {
17242
19048
  if (!$util.isString(message.url))
@@ -17263,11 +19069,8 @@ var sesame = $root.sesame = (() => {
17263
19069
  if (object instanceof $root.sesame.v1.outputs.EncodedMoqOutputConfig)
17264
19070
  return object;
17265
19071
  let message = new $root.sesame.v1.outputs.EncodedMoqOutputConfig();
17266
- if (object.encoder != null) {
17267
- if (typeof object.encoder !== "object")
17268
- throw TypeError(".sesame.v1.outputs.EncodedMoqOutputConfig.encoder: object expected");
17269
- message.encoder = $root.sesame.v1.outputs.EncoderConfig.fromObject(object.encoder);
17270
- }
19072
+ if (object.encoderId != null)
19073
+ message.encoderId = String(object.encoderId);
17271
19074
  if (object.url != null)
17272
19075
  message.url = String(object.url);
17273
19076
  if (object.broadcast != null)
@@ -17290,13 +19093,13 @@ var sesame = $root.sesame = (() => {
17290
19093
  if (options.arrays || options.defaults)
17291
19094
  object.metadataTracks = [];
17292
19095
  if (options.defaults) {
17293
- object.encoder = null;
19096
+ object.encoderId = "";
17294
19097
  object.url = "";
17295
19098
  object.broadcast = "";
17296
19099
  object.key = "";
17297
19100
  }
17298
- if (message.encoder != null && message.hasOwnProperty("encoder"))
17299
- object.encoder = $root.sesame.v1.outputs.EncoderConfig.toObject(message.encoder, options);
19101
+ if (message.encoderId != null && message.hasOwnProperty("encoderId"))
19102
+ object.encoderId = message.encoderId;
17300
19103
  if (message.url != null && message.hasOwnProperty("url"))
17301
19104
  object.url = message.url;
17302
19105
  if (message.broadcast != null && message.hasOwnProperty("broadcast"))
@@ -18352,6 +20155,7 @@ var sesame = $root.sesame = (() => {
18352
20155
  OutputStatus.prototype.url = "";
18353
20156
  OutputStatus.prototype.bufferSize = 0;
18354
20157
  OutputStatus.prototype.srtStats = null;
20158
+ OutputStatus.prototype.encoderId = "";
18355
20159
  let $oneOfFields;
18356
20160
  Object.defineProperty(OutputStatus.prototype, "_msg", {
18357
20161
  get: $util.oneOfGetter($oneOfFields = ["msg"]),
@@ -18402,6 +20206,11 @@ var sesame = $root.sesame = (() => {
18402
20206
  /* id 7, wireType 2 =*/
18403
20207
  58
18404
20208
  ).fork()).ldelim();
20209
+ if (message.encoderId != null && Object.hasOwnProperty.call(message, "encoderId"))
20210
+ writer.uint32(
20211
+ /* id 8, wireType 2 =*/
20212
+ 66
20213
+ ).string(message.encoderId);
18405
20214
  return writer;
18406
20215
  };
18407
20216
  OutputStatus.encodeDelimited = function encodeDelimited(message, writer) {
@@ -18444,6 +20253,10 @@ var sesame = $root.sesame = (() => {
18444
20253
  message.srtStats = $root.sesame.v1.status.SRTSendStatistics.decode(reader, reader.uint32());
18445
20254
  break;
18446
20255
  }
20256
+ case 8: {
20257
+ message.encoderId = reader.string();
20258
+ break;
20259
+ }
18447
20260
  default:
18448
20261
  reader.skipType(tag & 7);
18449
20262
  break;
@@ -18512,6 +20325,10 @@ var sesame = $root.sesame = (() => {
18512
20325
  return "srtStats." + error;
18513
20326
  }
18514
20327
  }
20328
+ if (message.encoderId != null && message.hasOwnProperty("encoderId")) {
20329
+ if (!$util.isString(message.encoderId))
20330
+ return "encoderId: string expected";
20331
+ }
18515
20332
  return null;
18516
20333
  };
18517
20334
  OutputStatus.fromObject = function fromObject(object) {
@@ -18607,6 +20424,8 @@ var sesame = $root.sesame = (() => {
18607
20424
  throw TypeError(".sesame.v1.outputs.OutputStatus.srtStats: object expected");
18608
20425
  message.srtStats = $root.sesame.v1.status.SRTSendStatistics.fromObject(object.srtStats);
18609
20426
  }
20427
+ if (object.encoderId != null)
20428
+ message.encoderId = String(object.encoderId);
18610
20429
  return message;
18611
20430
  };
18612
20431
  OutputStatus.toObject = function toObject(message, options) {
@@ -18619,6 +20438,7 @@ var sesame = $root.sesame = (() => {
18619
20438
  object.state = options.enums === String ? "CONNECTION_STATE_UNSPECIFIED" : 0;
18620
20439
  object.url = "";
18621
20440
  object.bufferSize = 0;
20441
+ object.encoderId = "";
18622
20442
  }
18623
20443
  if (message.id != null && message.hasOwnProperty("id"))
18624
20444
  object.id = message.id;
@@ -18640,6 +20460,8 @@ var sesame = $root.sesame = (() => {
18640
20460
  if (options.oneofs)
18641
20461
  object._srtStats = "srtStats";
18642
20462
  }
20463
+ if (message.encoderId != null && message.hasOwnProperty("encoderId"))
20464
+ object.encoderId = message.encoderId;
18643
20465
  return object;
18644
20466
  };
18645
20467
  OutputStatus.prototype.toJSON = function toJSON() {
@@ -18653,6 +20475,241 @@ var sesame = $root.sesame = (() => {
18653
20475
  };
18654
20476
  return OutputStatus;
18655
20477
  }();
20478
+ outputs.EncoderStatus = function() {
20479
+ function EncoderStatus(properties) {
20480
+ if (properties) {
20481
+ for (let keys = Object.keys(properties), i = 0; i < keys.length; ++i)
20482
+ if (properties[keys[i]] != null)
20483
+ this[keys[i]] = properties[keys[i]];
20484
+ }
20485
+ }
20486
+ EncoderStatus.prototype.id = "";
20487
+ EncoderStatus.prototype.type = 0;
20488
+ EncoderStatus.prototype.state = 0;
20489
+ EncoderStatus.prototype.msg = null;
20490
+ EncoderStatus.prototype.compositionId = "";
20491
+ let $oneOfFields;
20492
+ Object.defineProperty(EncoderStatus.prototype, "_msg", {
20493
+ get: $util.oneOfGetter($oneOfFields = ["msg"]),
20494
+ set: $util.oneOfSetter($oneOfFields)
20495
+ });
20496
+ EncoderStatus.create = function create(properties) {
20497
+ return new EncoderStatus(properties);
20498
+ };
20499
+ EncoderStatus.encode = function encode(message, writer) {
20500
+ if (!writer)
20501
+ writer = $Writer.create();
20502
+ if (message.id != null && Object.hasOwnProperty.call(message, "id"))
20503
+ writer.uint32(
20504
+ /* id 1, wireType 2 =*/
20505
+ 10
20506
+ ).string(message.id);
20507
+ if (message.type != null && Object.hasOwnProperty.call(message, "type"))
20508
+ writer.uint32(
20509
+ /* id 2, wireType 0 =*/
20510
+ 16
20511
+ ).int32(message.type);
20512
+ if (message.state != null && Object.hasOwnProperty.call(message, "state"))
20513
+ writer.uint32(
20514
+ /* id 3, wireType 0 =*/
20515
+ 24
20516
+ ).int32(message.state);
20517
+ if (message.msg != null && Object.hasOwnProperty.call(message, "msg"))
20518
+ writer.uint32(
20519
+ /* id 4, wireType 2 =*/
20520
+ 34
20521
+ ).string(message.msg);
20522
+ if (message.compositionId != null && Object.hasOwnProperty.call(message, "compositionId"))
20523
+ writer.uint32(
20524
+ /* id 5, wireType 2 =*/
20525
+ 42
20526
+ ).string(message.compositionId);
20527
+ return writer;
20528
+ };
20529
+ EncoderStatus.encodeDelimited = function encodeDelimited(message, writer) {
20530
+ return this.encode(message, writer).ldelim();
20531
+ };
20532
+ EncoderStatus.decode = function decode(reader, length, error) {
20533
+ if (!(reader instanceof $Reader))
20534
+ reader = $Reader.create(reader);
20535
+ let end = length === void 0 ? reader.len : reader.pos + length, message = new $root.sesame.v1.outputs.EncoderStatus();
20536
+ while (reader.pos < end) {
20537
+ let tag = reader.uint32();
20538
+ if (tag === error)
20539
+ break;
20540
+ switch (tag >>> 3) {
20541
+ case 1: {
20542
+ message.id = reader.string();
20543
+ break;
20544
+ }
20545
+ case 2: {
20546
+ message.type = reader.int32();
20547
+ break;
20548
+ }
20549
+ case 3: {
20550
+ message.state = reader.int32();
20551
+ break;
20552
+ }
20553
+ case 4: {
20554
+ message.msg = reader.string();
20555
+ break;
20556
+ }
20557
+ case 5: {
20558
+ message.compositionId = reader.string();
20559
+ break;
20560
+ }
20561
+ default:
20562
+ reader.skipType(tag & 7);
20563
+ break;
20564
+ }
20565
+ }
20566
+ return message;
20567
+ };
20568
+ EncoderStatus.decodeDelimited = function decodeDelimited(reader) {
20569
+ if (!(reader instanceof $Reader))
20570
+ reader = new $Reader(reader);
20571
+ return this.decode(reader, reader.uint32());
20572
+ };
20573
+ EncoderStatus.verify = function verify(message) {
20574
+ if (typeof message !== "object" || message === null)
20575
+ return "object expected";
20576
+ let properties = {};
20577
+ if (message.id != null && message.hasOwnProperty("id")) {
20578
+ if (!$util.isString(message.id))
20579
+ return "id: string expected";
20580
+ }
20581
+ if (message.type != null && message.hasOwnProperty("type"))
20582
+ switch (message.type) {
20583
+ default:
20584
+ return "type: enum value expected";
20585
+ case 0:
20586
+ case 1:
20587
+ break;
20588
+ }
20589
+ if (message.state != null && message.hasOwnProperty("state"))
20590
+ switch (message.state) {
20591
+ default:
20592
+ return "state: enum value expected";
20593
+ case 0:
20594
+ case 1:
20595
+ case 2:
20596
+ case 3:
20597
+ case 4:
20598
+ case 5:
20599
+ case 6:
20600
+ break;
20601
+ }
20602
+ if (message.msg != null && message.hasOwnProperty("msg")) {
20603
+ properties._msg = 1;
20604
+ if (!$util.isString(message.msg))
20605
+ return "msg: string expected";
20606
+ }
20607
+ if (message.compositionId != null && message.hasOwnProperty("compositionId")) {
20608
+ if (!$util.isString(message.compositionId))
20609
+ return "compositionId: string expected";
20610
+ }
20611
+ return null;
20612
+ };
20613
+ EncoderStatus.fromObject = function fromObject(object) {
20614
+ if (object instanceof $root.sesame.v1.outputs.EncoderStatus)
20615
+ return object;
20616
+ let message = new $root.sesame.v1.outputs.EncoderStatus();
20617
+ if (object.id != null)
20618
+ message.id = String(object.id);
20619
+ switch (object.type) {
20620
+ default:
20621
+ if (typeof object.type === "number") {
20622
+ message.type = object.type;
20623
+ break;
20624
+ }
20625
+ break;
20626
+ case "ENCODER_TYPE_UNSPECIFIED":
20627
+ case 0:
20628
+ message.type = 0;
20629
+ break;
20630
+ case "ENCODER_TYPE_VIDEO":
20631
+ case 1:
20632
+ message.type = 1;
20633
+ break;
20634
+ }
20635
+ switch (object.state) {
20636
+ default:
20637
+ if (typeof object.state === "number") {
20638
+ message.state = object.state;
20639
+ break;
20640
+ }
20641
+ break;
20642
+ case "CONNECTION_STATE_UNSPECIFIED":
20643
+ case 0:
20644
+ message.state = 0;
20645
+ break;
20646
+ case "CONNECTION_STATE_INITIALIZING":
20647
+ case 1:
20648
+ message.state = 1;
20649
+ break;
20650
+ case "CONNECTION_STATE_CONNECTING":
20651
+ case 2:
20652
+ message.state = 2;
20653
+ break;
20654
+ case "CONNECTION_STATE_ONLINE":
20655
+ case 3:
20656
+ message.state = 3;
20657
+ break;
20658
+ case "CONNECTION_STATE_DEGRADED":
20659
+ case 4:
20660
+ message.state = 4;
20661
+ break;
20662
+ case "CONNECTION_STATE_OFFLINE":
20663
+ case 5:
20664
+ message.state = 5;
20665
+ break;
20666
+ case "CONNECTION_STATE_ERROR":
20667
+ case 6:
20668
+ message.state = 6;
20669
+ break;
20670
+ }
20671
+ if (object.msg != null)
20672
+ message.msg = String(object.msg);
20673
+ if (object.compositionId != null)
20674
+ message.compositionId = String(object.compositionId);
20675
+ return message;
20676
+ };
20677
+ EncoderStatus.toObject = function toObject(message, options) {
20678
+ if (!options)
20679
+ options = {};
20680
+ let object = {};
20681
+ if (options.defaults) {
20682
+ object.id = "";
20683
+ object.type = options.enums === String ? "ENCODER_TYPE_UNSPECIFIED" : 0;
20684
+ object.state = options.enums === String ? "CONNECTION_STATE_UNSPECIFIED" : 0;
20685
+ object.compositionId = "";
20686
+ }
20687
+ if (message.id != null && message.hasOwnProperty("id"))
20688
+ object.id = message.id;
20689
+ if (message.type != null && message.hasOwnProperty("type"))
20690
+ object.type = options.enums === String ? $root.sesame.v1.outputs.EncoderType[message.type] === void 0 ? message.type : $root.sesame.v1.outputs.EncoderType[message.type] : message.type;
20691
+ if (message.state != null && message.hasOwnProperty("state"))
20692
+ object.state = options.enums === String ? $root.sesame.v1.common.ConnectionState[message.state] === void 0 ? message.state : $root.sesame.v1.common.ConnectionState[message.state] : message.state;
20693
+ if (message.msg != null && message.hasOwnProperty("msg")) {
20694
+ object.msg = message.msg;
20695
+ if (options.oneofs)
20696
+ object._msg = "msg";
20697
+ }
20698
+ if (message.compositionId != null && message.hasOwnProperty("compositionId"))
20699
+ object.compositionId = message.compositionId;
20700
+ return object;
20701
+ };
20702
+ EncoderStatus.prototype.toJSON = function toJSON() {
20703
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
20704
+ };
20705
+ EncoderStatus.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
20706
+ if (typeUrlPrefix === void 0) {
20707
+ typeUrlPrefix = "type.googleapis.com";
20708
+ }
20709
+ return typeUrlPrefix + "/sesame.v1.outputs.EncoderStatus";
20710
+ };
20711
+ return EncoderStatus;
20712
+ }();
18656
20713
  return outputs;
18657
20714
  }();
18658
20715
  v1.compositor = function() {
@@ -23847,11 +25904,12 @@ var CommandList = class {
23847
25904
  }
23848
25905
  applyTransaction(transaction) {
23849
25906
  this.cl.commandList.forEach((item) => {
23850
- if (transaction.transactionId !== void 0) {
25907
+ if (transaction.transactionId !== void 0 && item.transactionId == null) {
23851
25908
  item.transactionId = transaction.transactionId;
23852
25909
  }
23853
25910
  if (transaction.dependencies !== void 0) {
23854
- item.transactionDeps = item.transactionDeps ? item.transactionDeps.concat(transaction.dependencies) : transaction.dependencies;
25911
+ const existing = item.transactionDeps ?? [];
25912
+ item.transactionDeps = [...new Set(existing.concat(transaction.dependencies))];
23855
25913
  }
23856
25914
  });
23857
25915
  }
@@ -24034,7 +26092,7 @@ var CommandList = class {
24034
26092
  }
24035
26093
  }
24036
26094
  item.updateSourceTransport = transportCmd;
24037
- return this.add(item, timeOffsetMs, { transactionId: msg.transactionId, dependencies: [] });
26095
+ return this.add(item, timeOffsetMs, { transactionId: msg.transactionId, dependencies: msg.dependencies });
24038
26096
  }
24039
26097
  sourceUpdate(id, cfg, timeOffsetMs) {
24040
26098
  let item = new sesame.v1.commands.CommandListItem();
@@ -24070,6 +26128,21 @@ var CommandList = class {
24070
26128
  item.removeOutput = { id };
24071
26129
  return this.add(item, timeOffsetMs);
24072
26130
  }
26131
+ encoderAdd(id, cfg, timeOffsetMs) {
26132
+ let item = new sesame.v1.commands.CommandListItem();
26133
+ item.addEncoder = { id, ...cfg };
26134
+ return this.add(item, timeOffsetMs);
26135
+ }
26136
+ encoderUpdate(id, cfg, timeOffsetMs) {
26137
+ let item = new sesame.v1.commands.CommandListItem();
26138
+ item.updateEncoder = { id, ...cfg };
26139
+ return this.add(item, timeOffsetMs);
26140
+ }
26141
+ encoderRemove(id, timeOffsetMs) {
26142
+ let item = new sesame.v1.commands.CommandListItem();
26143
+ item.removeEncoder = { id };
26144
+ return this.add(item, timeOffsetMs);
26145
+ }
24073
26146
  audioMixerAdd(id, cfg, timeOffsetMs) {
24074
26147
  let item = new sesame.v1.commands.CommandListItem();
24075
26148
  item.addAudioMixer = { id, config: cfg };
@@ -24786,15 +26859,21 @@ var EaseKind = /* @__PURE__ */ ((EaseKind2) => {
24786
26859
  EaseKind2["BACK_INOUT"] = "backInOut";
24787
26860
  return EaseKind2;
24788
26861
  })(EaseKind || {});
26862
+ function appendQueryParam(url, key, value) {
26863
+ if (!value) return url;
26864
+ const separator = url.includes("?") ? "&" : "?";
26865
+ return `${url}${separator}${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
26866
+ }
24789
26867
  var SesameClient = class extends import_events3.EventEmitter {
24790
- constructor(portOrUrl) {
26868
+ constructor(portOrUrl, clientOptions = {}) {
24791
26869
  super();
24792
26870
  this.subscriptions = [];
24793
26871
  this.onMediaPacket = () => {
24794
26872
  };
24795
26873
  this.onCallbackMessage = () => {
24796
26874
  };
24797
- const url = typeof portOrUrl === "number" ? `ws://127.0.0.1:${portOrUrl}/api` : portOrUrl;
26875
+ const baseUrl = typeof portOrUrl === "number" ? `ws://127.0.0.1:${portOrUrl}/api` : portOrUrl;
26876
+ const url = appendQueryParam(baseUrl, "client", clientOptions.wsClientLabel ?? "");
24798
26877
  this.conn = new SesameConnection({
24799
26878
  url,
24800
26879
  autoConnect: true,