@stinkycomputing/sesame-api-client 1.5.8 → 1.5.10

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.
@@ -70,9 +70,9 @@ Per-channel property updates. Absent optional fields are left unchanged.
70
70
  | Field | Type | Description |
71
71
  |-------|------|-------------|
72
72
  | `channel_id` | string | |
73
- | `level` | optional float | |
74
- | `pan` | optional float | |
75
- | `plugins` | repeated AudioPluginControlRequest | |
73
+ | `level` | optional float | |
74
+ | `pan` | optional float | |
75
+ | `plugins` | repeated AudioPluginControlRequest | |
76
76
 
77
77
 
78
78
  ### AudioChannelPluginStatus
@@ -110,9 +110,9 @@ Audio channel status.
110
110
  | `level` | float | |
111
111
  | `pan` | float | |
112
112
  | `vu` | repeated float | |
113
- | `has_data` | bool | |
114
- | `read_errors` | uint32 | |
115
- | `plugins` | repeated AudioChannelPluginStatus | |
113
+ | `has_data` | bool | |
114
+ | `read_errors` | uint32 | |
115
+ | `plugins` | repeated AudioChannelPluginStatus | |
116
116
 
117
117
 
118
118
  ### AudioControlRequest
@@ -121,15 +121,15 @@ Payload for DATA_TYPE_AUDIO_CONTROL frames (transport → server).
121
121
 
122
122
  The target mixer ID is NOT included here — it is resolved server-side from
123
123
  the MetadataRouter binding configured for this source track. This mirrors
124
- AudioMixerStatus: to build a control message, take an AudioMixerStatus,
125
- pick the channels you want to change, copy their `id` into `channel_id`,
126
- and set the desired `level`/`pan`/plugin params. Omit fields you don't
127
- want to change (optional fields that are absent are left unchanged).
124
+ AudioMixerStatus: to build a control message, take an AudioMixerStatus,
125
+ pick the channels you want to change, copy their `id` into `channel_id`,
126
+ and set the desired `level`/`pan`/plugin params. Omit fields you don't
127
+ want to change (optional fields that are absent are left unchanged).
128
128
 
129
129
 
130
- | Field | Type | Description |
131
- |-------|------|-------------|
132
- | `channels` | repeated AudioChannelControlRequest | |
130
+ | Field | Type | Description |
131
+ |-------|------|-------------|
132
+ | `channels` | repeated AudioChannelControlRequest | |
133
133
 
134
134
 
135
135
  ### AudioMixerAddRequest
@@ -154,9 +154,9 @@ Audio mixer channel configuration.
154
154
  | `source_id` | string | |
155
155
  | `channel_type` | AudioMixerChannelType | |
156
156
  | `source_channels` | repeated uint32 | |
157
- | `level` | float | |
158
- | `pan` | float | |
159
- | `plugins` | repeated AudioPlugin | |
157
+ | `level` | float | |
158
+ | `pan` | float | |
159
+ | `plugins` | repeated AudioPlugin | |
160
160
 
161
161
 
162
162
  ### AudioMixerConfig
@@ -166,9 +166,9 @@ Audio mixer configuration.
166
166
 
167
167
  | Field | Type | Description |
168
168
  |-------|------|-------------|
169
- | `channels` | repeated AudioMixerChannel | |
170
- | `output_type` | AudioMixerChannelType | |
171
- | `order` | uint32 | |
169
+ | `channels` | repeated AudioMixerChannel | |
170
+ | `output_type` | AudioMixerChannelType | |
171
+ | `order` | uint32 | |
172
172
 
173
173
 
174
174
  ### AudioMixerRemoveRequest
@@ -189,9 +189,9 @@ Audio mixer status.
189
189
  | Field | Type | Description |
190
190
  |-------|------|-------------|
191
191
  | `id` | string | |
192
- | `output_type` | AudioMixerChannelType | |
193
- | `vu` | repeated float | |
194
- | `channels` | repeated AudioChannelStatus | |
192
+ | `output_type` | AudioMixerChannelType | |
193
+ | `vu` | repeated float | |
194
+ | `channels` | repeated AudioChannelStatus | |
195
195
 
196
196
 
197
197
  ### AudioMixerUpdateRequest
@@ -311,11 +311,12 @@ Each item represents a single command to execute at a specific time offset.
311
311
  | `update_source_transport` | sesame.v1.sources.SourceTransportCommand | |
312
312
  | `load_playlist` | sesame.v1.sources.LoadPlaylistRequest | |
313
313
  | `eject_playlist` | sesame.v1.sources.EjectPlaylistRequest | |
314
- | `callback` | sesame.v1.common.Callback | |
315
- | `set_source_metadata` | sesame.v1.sources.SourceMetadataSetRequest | |
316
- | `set_metadata_bindings` | SetMetadataBindingsRequest | |
317
- | `transaction_id` | optional uint32 | |
318
- | `transaction_deps` | repeated uint32 | |
314
+ | `callback` | sesame.v1.common.Callback | |
315
+ | `set_source_metadata` | sesame.v1.sources.SourceMetadataSetRequest | |
316
+ | `set_metadata_bindings` | SetMetadataBindingsRequest | |
317
+ | `take_playlist` | sesame.v1.sources.TakePlaylistRequest | |
318
+ | `transaction_id` | optional uint32 | |
319
+ | `transaction_deps` | repeated uint32 | |
319
320
 
320
321
 
321
322
  ### MetadataBinding
@@ -877,7 +878,7 @@ Encoder preset.
877
878
  | 3 | `ENCODER_PRESET_HIGH_QUALITY` | High-quality tune |
878
879
 
879
880
 
880
- ### OutputType
881
+ ### OutputType
881
882
 
882
883
  Type of output.
883
884
 
@@ -923,10 +924,10 @@ Decklink output configuration.
923
924
 
924
925
  | Field | Type | Description |
925
926
  |-------|------|-------------|
926
- | `encoder` | EncoderConfig | |
927
- | `url` | string | |
928
- | `broadcast` | string | |
929
- | `key` | string | |
927
+ | `encoder` | EncoderConfig | |
928
+ | `url` | string | |
929
+ | `broadcast` | string | |
930
+ | `key` | string | |
930
931
  | `metadata_tracks` | repeated string | |
931
932
 
932
933
 
@@ -937,10 +938,10 @@ Decklink output configuration.
937
938
 
938
939
  | Field | Type | Description |
939
940
  |-------|------|-------------|
940
- | `encoder` | EncoderConfig | |
941
- | `filename` | string | |
942
- | `size_gb` | uint32 | |
943
- | `group_id` | string | |
941
+ | `encoder` | EncoderConfig | |
942
+ | `filename` | string | |
943
+ | `size_gb` | uint32 | |
944
+ | `group_id` | string | |
944
945
  | `recorder_type` | RecorderType | |
945
946
 
946
947
 
@@ -949,10 +950,10 @@ Decklink output configuration.
949
950
 
950
951
 
951
952
 
952
- | Field | Type | Description |
953
- |-------|------|-------------|
954
- | `url` | string | |
955
- | `encoder` | EncoderConfig | |
953
+ | Field | Type | Description |
954
+ |-------|------|-------------|
955
+ | `url` | string | |
956
+ | `encoder` | EncoderConfig | |
956
957
 
957
958
 
958
959
  ### EncodedSuperSlowMoRecorderOutputConfig
@@ -978,14 +979,14 @@ Type-specific output payloads
978
979
  -----------------------------------------------------------------------------
979
980
 
980
981
 
981
- | Field | Type | Description |
982
- |-------|------|-------------|
983
- | `channel` | string | |
984
- | `encoder` | EncoderConfig | |
985
- | `metadata_tracks` | repeated string | |
986
-
987
-
988
- ### EncoderConfig
982
+ | Field | Type | Description |
983
+ |-------|------|-------------|
984
+ | `channel` | string | |
985
+ | `encoder` | EncoderConfig | |
986
+ | `metadata_tracks` | repeated string | |
987
+
988
+
989
+ ### EncoderConfig
989
990
 
990
991
  Encoded output configuration (WebSocket, SRT, MoQ).
991
992
 
@@ -998,7 +999,7 @@ Encoded output configuration (WebSocket, SRT, MoQ).
998
999
  | `keyframe_interval` | uint32 | |
999
1000
  | `width` | uint32 | |
1000
1001
  | `height` | uint32 | |
1001
- | `fps` | float | |
1002
+ | `fps` | float | |
1002
1003
 
1003
1004
 
1004
1005
  ### KeyframeRequest
@@ -1053,9 +1054,9 @@ Output status information.
1053
1054
  | `type` | OutputType | |
1054
1055
  | `state` | sesame.v1.common.ConnectionState | |
1055
1056
  | `msg` | optional string | |
1056
- | `url` | string | |
1057
- | `buffer_size` | uint32 | |
1058
- | `srt_stats` | optional sesame.v1.status.SRTSendStatistics | |
1057
+ | `url` | string | |
1058
+ | `buffer_size` | uint32 | |
1059
+ | `srt_stats` | optional sesame.v1.status.SRTSendStatistics | |
1059
1060
 
1060
1061
 
1061
1062
  ### OutputUpdateRequest
@@ -1503,10 +1504,10 @@ Source transport command type.
1503
1504
  | 10 | `SOURCE_TRANSPORT_CMD_POST_ROLL` | Post-roll |
1504
1505
  | 11 | `SOURCE_TRANSPORT_CMD_PRE_ROLL` | Pre-roll |
1505
1506
  | 12 | `SOURCE_TRANSPORT_CMD_NEXT` | Next item |
1506
- | 13 | `SOURCE_TRANSPORT_CMD_SKIP_NEXT` | Skip to next |
1507
- | 14 | `SOURCE_TRANSPORT_CMD_TRANSITIONS_DISABLED` | Disable transitions |
1508
- | 15 | `SOURCE_TRANSPORT_CMD_SET_SCRUBBING` | Set scrubbing mode |
1509
- | 16 | `SOURCE_TRANSPORT_CMD_SET_END_NOTIFICATION` | Set near-end callback threshold (int64 µs before end; 0 = disabled) |
1507
+ | 13 | `SOURCE_TRANSPORT_CMD_SKIP_NEXT` | Skip to next |
1508
+ | 14 | `SOURCE_TRANSPORT_CMD_TRANSITIONS_DISABLED` | Disable transitions |
1509
+ | 15 | `SOURCE_TRANSPORT_CMD_SET_SCRUBBING` | Set scrubbing mode |
1510
+ | 16 | `SOURCE_TRANSPORT_CMD_SET_END_NOTIFICATION` | Set near-end callback threshold (int64 µs before end; 0 = disabled) |
1510
1511
 
1511
1512
 
1512
1513
  ### SourceTransportState
@@ -1799,6 +1800,27 @@ Request to update an existing source.
1799
1800
  | `device_name` | string | |
1800
1801
 
1801
1802
 
1803
+ ### TakePlaylistRequest
1804
+
1805
+ Request to take directly to a recorder playlist.
1806
+ A single clip is represented as a playlist with one item. The request-level
1807
+ transition_time_us is the outer transition from the current source state into
1808
+ this playlist; each PlaylistItem.transition_time_us remains the transition
1809
+ between items inside the playlist.
1810
+
1811
+
1812
+ | Field | Type | Description |
1813
+ |-------|------|-------------|
1814
+ | `source_id` | string | |
1815
+ | `user_playlist_id` | string | |
1816
+ | `items` | repeated sesame.v1.recorder.PlaylistItem | |
1817
+ | `start_time_us` | optional int64 | |
1818
+ | `start_index` | optional int64 | |
1819
+ | `material_pos_us` | optional int64 | |
1820
+ | `transition_time_us` | optional int64 | |
1821
+ | `playback_speed` | optional float | |
1822
+
1823
+
1802
1824
  ### TransportControlRequest
1803
1825
 
1804
1826
  Payload for DATA_TYPE_TRANSPORT_CONTROL frames (transport → server).
@@ -2065,9 +2087,9 @@ Overall system status.
2065
2087
  | `render_status_cpu` | FrameTiming | |
2066
2088
  | `sources` | repeated sesame.v1.sources.SourceStatus | |
2067
2089
  | `compositions` | repeated CompositorStatus | |
2068
- | `audio_mixes` | repeated sesame.v1.audio.AudioMixerStatus | |
2069
- | `outputs` | repeated sesame.v1.outputs.OutputStatus | |
2070
- | `recorders` | repeated sesame.v1.recorder.RecorderStatus | |
2090
+ | `audio_mixes` | repeated sesame.v1.audio.AudioMixerStatus | |
2091
+ | `outputs` | repeated sesame.v1.outputs.OutputStatus | |
2092
+ | `recorders` | repeated sesame.v1.recorder.RecorderStatus | |
2071
2093
 
2072
2094
 
2073
2095
  ### SubscriptionRequest
@@ -2103,10 +2125,10 @@ Transport event (source playback state change).
2103
2125
  | `clip_id` | uint64 | |
2104
2126
  | `clip_position_us` | int64 | |
2105
2127
  | `clip_duration_us` | int64 | |
2106
- | `preroll` | uint32 | |
2107
- | `postroll` | uint32 | |
2108
- | `metadata` | sesame.v1.common.TransportMetadata | |
2109
- | `near_end` | bool | True in the single event fired when the end-notification threshold is crossed |
2128
+ | `preroll` | uint32 | |
2129
+ | `postroll` | uint32 | |
2130
+ | `metadata` | sesame.v1.common.TransportMetadata | |
2131
+ | `near_end` | bool | True in the single event fired when the end-notification threshold is crossed |
2110
2132
 
2111
2133
 
2112
2134
  ---
@@ -2324,14 +2346,14 @@ Properties are set via `PropertySetRequest` or animated via `PropertyAnimateRequ
2324
2346
 
2325
2347
  The server disambiguates these two cases by whether `address` contains the `::` delimiter: if it does, the address is split into channel ID and plugin ID, and `property` is parsed as a numeric param ID; otherwise the full `address` string is used as the channel ID for a named channel property.
2326
2348
 
2327
- | Property | Type | Description |
2328
- |----------|------|-------------|
2329
- | `level` | float | Channel level (0-1) |
2330
- | `pan` | float | Pan position (-1 to 1) |
2331
- | `mute` | bool | Mute channel |
2332
- | `source_channels` | vec4 | Source channel routing |
2333
- | `source_id` | string | Source ID |
2334
- | `<param_id>` | float | Plugin parameter — `address` must be `channel_id::plugin_id`, `property` is the numeric param ID |
2349
+ | Property | Type | Description |
2350
+ |----------|------|-------------|
2351
+ | `level` | float | Channel level (0-1) |
2352
+ | `pan` | float | Pan position (-1 to 1) |
2353
+ | `mute` | bool | Mute channel |
2354
+ | `source_channels` | vec4 | Source channel routing |
2355
+ | `source_id` | string | Source ID |
2356
+ | `<param_id>` | float | Plugin parameter — `address` must be `channel_id::plugin_id`, `property` is the numeric param ID |
2335
2357
 
2336
2358
  **Level animation:** use `propertyAnimate` with `ANIM_MODE_STATE_FROM` to fade from the current level. For an instant cut (no transition), `propertySet` is preferred — a zero-duration `propertyAnimate` is clamped to 1 ms by the server rather than producing an instant cut.
2337
2359
 
@@ -2357,11 +2379,11 @@ client.addSubscription(sesame.v1.common.EventTopic.EVENT_TOPIC_TRANSPORT, callba
2357
2379
  client.addSubscription(sesame.v1.common.EventTopic.EVENT_TOPIC_JOB, callback);
2358
2380
  ```
2359
2381
 
2360
- | Topic | Event type | When fired |
2361
- |-------|-----------|------------|
2362
- | `EVENT_TOPIC_ERROR` | ErrorEvent | Engine error |
2363
- | `EVENT_TOPIC_TRANSPORT` | TransportEvent | Source playback state change; also fired once per playback run with `near_end=true` when the end-notification threshold is crossed |
2364
- | `EVENT_TOPIC_CALLBACK` | Callback | Client callback command echoed |
2382
+ | Topic | Event type | When fired |
2383
+ |-------|-----------|------------|
2384
+ | `EVENT_TOPIC_ERROR` | ErrorEvent | Engine error |
2385
+ | `EVENT_TOPIC_TRANSPORT` | TransportEvent | Source playback state change; also fired once per playback run with `near_end=true` when the end-notification threshold is crossed |
2386
+ | `EVENT_TOPIC_CALLBACK` | Callback | Client callback command echoed |
2365
2387
  | `EVENT_TOPIC_JOB` | Job | Job lifecycle change + progress (~2 Hz) |
2366
2388
  | `EVENT_TOPIC_RECORDER` | RecorderEvent | Recorder online/offline |
2367
2389
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stinkycomputing/sesame-api-client",
3
- "version": "1.5.8",
3
+ "version": "1.5.10",
4
4
  "description": "Sesame API client library with protobuf definitions and command list helpers",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",