@stinkycomputing/sesame-api-client 1.6.0 → 1.8.0
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 +14 -2
- package/dist/command-list.d.ts +1 -1
- package/dist/command-list.d.ts.map +1 -1
- package/dist/index.browser.mjs +790 -51
- package/dist/index.browser.mjs.map +2 -2
- package/dist/index.cjs +790 -51
- package/dist/index.cjs.map +2 -2
- package/dist/index.mjs +790 -51
- package/dist/index.mjs.map +2 -2
- package/dist/proto/api.d.ts +290 -12
- package/dist/proto/api.js +1169 -158
- package/docs/protocol-reference.md +122 -7
- package/package.json +1 -1
|
@@ -920,16 +920,61 @@ Timing information for clips.
|
|
|
920
920
|
|
|
921
921
|
|
|
922
922
|
|
|
923
|
-
###
|
|
923
|
+
### EncoderChromaFormat
|
|
924
924
|
|
|
925
|
-
Encoder
|
|
925
|
+
Encoder chroma subsampling.
|
|
926
926
|
|
|
927
927
|
| Value | Name | Description |
|
|
928
928
|
|-------|------|-------------|
|
|
929
|
-
| 0 | `
|
|
930
|
-
| 1 | `
|
|
931
|
-
|
|
932
|
-
|
|
929
|
+
| 0 | `ENCODER_CHROMA_FORMAT_420` | 4:2:0 (default) |
|
|
930
|
+
| 1 | `ENCODER_CHROMA_FORMAT_444` | 4:4:4 (H264/HEVC only) |
|
|
931
|
+
|
|
932
|
+
|
|
933
|
+
### EncoderMultipass
|
|
934
|
+
|
|
935
|
+
Encoder multipass mode.
|
|
936
|
+
|
|
937
|
+
| Value | Name | Description |
|
|
938
|
+
|-------|------|-------------|
|
|
939
|
+
| 0 | `ENCODER_MULTIPASS_DISABLED` | Single pass |
|
|
940
|
+
| 1 | `ENCODER_MULTIPASS_QUARTER_RESOLUTION` | First pass at quarter resolution |
|
|
941
|
+
| 2 | `ENCODER_MULTIPASS_FULL_RESOLUTION` | First pass at full resolution |
|
|
942
|
+
|
|
943
|
+
|
|
944
|
+
### EncoderProfile
|
|
945
|
+
|
|
946
|
+
Encoder profile. Codec-specific; invalid combinations fall back to the codec default.
|
|
947
|
+
|
|
948
|
+
| Value | Name | Description |
|
|
949
|
+
|-------|------|-------------|
|
|
950
|
+
| 0 | `ENCODER_PROFILE_AUTO` | Codec default (H264/AV1: baseline/main, HEVC: main) |
|
|
951
|
+
| 1 | `ENCODER_PROFILE_BASELINE` | H264 baseline |
|
|
952
|
+
| 2 | `ENCODER_PROFILE_MAIN` | Main profile |
|
|
953
|
+
| 3 | `ENCODER_PROFILE_MAIN10` | HEVC main10 |
|
|
954
|
+
| 4 | `ENCODER_PROFILE_HIGH` | H264 high |
|
|
955
|
+
|
|
956
|
+
|
|
957
|
+
### EncoderRateControl
|
|
958
|
+
|
|
959
|
+
Encoder rate control mode.
|
|
960
|
+
|
|
961
|
+
| Value | Name | Description |
|
|
962
|
+
|-------|------|-------------|
|
|
963
|
+
| 0 | `ENCODER_RATE_CONTROL_UNSPECIFIED` | Unspecified: treated as CBR |
|
|
964
|
+
| 1 | `ENCODER_RATE_CONTROL_CBR` | Constant bitrate |
|
|
965
|
+
| 2 | `ENCODER_RATE_CONTROL_VBR` | Variable bitrate |
|
|
966
|
+
|
|
967
|
+
|
|
968
|
+
### EncoderTuning
|
|
969
|
+
|
|
970
|
+
Encoder tuning (NVENC tuning info).
|
|
971
|
+
|
|
972
|
+
| Value | Name | Description |
|
|
973
|
+
|-------|------|-------------|
|
|
974
|
+
| 0 | `ENCODER_TUNING_UNSPECIFIED` | Unspecified: treated as ultra low latency |
|
|
975
|
+
| 1 | `ENCODER_TUNING_ULTRA_LOW_LATENCY` | Ultra low latency tune |
|
|
976
|
+
| 2 | `ENCODER_TUNING_LOW_LATENCY` | Low latency tune |
|
|
977
|
+
| 3 | `ENCODER_TUNING_HIGH_QUALITY` | High quality tune |
|
|
933
978
|
|
|
934
979
|
|
|
935
980
|
### EncoderType
|
|
@@ -969,6 +1014,17 @@ Recorder type.
|
|
|
969
1014
|
| 2 | `RECORDER_TYPE_CLIPS` | Clip recorder; not continuously recording, only ingested frames are persisted |
|
|
970
1015
|
|
|
971
1016
|
|
|
1017
|
+
### TimecodeMode
|
|
1018
|
+
|
|
1019
|
+
Timecode embedding mode for encoded streams (SEI/metadata OBU).
|
|
1020
|
+
|
|
1021
|
+
| Value | Name | Description |
|
|
1022
|
+
|-------|------|-------------|
|
|
1023
|
+
| 0 | `TIMECODE_MODE_UNSPECIFIED` | No timecode embedded |
|
|
1024
|
+
| 1 | `TIMECODE_MODE_WALLCLOCK` | Composite-time wallclock (identical across outputs of the same frame) |
|
|
1025
|
+
| 2 | `TIMECODE_MODE_SOURCE` | Timecode published by the source in timecode_source_id (e.g. Decklink RP188 or SDI ingress wallclock) |
|
|
1026
|
+
|
|
1027
|
+
|
|
972
1028
|
### DecklinkOutputConfig
|
|
973
1029
|
|
|
974
1030
|
Decklink output configuration.
|
|
@@ -979,6 +1035,8 @@ Decklink output configuration.
|
|
|
979
1035
|
| `device_index` | uint32 | Decklink device index |
|
|
980
1036
|
| `video_format` | sesame.v1.common.VideoFormat | Video format |
|
|
981
1037
|
| `key_and_fill` | bool | Key and fill mode |
|
|
1038
|
+
| `timecode_mode` | TimecodeMode | RP188 timecode embedding mode for SDI output |
|
|
1039
|
+
| `timecode_source_id` | string | Source ID providing timecode when timecode_mode == SOURCE |
|
|
982
1040
|
|
|
983
1041
|
|
|
984
1042
|
### EncodedMoqOutputConfig
|
|
@@ -1070,12 +1128,14 @@ Encoded output configuration (WebSocket, SRT, MoQ).
|
|
|
1070
1128
|
| Field | Type | Description |
|
|
1071
1129
|
|-------|------|-------------|
|
|
1072
1130
|
| `codec` | sesame.v1.common.CodecType | Encoder codec |
|
|
1073
|
-
| `preset` | EncoderPreset | Encoder preset |
|
|
1074
1131
|
| `bitrate_kbps` | uint32 | Bitrate in kbps |
|
|
1075
1132
|
| `keyframe_interval` | uint32 | GOP length in frames (0 = codec/preset default) |
|
|
1076
1133
|
| `width` | uint32 | Video width |
|
|
1077
1134
|
| `height` | uint32 | Video height |
|
|
1078
1135
|
| `fps` | float | Video framerate |
|
|
1136
|
+
| `timecode_mode` | TimecodeMode | Timecode embedding mode |
|
|
1137
|
+
| `timecode_source_id` | string | Source ID providing timecode when timecode_mode == SOURCE |
|
|
1138
|
+
| `settings` | EncoderSettings | Explicit encoder settings |
|
|
1079
1139
|
|
|
1080
1140
|
|
|
1081
1141
|
### EncoderRemoveRequest
|
|
@@ -1088,6 +1148,31 @@ Request to remove a shared encoder resource.
|
|
|
1088
1148
|
| `id` | string | Encoder ID to remove |
|
|
1089
1149
|
|
|
1090
1150
|
|
|
1151
|
+
### EncoderSettings
|
|
1152
|
+
|
|
1153
|
+
Explicit encoder settings. The client always sends the full set; named presets
|
|
1154
|
+
exist only client-side as bundles of these values.
|
|
1155
|
+
|
|
1156
|
+
|
|
1157
|
+
| Field | Type | Description |
|
|
1158
|
+
|-------|------|-------------|
|
|
1159
|
+
| `tuning` | EncoderTuning | NVENC tuning info |
|
|
1160
|
+
| `effort` | uint32 | Speed/quality effort 1-7 (1 = fastest, 7 = best quality, 0 = 4); maps to NVENC presets P1-P7 |
|
|
1161
|
+
| `rate_control` | EncoderRateControl | Rate control mode |
|
|
1162
|
+
| `max_bitrate_kbps` | uint32 | Max bitrate in kbps (0 = auto: bitrate for CBR, 2x bitrate for VBR) |
|
|
1163
|
+
| `profile` | EncoderProfile | Codec profile |
|
|
1164
|
+
| `bframes` | uint32 | Consecutive B frames between references (0 = none) |
|
|
1165
|
+
| `idr_only` | bool | Encode every frame as an IDR (overrides GOP and bframes) |
|
|
1166
|
+
| `spatial_aq` | bool | Spatial adaptive quantization |
|
|
1167
|
+
| `multipass` | EncoderMultipass | Multipass encoding mode |
|
|
1168
|
+
| `lookahead_depth` | uint32 | Rate-control lookahead in frames (0 = off, adds latency) |
|
|
1169
|
+
| `zero_reorder_delay` | bool | Emit frames in encode order (no reordering delay) |
|
|
1170
|
+
| `bit_depth` | uint32 | Output bit depth: 0 or 8 = 8-bit, 10 = 10-bit (HEVC/AV1 only) |
|
|
1171
|
+
| `chroma_format` | EncoderChromaFormat | Chroma subsampling |
|
|
1172
|
+
| `output_aud` | bool | Emit access unit delimiters (H264/HEVC) |
|
|
1173
|
+
| `level` | string | Codec level as "major.minor" (empty or "auto" = codec default, e.g. "5.1") |
|
|
1174
|
+
|
|
1175
|
+
|
|
1091
1176
|
### EncoderStatus
|
|
1092
1177
|
|
|
1093
1178
|
Encoder status information.
|
|
@@ -1100,6 +1185,7 @@ Encoder status information.
|
|
|
1100
1185
|
| `state` | sesame.v1.common.ConnectionState | Connection/lifecycle state |
|
|
1101
1186
|
| `msg` | optional string | Error message (typically when state == ERROR) |
|
|
1102
1187
|
| `composition_id` | string | Compositor ID being encoded |
|
|
1188
|
+
| `dropped_frames` | uint32 | Frames skipped because the encoder fell behind the renderer |
|
|
1103
1189
|
|
|
1104
1190
|
|
|
1105
1191
|
### EncoderUpdateRequest
|
|
@@ -1532,6 +1618,17 @@ that have a binding from this node+metadataId.
|
|
|
1532
1618
|
| `data_type` | sesame.v1.wire.DataType | Wire data type (default DATA_TYPE_JSON for backward compat) |
|
|
1533
1619
|
|
|
1534
1620
|
|
|
1621
|
+
### SystemOperationRequest
|
|
1622
|
+
|
|
1623
|
+
System maintenance operations. One oneof entry per operation keeps the
|
|
1624
|
+
single RPC extensible.
|
|
1625
|
+
|
|
1626
|
+
|
|
1627
|
+
| Field | Type | Description |
|
|
1628
|
+
|-------|------|-------------|
|
|
1629
|
+
| `reset_frame_drops` | sesame.v1.common.Empty | Resets the engine's dropped-frame counter shown in status. |
|
|
1630
|
+
|
|
1631
|
+
|
|
1535
1632
|
### SesameAPIService
|
|
1536
1633
|
|
|
1537
1634
|
Main Sesame API service.
|
|
@@ -1551,6 +1648,7 @@ Main Sesame API service.
|
|
|
1551
1648
|
| `RequestKeyframe` | .sesame.v1.outputs.KeyframeRequest | .sesame.v1.common.Empty | Request keyframe from encoder. |
|
|
1552
1649
|
| `RequestIODeviceList` | .sesame.v1.common.Empty | .sesame.v1.status.IODeviceListResponse | Get list of I/O devices. |
|
|
1553
1650
|
| `PublishMetadata` | PublishMetadataRequest | .sesame.v1.common.Empty | Publish a JSON metadata payload to all output transports bound to this node+metadataId. Used by apps (e.g. Snigel) to emit state that should be forwarded on MoQ/WebSocket outputs. |
|
|
1651
|
+
| `RequestSystemOperation` | SystemOperationRequest | .sesame.v1.common.Empty | System maintenance operations (counter resets and similar). |
|
|
1554
1652
|
|
|
1555
1653
|
|
|
1556
1654
|
---
|
|
@@ -1599,6 +1697,17 @@ Signal generator audio program.
|
|
|
1599
1697
|
| 3 | `SIGNAL_GENERATOR_AUDIO_MODE_SILENCE` | Silence |
|
|
1600
1698
|
|
|
1601
1699
|
|
|
1700
|
+
### SignalGeneratorTimecodeMode
|
|
1701
|
+
|
|
1702
|
+
Signal generator timecode program.
|
|
1703
|
+
|
|
1704
|
+
| Value | Name | Description |
|
|
1705
|
+
|-------|------|-------------|
|
|
1706
|
+
| 0 | `SIGNAL_GENERATOR_TIMECODE_MODE_NONE` | No timecode published |
|
|
1707
|
+
| 1 | `SIGNAL_GENERATOR_TIMECODE_MODE_FREE_RUN` | Deterministic counter from timecode_start_frame; freeze() freezes it |
|
|
1708
|
+
| 2 | `SIGNAL_GENERATOR_TIMECODE_MODE_TIME_OF_DAY` | System clock time of day |
|
|
1709
|
+
|
|
1710
|
+
|
|
1602
1711
|
### SignalGeneratorVideoPattern
|
|
1603
1712
|
|
|
1604
1713
|
Signal generator video test pattern.
|
|
@@ -1785,6 +1894,8 @@ Signal generator source configuration.
|
|
|
1785
1894
|
| `freeze` | bool | Freeze the moving lip-sync overlay at its sync point (static test pattern) |
|
|
1786
1895
|
| `video_pattern` | SignalGeneratorVideoPattern | Video test pattern |
|
|
1787
1896
|
| `audio_mode` | SignalGeneratorAudioMode | Audio program |
|
|
1897
|
+
| `timecode_mode` | SignalGeneratorTimecodeMode | Timecode program |
|
|
1898
|
+
| `timecode_start_frame` | uint32 | FREE_RUN start value (frames since midnight at engine rate) |
|
|
1788
1899
|
|
|
1789
1900
|
|
|
1790
1901
|
### SourceAddRequest
|
|
@@ -2122,6 +2233,9 @@ Provides overall system health and performance metrics.
|
|
|
2122
2233
|
| `gpu_decoder_utilization` | uint32 | NVDEC utilization (0-100%) |
|
|
2123
2234
|
| `gpu_name` | string | GPU model name |
|
|
2124
2235
|
| `vma_bytes` | uint64 | Vulkan Memory Allocator total bytes |
|
|
2236
|
+
| `version` | string | Server version string |
|
|
2237
|
+
| `nvenc_sessions` | uint32 | Open NVENC encoder sessions |
|
|
2238
|
+
| `nvdec_sessions` | uint32 | Open NVDEC decoder sessions |
|
|
2125
2239
|
|
|
2126
2240
|
|
|
2127
2241
|
---
|
|
@@ -2437,6 +2551,7 @@ Properties are set via `PropertySetRequest` or animated via `PropertyAnimateRequ
|
|
|
2437
2551
|
|----------|------|-------------|
|
|
2438
2552
|
| `source` | string | Source ID to display |
|
|
2439
2553
|
| `audio_meter_source` | string | Pipe-delimited mixer IDs for audio meters |
|
|
2554
|
+
| `audio_meter_count` | float | Number of audio meters to display (0 = automatic) |
|
|
2440
2555
|
| `show_audio_meter` | bool | Show audio meters |
|
|
2441
2556
|
| `show_border` | bool | Show border |
|
|
2442
2557
|
| `show_label_bg` | bool | Show label background |
|
package/package.json
CHANGED