@stinkycomputing/sesame-api-client 1.5.0-alpha.1 → 1.5.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +422 -137
- package/dist/index.browser.mjs +87 -0
- package/dist/index.browser.mjs.map +2 -2
- package/dist/index.cjs +92 -0
- package/dist/index.cjs.map +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.mjs +87 -0
- package/dist/index.mjs.map +2 -2
- package/dist/proto/api.d.ts +2 -1
- package/dist/proto/api.js +7 -0
- package/dist/sesame-wire-protocol.d.ts +81 -0
- package/dist/sesame-wire-protocol.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -33,6 +33,7 @@ __export(index_exports, {
|
|
|
33
33
|
CodecType: () => CodecType,
|
|
34
34
|
CommandList: () => CommandList,
|
|
35
35
|
ConnectionState: () => ConnectionState,
|
|
36
|
+
DataType: () => DataType,
|
|
36
37
|
EaseKind: () => EaseKind,
|
|
37
38
|
Event: () => Event,
|
|
38
39
|
FrameHeader: () => FrameHeader,
|
|
@@ -47,8 +48,12 @@ __export(index_exports, {
|
|
|
47
48
|
SesameConnection: () => SesameConnection,
|
|
48
49
|
StatusApi: () => StatusApi,
|
|
49
50
|
WireProtocol: () => WireProtocol,
|
|
51
|
+
buildAudioControlFrame: () => buildAudioControlFrame,
|
|
52
|
+
buildBinaryDataFrame: () => buildBinaryDataFrame,
|
|
53
|
+
buildTransportControlFrame: () => buildTransportControlFrame,
|
|
50
54
|
getLogger: () => getLogger,
|
|
51
55
|
log: () => log,
|
|
56
|
+
parseDataFrame: () => parseDataFrame,
|
|
52
57
|
sesame: () => sesame,
|
|
53
58
|
setLogger: () => setLogger,
|
|
54
59
|
waitForEvent: () => waitForEvent
|
|
@@ -23102,6 +23107,7 @@ var sesame = $root.sesame = (() => {
|
|
|
23102
23107
|
values[valuesById[3] = "DATA_TYPE_AUDIO_STATE"] = 3;
|
|
23103
23108
|
values[valuesById[4] = "DATA_TYPE_TRANSPORT_CONTROL"] = 4;
|
|
23104
23109
|
values[valuesById[5] = "DATA_TYPE_AUDIO_CONTROL"] = 5;
|
|
23110
|
+
values[valuesById[6] = "DATA_TYPE_BINARY"] = 6;
|
|
23105
23111
|
return values;
|
|
23106
23112
|
}();
|
|
23107
23113
|
wire.DataFrameData = function() {
|
|
@@ -23177,6 +23183,7 @@ var sesame = $root.sesame = (() => {
|
|
|
23177
23183
|
case 3:
|
|
23178
23184
|
case 4:
|
|
23179
23185
|
case 5:
|
|
23186
|
+
case 6:
|
|
23180
23187
|
break;
|
|
23181
23188
|
}
|
|
23182
23189
|
if (message.trackName != null && message.hasOwnProperty("trackName")) {
|
|
@@ -23220,6 +23227,10 @@ var sesame = $root.sesame = (() => {
|
|
|
23220
23227
|
case 5:
|
|
23221
23228
|
message.dataType = 5;
|
|
23222
23229
|
break;
|
|
23230
|
+
case "DATA_TYPE_BINARY":
|
|
23231
|
+
case 6:
|
|
23232
|
+
message.dataType = 6;
|
|
23233
|
+
break;
|
|
23223
23234
|
}
|
|
23224
23235
|
if (object.trackName != null)
|
|
23225
23236
|
message.trackName = String(object.trackName);
|
|
@@ -23963,9 +23974,85 @@ var import_events2 = require("events");
|
|
|
23963
23974
|
|
|
23964
23975
|
// src/sesame-wire-protocol.ts
|
|
23965
23976
|
var FrameType = sesame.v1.wire.FrameType;
|
|
23977
|
+
var DataType = sesame.v1.wire.DataType;
|
|
23966
23978
|
var FrameHeader = sesame.v1.wire.FrameHeader;
|
|
23967
23979
|
var MediaCodecData = sesame.v1.wire.MediaCodecData;
|
|
23968
23980
|
var CodecType = sesame.v1.common.CodecType;
|
|
23981
|
+
function parseDataFrame(frame) {
|
|
23982
|
+
if (!frame.valid || !frame.header || !frame.payload) return null;
|
|
23983
|
+
if (frame.header.type !== sesame.v1.wire.FrameType.FRAME_TYPE_DATA) return null;
|
|
23984
|
+
const d = frame.header.data;
|
|
23985
|
+
if (!d) return null;
|
|
23986
|
+
const trackName = d.trackName ?? "";
|
|
23987
|
+
const payload = frame.payload;
|
|
23988
|
+
try {
|
|
23989
|
+
switch (d.dataType) {
|
|
23990
|
+
case sesame.v1.wire.DataType.DATA_TYPE_JSON: {
|
|
23991
|
+
const text = new TextDecoder().decode(payload);
|
|
23992
|
+
return { dataType: "json", trackName, json: JSON.parse(text) };
|
|
23993
|
+
}
|
|
23994
|
+
case sesame.v1.wire.DataType.DATA_TYPE_TRANSPORT_STATUS:
|
|
23995
|
+
return {
|
|
23996
|
+
dataType: "transport-status",
|
|
23997
|
+
trackName,
|
|
23998
|
+
event: sesame.v1.status.TransportEvent.decode(payload)
|
|
23999
|
+
};
|
|
24000
|
+
case sesame.v1.wire.DataType.DATA_TYPE_AUDIO_STATE:
|
|
24001
|
+
return {
|
|
24002
|
+
dataType: "audio-state",
|
|
24003
|
+
trackName,
|
|
24004
|
+
status: sesame.v1.audio.AudioMixerStatus.decode(payload)
|
|
24005
|
+
};
|
|
24006
|
+
case sesame.v1.wire.DataType.DATA_TYPE_TRANSPORT_CONTROL:
|
|
24007
|
+
return {
|
|
24008
|
+
dataType: "transport-control",
|
|
24009
|
+
trackName,
|
|
24010
|
+
request: sesame.v1.sources.TransportControlRequest.decode(payload)
|
|
24011
|
+
};
|
|
24012
|
+
case sesame.v1.wire.DataType.DATA_TYPE_AUDIO_CONTROL:
|
|
24013
|
+
return {
|
|
24014
|
+
dataType: "audio-control",
|
|
24015
|
+
trackName,
|
|
24016
|
+
request: sesame.v1.audio.AudioControlRequest.decode(payload)
|
|
24017
|
+
};
|
|
24018
|
+
case sesame.v1.wire.DataType.DATA_TYPE_BINARY:
|
|
24019
|
+
return { dataType: "binary", trackName, data: payload };
|
|
24020
|
+
default:
|
|
24021
|
+
return null;
|
|
24022
|
+
}
|
|
24023
|
+
} catch {
|
|
24024
|
+
return null;
|
|
24025
|
+
}
|
|
24026
|
+
}
|
|
24027
|
+
function buildAudioControlFrame(trackName, request) {
|
|
24028
|
+
const payload = sesame.v1.audio.AudioControlRequest.encode(request).finish();
|
|
24029
|
+
return WireProtocol.serialize(
|
|
24030
|
+
{
|
|
24031
|
+
type: sesame.v1.wire.FrameType.FRAME_TYPE_DATA,
|
|
24032
|
+
data: { dataType: sesame.v1.wire.DataType.DATA_TYPE_AUDIO_CONTROL, trackName }
|
|
24033
|
+
},
|
|
24034
|
+
payload
|
|
24035
|
+
);
|
|
24036
|
+
}
|
|
24037
|
+
function buildTransportControlFrame(trackName, request) {
|
|
24038
|
+
const payload = sesame.v1.sources.TransportControlRequest.encode(request).finish();
|
|
24039
|
+
return WireProtocol.serialize(
|
|
24040
|
+
{
|
|
24041
|
+
type: sesame.v1.wire.FrameType.FRAME_TYPE_DATA,
|
|
24042
|
+
data: { dataType: sesame.v1.wire.DataType.DATA_TYPE_TRANSPORT_CONTROL, trackName }
|
|
24043
|
+
},
|
|
24044
|
+
payload
|
|
24045
|
+
);
|
|
24046
|
+
}
|
|
24047
|
+
function buildBinaryDataFrame(trackName, payload) {
|
|
24048
|
+
return WireProtocol.serialize(
|
|
24049
|
+
{
|
|
24050
|
+
type: sesame.v1.wire.FrameType.FRAME_TYPE_DATA,
|
|
24051
|
+
data: { dataType: sesame.v1.wire.DataType.DATA_TYPE_BINARY, trackName }
|
|
24052
|
+
},
|
|
24053
|
+
payload
|
|
24054
|
+
);
|
|
24055
|
+
}
|
|
23969
24056
|
var PREFIX_SIZE = 4;
|
|
23970
24057
|
var WireProtocol = class {
|
|
23971
24058
|
/**
|
|
@@ -24447,6 +24534,7 @@ var Event = sesame.v1.rpc.Event;
|
|
|
24447
24534
|
CodecType,
|
|
24448
24535
|
CommandList,
|
|
24449
24536
|
ConnectionState,
|
|
24537
|
+
DataType,
|
|
24450
24538
|
EaseKind,
|
|
24451
24539
|
Event,
|
|
24452
24540
|
FrameHeader,
|
|
@@ -24461,8 +24549,12 @@ var Event = sesame.v1.rpc.Event;
|
|
|
24461
24549
|
SesameConnection,
|
|
24462
24550
|
StatusApi,
|
|
24463
24551
|
WireProtocol,
|
|
24552
|
+
buildAudioControlFrame,
|
|
24553
|
+
buildBinaryDataFrame,
|
|
24554
|
+
buildTransportControlFrame,
|
|
24464
24555
|
getLogger,
|
|
24465
24556
|
log,
|
|
24557
|
+
parseDataFrame,
|
|
24466
24558
|
sesame,
|
|
24467
24559
|
setLogger,
|
|
24468
24560
|
waitForEvent
|