All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
10.0.0 (2026-10-05)
- remove unused makeReady and standDown flow (#388)
- require >= node 20 (#383)
- support loading TSR devices as 'plugins' (#375)
- Add Atem Action: runMacro (based on release53) (9652866)
- add clip player support (5e90e92)
- add code and context fields to ActionExecutionResult for structured action errors (a0520d1)
- add DeviceStatusDetail type and DeviceStatusInput union (1fe71c2)
- add list-actions to kairos device (ff22ff6)
- add some tsr-actions (ef6f712)
- add structured action error codes to CasparCG device (fa04a27)
- add structured action error codes to HTTP Send device (b45b825)
- add structured status messages for ATEM integration (ee0c6f5)
- add structured status messages for CasparCG integration (8eb6bf3)
- add structured status messages for HTTPWatcher integration (c41cdc0)
- add structured status messages for Hyperdeck integration (856b52f)
- add structured status messages for Lawo integration (fe49c2a)
- add structured status messages for OBS integration (c18334a)
- add structured status messages for OSC integration (aa7813f)
- add structured status messages for Panasonic PTZ integration (2b06a4d)
- add structured status messages for Pharos integration (98bd264)
- add structured status messages for Quantel integration (91858a1)
- add structured status messages for Shotoku integration (1efec39)
- add structured status messages for Sisyfos integration (59d3040)
- add structured status messages for Sofie Chef integration (9bb6315)
- add structured status messages for Telemetrics integration (3bcb335)
- add structured status messages for TriCaster integration (b1a1fc7)
- add structured status messages for VizMSE integration (79bf158)
- add structured status messages for vMix integration (8c74a04)
- add structured status messages for WebSocket Client integration (f8a8172)
- add support for kairos layer effects (#454) (5d8cbe2)
- basic kairos device (84b7bda)
- casparcg scaleMode support (#447) (6e8e545)
- change CommandContext to be a generic instead of using fields typed as any (d7531e5)
- connection status for websocketTcpClient (46f333f)
- EAV-468: add
disableDefaultsoption to sisyfos mappings (d92b9c2) - EAV-493: add basic support for vMix audio buses (9166efc)
- EAV-516: reload browser input (36682ec)
- EAV-539: add basic vMix replay support (4c32364)
- export additional device classes from TSR package (d57036c)
- generate some more repetitive parts of tsr-types (#385) (5ff702c)
- implement "still-player" ie "imageStore" (1882633)
- implement udpsend device (64fb7c2)
- include atem chroma keyer in upstreamkeyer (#415) (309a846)
- inital test sketch for websocketTcpClient (e75b543)
- kairos temporal priority based on dependency graph (19b1a7a)
- Kairos: Allow references to layer-mappings to be used as sources (0457ef4)
- kairos: Monitor Kairos status (9b3859f)
- lookahead offset (#413) (04b075e)
- make tsr action execution methods be strongly typed (eada9c8)
- Make USKs to be their own mapping (d4a7b59)
- normalise DeviceStatusInput to DeviceStatus at TSR boundary (6afe0b3)
- OGraf integration (c0545d7)
- propagate usages of
DeviceTimelineStateto the conductor (#411) (5752972) - quick-tsr: Add ability to specify input folder (58a3b6b)
- reassert control over shared hardware (335f2c8)
- remove optional tcp in websocket connection (0b61576)
- remove unused makeReady and standDown flow (#388) (b1e561e)
- require >= node 20 (#383) (5a59223)
- simplify
convertTimelineStateToDeviceStatetypes (#400) (982ec31) - support custom types from tsr plugins (#412) (6b68c91)
- support loading TSR devices as 'plugins' (#375) (ce6dce9)
- switcher overlay control (0a44638)
- Track conflicts between old and new USK support (aa6ccb6)
- TSR Device Feedback (#456) (59ce433)
- update comment in test (b6e62e9)
- update of documentation and implementation of state and device commands (8e65e45)
- update simple integrations to use DeviceStatusInput return type (1d4eb5a)
- update tsr types mock to include the websocketTcpClient (75c6903)
- use script engine for advanced media control (08bea2e)
- use sendCommand for better checks (e51695c)
- vindral clip playback (02f9aab)
- vindral composer integration (5521ffe)
- vindral switcher mapping (1d3805b)
- vmix: enable cuts through the ActiveInput command (b24d78c)
- websocketclient move buffer encoding to options (fc514a3)
- WebsocketTcpClient (be244ed)
- websockettcpclient add basic functionality to connection (6c64c86)
- websockettcpclient move actions to schema (c2afeeb)
- websockettcpclient move options to schema (dfb7036)
- websockettcpclient test connection status (391623d)
- websocketTcpClient test working basics (251bb35)
- add extendable DeviceOptionsMap type for tsr-plugins (#440) (5904de2)
- add utils for extracting action payload and result types (87bac1d)
- add version string property to tsrPlugin device details (#446) (ec79db2)
- add websocketTcpClient to connection manager (ca4671a)
- add websocketTcpClient to services in tsr (973fa25)
- atem not controlling dip transition SOFIE-496 (#455) (3a32778)
- avoid cyclical import (d353e07)
- changing html url (261f06e)
- check if mapping exists before using it (7f40cfe)
- ci: move comparison operator inside GitHub Actions expression (a373db2)
- cleanup async that isn't, and fix
setModifiedState(c347227) - cut+crossfade not applying when backgroudn changes (94bee99)
- don't set Sisyfos labels to empty strings (SOFIE-4196) (#406) (dddc23e)
- EAV-493: master bus support (f17e84e)
- EAV-512: small bugs and readd tests (f2816c8)
- EAV-527: delay slow vMix commands from lookaheads (12074fd)
- generated websocketTcpClient types updated (9f954d1)
- guard against missing mapping (3d5130a)
- handle weird Pharos response (da90a01)
- httpSend: fix params-type validation condition (47392d5)
- improve error messages when assigning datastore values (26102b7)
- improve KairosMonitor (0b9754f)
- issue a Play command when restarting in case it reached the end (#468) (ae4bb9b)
- kairos clip lookaheads are paused with correct seek (450c7c5)
- kairos media player support (b2d7527)
- kairos: force dissolve properties on Scene Layers to be applied first, before other properties (6d4a8c8)
- kairos: if theres an Error when using a still/ramrec, try to LOAD it and try again (9509c49)
- kairos: support fire-and-forget of SceneSnapshotRecall (75f832d)
- lawo error logging (0fb42d3)
- linting (523ab60)
- Listen for errors from casparcg and pass them on (484a823)
- load in RAM. (f5d2f5a)
- logDebug state is not persisted across restarts, because it's not set on initialization (3da6173)
- lookahead seek handling (d15dbf6)
- media clip clearing (bfa3e12)
- media object seek based on start time (3b471fd)
- missing linting (71c8bcd)
- move functions related to Datastore to TSR-types. (300c92f)
- move functions related to TemplateString to TSR-types. (af4b98e)
- ograf connection status (817ce33)
- propagate errors and connection status from tcpSend device (faccef8)
- quantel: reimplement reset port commands (1da482c), closes #352
- Regenerate yarn.lock for compatibility with hardened mode (26789f8)
- remove deprecated device base class (#389) (81f108d)
- remove DeviceOptionsAnyInternal type from public api (#386) (aacb0c4)
- remove encoding option as this is included in command (990c868)
- remove unused getDiff function (#387) (9167fa0)
- reorder the kairos monitor messages, so that the "fundamental ones" show up first (59b6565)
- restore Actions enums (b8480ce)
- rework generated types to minimise variation in type union (#430) (59ac9d9)
- rework generated types to minimise variation in type union (#430) (0a476f2)
- shared control undefined state (#419) (a03f88d)
- simplify action methods signature (db18b56)
- sisyfos: Don't apply default values on set channel (0f44040)
- Sisyfos: modified the 'mixerOnline' event, which was emitted upon every ping, which in turn caused the event 'connectionChanged' to be emitted continously. (618cf19)
- sisyfos: Use correct typings for pgm (7df2368)
- stop vMix resending commands on every poll (#437) (1d2422a)
- supertimeline type mismatch (#421) (651ad0d)
- tcpmessage was not renamed from tcp command in schemas (565d9c7)
- test of connection (a9a91da)
- type name in timeline for tcp was still command (d045fa3)
- typo in type Buffer (0ec46a7)
- update casparcg-connection to latest version. (#469) (4659f39)
- update comment with missing details (b5fee17)
- update kairos lib (29b72c3)
- update minimum nodejs to 22 (#429) (c174540)
- use stringify instead of isEqual (3633b3d)
- use undefined in initialization instead of ! (e0d035a)
- vmix: do not error on missing mapping (d0628b6)
- websocket client test (dd27571)
- websocketClient - use sendCommand instead of sending directly to device (d18b014)
- websocketclient action type (02711c8)
- websocketclient bufferEnc option should be optional (f877542)
- websocketClient diffstates oldState could be undefined (bce3d1a)
- websocketClient test - remove unused afterEach() (e420459)
- websocketClient test should spy on function (a6d66a6)
- websocketclient tests - reorder terminate spy (40dfc34)
- websocketTcpClient tests to use refactored init() (6601ff3)
9.3.2 (2025-09-02)
- update timeline dependency to latest (d21240b)
9.3.1 (2025-08-12)
9.3.0 (2025-06-30)
9.3.0-release52.2 (2025-04-10)
- update timeline dependency (de503d9)
9.3.0-release52.1 (2025-03-12)
- disable initial timeline trace (86035a8)
- update superfly-timeline library to 9.0.3, fixing a bug related to lookaheads (a81aff9)
9.3.0-release52.0 (2025-02-04)
- add option to resync states without resolving tl (eb03434)
- atem: add stinger support (d4378e1)
- EAV-266: add more PTZ actions for obtaining values (bd336f2)
- EAV-266: add return types to PTZ actions (5299a2b)
- EAV-266: implement Panasonic PTZ actions (b7cccbf)
- EAV-321: support browser source url in vMix (db67a61)
- EAV-343: support index (list, photo, virtual set) in vMix (02db182)
- EAV-410: add sisyfos action to load mixer preset (8895f87)
- EAV-411: support setting text in vMix titles (41c1f93)
- EAV-423: add actions to start and stop External in vMix (e002d0f)
- EAV-464: add images support for GT titles in vMix (8905200)
- EAV-54: allow overriding vMix transition from a separate layer (d6f4e81)
- http url interpolation SOFIE-3310 (#342) (01593a3)
- SetSisyfosChannelState action implemented (685fbf9)
- Sisyfos - remove re-sync channel functionality. (triggerValue has the functionality) (4e77eb2)
- Sisyfos add support for mute, gain, selector in triggerValues. Refactor SET_CHANNEL (25c6516)
- Sisyfos support for set input gain and set input selector (2f7d553)
- update ws dependency to v8 (6fef9f7)
- actions.json payload format (116bd76)
- add mute, inputgain, inputselector to Sisyfos channel option types (5f5115e)
- EAV-266: add VISCA_OVER_IP to ConnectionManager (4e04e0e)
- EAV-411: SelectedName parameter support (3c56693)
- fadeTime should be optional (dcfa14f)
- function name started with uppercase (6823634)
- quickTSR - return error info if an object does not reference to a mapped layer (547247f)
- setState when received update from Sisyfos (f04970c)
- Sisyfos add mute, gain and inputselctor to diif (67d566e)
- Sisyfos add triggerValue to TimelineContentSisyfosChannel (3cb6f70)
- sisyfos receive channel number as index (b06a79b)
- Sisyfos setchannel wrong index and osc format (e36853f)
- Sisyfos Typings and conversion for pgmOn and visibilty between TSR and Sisyfos (9af2d5c)
- Sisyfos update mute, inputgain, selector in state from new state (5bd34b3)
- sisyfos: trigger value per channel (54734d5)
- sisyfos: Use nullish check rather than or on channel reset (65a73c5)
- viz and quantel callback leak (#344) (29ad13d)
9.3.0-release52.2 (2025-04-10)
- update timeline dependency (de503d9)
9.3.0-release52.1 (2025-03-12)
- disable initial timeline trace (86035a8)
- update superfly-timeline library to 9.0.3, fixing a bug related to lookaheads (a81aff9)
9.3.0-release52.0 (2025-02-04)
- add option to resync states without resolving tl (eb03434)
- atem: add stinger support (d4378e1)
- EAV-266: add more PTZ actions for obtaining values (bd336f2)
- EAV-266: add return types to PTZ actions (5299a2b)
- EAV-266: implement Panasonic PTZ actions (b7cccbf)
- EAV-321: support browser source url in vMix (db67a61)
- EAV-343: support index (list, photo, virtual set) in vMix (02db182)
- EAV-410: add sisyfos action to load mixer preset (8895f87)
- EAV-411: support setting text in vMix titles (41c1f93)
- EAV-423: add actions to start and stop External in vMix (e002d0f)
- EAV-464: add images support for GT titles in vMix (8905200)
- EAV-54: allow overriding vMix transition from a separate layer (d6f4e81)
- http url interpolation SOFIE-3310 (#342) (01593a3)
- SetSisyfosChannelState action implemented (685fbf9)
- Sisyfos - remove re-sync channel functionality. (triggerValue has the functionality) (4e77eb2)
- Sisyfos add support for mute, gain, selector in triggerValues. Refactor SET_CHANNEL (25c6516)
- Sisyfos support for set input gain and set input selector (2f7d553)
- update ws dependency to v8 (6fef9f7)
- actions.json payload format (116bd76)
- add mute, inputgain, inputselector to Sisyfos channel option types (5f5115e)
- EAV-266: add VISCA_OVER_IP to ConnectionManager (4e04e0e)
- EAV-411: SelectedName parameter support (3c56693)
- fadeTime should be optional (dcfa14f)
- function name started with uppercase (6823634)
- quickTSR - return error info if an object does not reference to a mapped layer (547247f)
- setState when received update from Sisyfos (f04970c)
- Sisyfos add mute, gain and inputselctor to diif (67d566e)
- Sisyfos add triggerValue to TimelineContentSisyfosChannel (3cb6f70)
- sisyfos receive channel number as index (b06a79b)
- Sisyfos setchannel wrong index and osc format (e36853f)
- Sisyfos Typings and conversion for pgmOn and visibilty between TSR and Sisyfos (9af2d5c)
- Sisyfos update mute, inputgain, selector in state from new state (5bd34b3)
- sisyfos: trigger value per channel (54734d5)
- sisyfos: Use nullish check rather than or on channel reset (65a73c5)
- viz and quantel callback leak (#344) (29ad13d)
9.2.1 (2024-11-13)
- trace and emit some helpful info in case the timeline resolver throws (913ca75)
9.2.0 (2024-10-07)
- revert quantel device to release50 version (36817aa)
9.2.0-alpha.0 (2024-09-09)
- allow sequential executionMode to paralelize multiple queues of Commands (84a53cd)
- filter mappings by deviceid (f4402dd)
- update timeline dependency (see SuperFlyTV/supertimeline#102 ) (81af9f7)
- use sequential send mode for quantel (940e68a)
9.1.0 (2024-08-19)
Note: Version bump only for package timeline-state-resolver-packages
9.1.0 (2024-08-19)
- add "returnData" to action schema (529bcb3)
- atem color generator support SOFIE-2968 (#322) (b7ceb69)
- atem command batching SOFIE-2549 (#308) (75e2cbe)
- convert quantel to state handler (7f6e619)
- Dereference schemas (#286) (7f6a20e)
- EAV-243: add OAuth (Client Credentials grant) and Bearer Token to HTTPSend (8fef807)
- EAV-243: add oauth token path option for a broader support (76592f2)
- EAV-269: add vMix input layers props and commands (1bcf056)
- httpSend: Proxy support (6dc4c59)
- HTTPSend: return response data from HTTP SendCommand action (#334) (d220c78)
- include timestamp in statediff api (06f095a)
- refactor chef device (#330) (3c857c6)
- refactor pharos device SOFIE-2488 (#333) (d57812c)
- refactor singular-live device SOFIE-2492 (#337) (2d08c7c)
- refactor telemtrics device SOFIE-2496 (#335) (96e0f6c)
- refactor tricaster device SOFIE-2497 (#336) (4b4d2f6)
- sisyfos: Send fadeTime with faderLevel if specified (5fa0446)
- state handler: send commands before planned time of the state (0a3ae5f)
- support timeline v9 (3ccc759)
- update atem-connection and atem-state SOFIE-2504 (#289) (10d1509)
- update hyperdeck-connection (65dc0dc)
- synced synchronous getCurrentTime (db4c3e6)
- 'connectionChanged' event typings (dcd9f02)
TypeError: Cannot read properties of undefined (reading 'preliminary')(804f1ef)- abstract add missing action (172feb5)
- abstract device to handle undefined old state (5f656bd)
- add missing cleanup to osc and multi-osc (71d1d8f)
- add missing typings for atem dve (#305) (1758ffc)
- bug in conductor resolve loop (38a0a22)
- CasparCG: add listMedia action (wip) (f4277ad)
- conductor unit tests (3bbf519)
- EAV-243: improve oauthTokenHost UI description (e2ee7cf)
- EAV-269: default to vMix layers instead of deprecated overlays (dc719c8)
- ensure new services are added to
DevicesDict(0067869) - missing httpsend enums (920da05)
- preliminary time is 0 for no commands (9f1b481)
- reset atem upon connection (9cbb458)
- sisyfos add fade time during reset (#339) (f6a3609)
- suppress quantel disconnect shortly (9b6621d)
- update casparcg-connection dependency (e209ba8)
- vmix: move pre-loading of media inputs into separate class (39d3eba)
- vmix: move pre-loading of media inputs into separate class (184fad5)
9.0.2 (2024-08-15)
9.0.1 (2024-04-02)
- vMix: handling XML messages with multi-byte characters (e811ef0)
9.0.0 (2024-02-23)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.8 (2024-02-02)
- vMix: fragmented message handling SOFIE-2932 (#320) (c8fe3b1)
- vMix: handle sparse arrays in the state (#319) (d7caf7d)
9.0.0-release50.7 (2023-11-17)
- changes the implementation of how to assign a pollTime. (88b875d)
- changes the logic for setting a pollInterval (a482e57), closes #277
- quick-tsr: add command report and debug logging (f693569)
createDevicerace condition (#296) (20abff2)- add a future-proof "resetResolver" event (feb709b)
- bad merge in casparcg device, causing issues with channel 1 (#293) (e259f5c)
- casparcg restart action always responds 'OK' SOFIE-2588 (#295) (6488187)
- quick-tsr: status logging (634acb1)
- remove unused casparcg useScheduling option (#294) (06d3c96)
- update emberplus-connection (0259fbf)
- update v-connection dependency (2ba4ae3)
9.0.0-release50.6 (2023-08-25)
- another potential fix for this system not working as intended (c75d4d8)
- chef: only stop windows that we know of in the Mappings (43ab8f6)
- httpSend: Use the same types for the sendCommand action as a timeline object (#269) (3385217)
- media re-playing shortly after completing (867f30f)
- prevent conflicts with sisyfos (4780fcf)
- promisify cb from threadedclass (368ab92)
- sofie-chef: resync state upon reconnect (80f0ab9)
- vmix: fix scenario where the media load retry system would load clips into playlists twice (8ceddb2)
9.0.0-release50.5 (2023-07-03)
9.0.0-release50.4 (2023-07-03)
9.0.0-release50.3 (2023-07-03)
9.0.0-release50.2 (2023-07-03)
9.0.0-release50.1 (2023-07-03)
9.0.0-release50.0 (2023-07-03)
- DeviceType enum has been changed from a number-based to a string-based one
- add restart command to vMix inputs (e16e8c1)
- DeviceType enum has been changed from a number-based to a string-based one (dd03bcc)
- upgrade singular.live to API v2 (2bb5c4d)
- Use strings for DeviceType enum (f1b95bc)
- vMix: retry sending media load commands if the file wasn't found (4321aae)
- add ci for quick-tsr (9f2c3d1)
- add types support for vMix stingers 3 and 4 (44fa27d)
- allow multiple sisyfos devices (3d47f82)
- consider outputs (Auxes) when checking if something is on air (d629ed6)
- consider overlays (DSKs) when checking if something is in PGM (4863e0f)
- don't join response packets together with an extraneous newline (9258d11)
- enable and fix logic for non-List inputs (4cd3173)
- PTZ: clean up interval on terminate(), sort commands in a predictable order (13b6698)
- quick-tsr typing errors (#267) (95b2eae)
- run post transition commands after overlays commands (aa43869)
- vmix: account for the fact that some mixes may temporarily be undefined in the state (50ffe80)
- vmix: change how commands are ordered to reduce flashes of content in PGM (b2ebaad)
- vmix: inform parent about the connection status changing after initialization (e4e380e)
- vmix: show a BAD status code when vMix is not initialized (370be3a)
- wrap singular.live JSON commands in an array (cc5b7ec)
3.5.1 (2023-03-31)
- json schemas for device config and mappings (#237)
- json schemas for device config and mappings (#237) (d43f3dc)
- replace makeready (5abe41e)
- SOF-1254 add me_clean support for mix ouputs (7f3fb9c)
- SOF-1254 add temporal priority to TriCaster (7133774)
- state handler initial commit (a219c84)
- osc animation should rely on monotonic time (7989c9d)
- prevent lingering device containers (e313198)
- SOF-1254 don't send layer commands when not in effect mode (daa7d9b)
- SOF-1254 use bin_index command for M/Es (569bde0)
- SOF-1254 wrong scale defaults (0b66153)
- SOF-1404 use upstreamKeyerId to address ATEM upstream keyers (61b0061)
8.1.4 (2024-01-18)
Note: Version bump only for package timeline-state-resolver-packages
8.1.3 (2024-01-02)
- changes the implementation of how to assign a pollTime. (88b875d)
- changes the logic for setting a pollInterval (a482e57), closes #277
- quick-tsr: add command report and debug logging (f693569)
createDevicerace condition (#296) (20abff2)- add a future-proof "resetResolver" event (feb709b)
- bad merge in casparcg device, causing issues with channel 1 (#293) (e259f5c)
- casparcg restart action always responds 'OK' SOFIE-2588 (#295) (6488187)
- quick-tsr: status logging (634acb1)
- remove unused casparcg useScheduling option (#294) (06d3c96)
- update emberplus-connection (0259fbf)
9.0.0-release50.6 (2023-08-25)
- another potential fix for this system not working as intended (c75d4d8)
- chef: only stop windows that we know of in the Mappings (43ab8f6)
- httpSend: Use the same types for the sendCommand action as a timeline object (#269) (3385217)
- media re-playing shortly after completing (867f30f)
- prevent conflicts with sisyfos (4780fcf)
- promisify cb from threadedclass (368ab92)
- sofie-chef: resync state upon reconnect (80f0ab9)
- vmix: fix scenario where the media load retry system would load clips into playlists twice (8ceddb2)
9.0.0-release50.5 (2023-07-03)
9.0.0-release50.4 (2023-07-03)
9.0.0-release50.3 (2023-07-03)
9.0.0-release50.2 (2023-07-03)
9.0.0-release50.1 (2023-07-03)
9.0.0-release50.0 (2023-07-03)
- DeviceType enum has been changed from a number-based to a string-based one
- json schemas for device config and mappings (#237)
- add restart command to vMix inputs (e16e8c1)
- DeviceType enum has been changed from a number-based to a string-based one (dd03bcc)
- json schemas for device config and mappings (#237) (d43f3dc)
- replace makeready (5abe41e)
- SOF-1254 add me_clean support for mix ouputs (7f3fb9c)
- SOF-1254 add temporal priority to TriCaster (7133774)
- state handler initial commit (a219c84)
- upgrade singular.live to API v2 (2bb5c4d)
- Use strings for DeviceType enum (f1b95bc)
- vMix: retry sending media load commands if the file wasn't found (4321aae)
- add ci for quick-tsr (9f2c3d1)
- add types support for vMix stingers 3 and 4 (44fa27d)
- allow multiple sisyfos devices (3d47f82)
- consider outputs (Auxes) when checking if something is on air (d629ed6)
- consider overlays (DSKs) when checking if something is in PGM (4863e0f)
- don't join response packets together with an extraneous newline (9258d11)
- enable and fix logic for non-List inputs (4cd3173)
- osc animation should rely on monotonic time (7989c9d)
- prevent lingering device containers (e313198)
- PTZ: clean up interval on terminate(), sort commands in a predictable order (13b6698)
- quick-tsr typing errors (#267) (95b2eae)
- run post transition commands after overlays commands (aa43869)
- SOF-1254 don't send layer commands when not in effect mode (daa7d9b)
- SOF-1254 use bin_index command for M/Es (569bde0)
- SOF-1254 wrong scale defaults (0b66153)
- SOF-1404 use upstreamKeyerId to address ATEM upstream keyers (61b0061)
- vmix: account for the fact that some mixes may temporarily be undefined in the state (50ffe80)
- vmix: change how commands are ordered to reduce flashes of content in PGM (b2ebaad)
- vmix: inform parent about the connection status changing after initialization (e4e380e)
- vmix: show a BAD status code when vMix is not initialized (370be3a)
- wrap singular.live JSON commands in an array (cc5b7ec)
9.0.0-release50.6 (2023-08-25)
- chef: only stop windows that we know of in the Mappings (43ab8f6)
- httpSend: Use the same types for the sendCommand action as a timeline object (#269) (3385217)
- sofie-chef: resync state upon reconnect (80f0ab9)
9.0.0-release50.5 (2023-07-03)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.4 (2023-07-03)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.3 (2023-07-03)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.2 (2023-07-03)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.1 (2023-07-03)
Note: Version bump only for package timeline-state-resolver-packages
9.0.0-release50.0 (2023-07-03)
- DeviceType enum has been changed from a number-based to a string-based one
- json schemas for device config and mappings (#237)
- add restart command to vMix inputs (e16e8c1)
- DeviceType enum has been changed from a number-based to a string-based one (dd03bcc)
- json schemas for device config and mappings (#237) (d43f3dc)
- replace makeready (5abe41e)
- upgrade singular.live to API v2 (2bb5c4d)
- Use strings for DeviceType enum (f1b95bc)
- vMix: retry sending media load commands if the file wasn't found (4321aae)
- add ci for quick-tsr (9f2c3d1)
- add types support for vMix stingers 3 and 4 (44fa27d)
- allow multiple sisyfos devices (3d47f82)
- consider outputs (Auxes) when checking if something is on air (d629ed6)
- consider overlays (DSKs) when checking if something is in PGM (4863e0f)
- don't join response packets together with an extraneous newline (9258d11)
- enable and fix logic for non-List inputs (4cd3173)
- handle some additional cases in casparCG trackedState SOFIE-2359 (#259) (810959f)
- PTZ: clean up interval on terminate(), sort commands in a predictable order (13b6698)
- quick-tsr typing errors (#267) (95b2eae)
- run post transition commands after overlays commands (aa43869)
- vmix: account for the fact that some mixes may temporarily be undefined in the state (50ffe80)
- vmix: change how commands are ordered to reduce flashes of content in PGM (b2ebaad)
- vmix: inform parent about the connection status changing after initialization (e4e380e)
- vmix: show a BAD status code when vMix is not initialized (370be3a)
- wrap singular.live JSON commands in an array (cc5b7ec)
- Revert "chore: enable node 20 in ci" (2f31f95)
8.1.3 (2024-01-02)
- update failing ccg-connection (54d031a)
8.1.2 (2023-12-21)
- suppress quantel disconnect shortly (f04befb)
8.1.1 (2023-11-29)
Note: Version bump only for package timeline-state-resolver-packages
8.1.0 (2023-10-19)
- VizMSE action to send clear-commands (configured on the device settings) to all Engines in the Profile (38e313f)
8.0.0 (2023-10-05)
- export lawo parametertype (65a73c4)
- handle some additional cases in casparCG trackedState SOFIE-2359 (#259) (810959f)
- Revert "chore: enable node 20 in ci" (2f31f95)
8.0.0-release49.0 (2023-03-21)
8.0.0-release48.2 (2023-03-21)
- Vmix preset actions (8b31294)
- casparcg doesnt resync state after server restart SOFIE-2156 (#248) (13d51dc)
- change
DeviceType.MULTI_OSCvalue (386ba6c) - pause List inputs before emptying them (9abc089)
- properly parse multi-packet vMix TCP API responses (754adeb)
- properly parse multi-packet vMix TCP API responses (35ba046)
- reduce amount of
setTimeoutwhen usingDoInTimeinBURSTmode (5123405) - review comments (cb21206)
7.5.0 (2023-02-28)
- ensure that LIST_REMOVE_ALL and LIST_ADD are sent before most other commands (13bf78a)
7.5.0-release47.7 (2023-02-24)
- vmix: add support for ListRemoveAll and ListAdd commands (4a7240f)
- vmix: add support for starting and stopping VB.NET scripts (9f2d4ee)
8.0.0-release48.1 (2023-02-14)
- improve data fragmentation handling, logging of unrecognized responses (96cfe87)
7.5.0-release47.6 (2023-02-07)
- change mocks to be TCP, fix vmixAPI test (def9a21)
- osc animation should rely on monotonic time (7989c9d)
- prevent lingering device containers (e313198)
- telemetrics device will never start, because the file path to class is wrong (8f722c4)
- use TCP for vmix api (3c1d1f6)
- vmix: improve vmix mock, update tests to use new mock (265dcf1)
7.5.0-release47.5 (2023-01-16)
7.5.0-release47.4 (2023-01-13)
- multi osc device udp stateless (af34aa0)
8.0.0-release48.0 (2022-12-12)
- drop support for node 14 (for tsr, tsr-types support remains)
- refactor types to work better with typescript 4.7 (#227)
- add vizmse actions (f7e585c)
- import quick-tsr to this repository (bd42303)
- refactor types to work better with typescript 4.7 (#227) (abe499c)
- translations for actions (df4cb43)
- add optional parameter to HTTPSend timelineObj: paramsType (979dc61)
- add support for Node 18 (6242dd6)
- bug fix: HTTPSend device didn't send GET requests (8315531)
- prevent in place reverse in setDatastore (473ab71)
- drop support for node 14 (for tsr, tsr-types support remains) (36c4859)
7.5.0-release47.3 (2022-11-07)
- track ccg state internally (fd5596f)
7.5.0-release47.2 (2022-11-02)
- action manifests (681d4c8)
7.5.0-release47.1 (2022-11-02)
- update for casparcg-connection rewrite (5dfdd23)
- add method to manually purge viz rundown (49737e2)
7.5.0-release47.0 (2022-10-28)
7.3.0 (2022-10-24)
- add Sofie Chef device (4fac092)
- add methods for restarting windows (31e4289)
- improve error for http-device (40d00ab)
- re-add net mock connect callback (95ebdad)
- re-adds a check for clearAllOnMakeReady before doing so (4b6168f)
- update SofieChef device API (514d827)
8.0.0-release49.0 (2023-03-21)
- resolve MSE show names to IDs using the directory
- Emit debug state (516a512)
- multi osc device (b987680)
- resolve MSE show names to IDs using the directory (e094dda)
- SOF-1135 make
createDeviceandinitDeviceabortable (70bfef2) - SOF-1140 handle warnings from v-connection (a48d313)
- SOF-1254 add TriCaster integration (06b129e)
- SOF-1254 add TriCaster matrix support (dbb1b26)
- Vmix preset actions (8b31294)
- vmix: add support for ListRemoveAll and ListAdd commands (4a7240f)
- vmix: add support for starting and stopping VB.NET scripts (9f2d4ee)
- allow resetting to baseline (572118b)
- change
DeviceType.MULTI_OSCvalue (386ba6c) - ensure that LIST_REMOVE_ALL and LIST_ADD are sent before most other commands (13bf78a)
- multi osc device udp stateless (af34aa0)
- pause List inputs before emptying them (9abc089)
- properly parse multi-packet vMix TCP API responses (35ba046)
- reduce amount of
setTimeoutwhen usingDoInTimeinBURSTmode (5123405) - review comments (cb21206)
- SOF-1140 wrap strings in Errors to avoid mangled logs (bca62cb)
- SOF-1254 control only resources that are mapped (7892669)
- SOF-1254 improve types (0471a7b)
- SOF-1254 log warning when websocket disconnected (3d9964a)
- SOF-1254 type guards and make some properties optional (f8b8aab)
- unable to resolve show ids (bug from previous refactor) (cdf2c62)
8.0.0-release48.2 (2023-03-21)
- casparcg doesnt resync state after server restart SOFIE-2156 (#248) (13d51dc)
- properly parse multi-packet vMix TCP API responses (754adeb)
8.0.0-release48.1 (2023-02-14)
- change mocks to be TCP, fix vmixAPI test (def9a21)
- improve data fragmentation handling, logging of unrecognized responses (96cfe87)
- use TCP for vmix api (3c1d1f6)
- vmix: improve vmix mock, update tests to use new mock (265dcf1)
8.0.0-release48.0 (2022-12-12)
- action manifests (681d4c8)
- add vizmse actions (f7e585c)
- import quick-tsr to this repository (bd42303)
- translations for actions (df4cb43)
- update for casparcg-connection rewrite (5dfdd23)
8.0.0-release48.1 (2023-02-14)
- change mocks to be TCP, fix vmixAPI test (def9a21)
- improve data fragmentation handling, logging of unrecognized responses (96cfe87)
- use TCP for vmix api (3c1d1f6)
- vmix: improve vmix mock, update tests to use new mock (265dcf1)
8.0.0-release48.0 (2022-12-12)
- action manifests (681d4c8)
- add vizmse actions (f7e585c)
- import quick-tsr to this repository (bd42303)
- translations for actions (df4cb43)
- update for casparcg-connection rewrite (5dfdd23)
8.0.0-release48.0 (2022-12-12)
- add optional parameter to HTTPSend timelineObj: paramsType (979dc61)
- add support for Node 18 (6242dd6)
- bug fix: HTTPSend device didn't send GET requests (8315531)
- prevent in place reverse in setDatastore (473ab71)
- track ccg state internally (fd5596f)
- action manifests (681d4c8)
- add vizmse actions (f7e585c)
- import quick-tsr to this repository (bd42303)
- translations for actions (df4cb43)
- update for casparcg-connection rewrite (5dfdd23)
7.5.1 (2023-09-04)
- casparcg disconnect handler may not fire (74c1f8a)
- sisyfos: remove local port & terminate correctly (c11801a)
- terminate devices fully (028167a)
7.5.0 (2023-02-28)
Note: Version bump only for package timeline-state-resolver-packages
7.5.0-release47.7 (2023-02-24)
- update v-connection dependency (3163188)
7.5.0-release47.6 (2023-02-07)
- telemetrics device will never start, because the file path to class is wrong (8f722c4)
7.5.0-release47.5 (2023-01-16)
Note: Version bump only for package timeline-state-resolver-packages
7.5.0-release47.4 (2023-01-13)
- add optional parameter to HTTPSend timelineObj: paramsType (979dc61)
- add support for Node 18 (6242dd6)
- bug fix: HTTPSend device didn't send GET requests (8315531)
- prevent in place reverse in setDatastore (473ab71)
- track ccg state internally (fd5596f)
7.5.0-release47.3 (2022-11-07)
Note: Version bump only for package timeline-state-resolver-packages
7.5.0-release47.2 (2022-11-02)
Note: Version bump only for package timeline-state-resolver-packages
7.5.0-release47.1 (2022-11-02)
- add method to manually purge viz rundown (49737e2)
7.5.0-release47.0 (2022-10-28)
- add methods for restarting windows (31e4289)
- add thread event handling for AsyncResolver thread (3a7581b)
- add thread event handling for AsyncResolver thread (68904e2)
- register error handler in threadedClass (67f42f3)
- register error handler in threadedClass (dae9db0)
- timeout a device terminate operation if it takes too long and force-terminate (7686d8b)
- update SofieChef device API (514d827)
- add Sofie Chef device (4fac092)
7.4.0-release46.1 (2022-09-27)
- improve error for http-device (40d00ab)
- use tlTime instead of time to remove future callbacks. (0e70a3f)
7.4.0-release46.0 (2022-09-26)
- don't stop playback when clipId is null (cfc8f2e)
- fixed memory leak in datastore (8e06eb6)
- improve callBackId creation, so that it relies more on the incoming timeline objects, rather than resolved timeline objects (349dbf3)
- index datastore references by path (9b48d72)
- invert warnOnEmptySlots to suppressEmptySlotWarnings (edcd7b0)
- lowered logging level for a apparent log call via an event. (ca06e3b)
- move all references to the root of the tl obj (130b6c3)
- put 'em back to make linter happy (e83a5ed)
- re-add programInput (b4a644f)
- Remove listeners to prevent memory leak (d0df778)
- Retry to initialize the rundown (583e32e)
- send only one callback per timeline object (00b168d)
- SOF-1046 prevent resetting transition on startup (e52cf60)
- SOF-1091 increase threadedClass freezeLimit (f852b99)
- test after casparcg-state update (c93ab57)
- types: remove unsupported/manual transport statuses (b362072)
- unrelated build errors (68791e9)
- update typings with datastore references (2c0074b)
- datastore: newer tl objs will override entry (9f31b9f)
- HyperDeck: add "warnOnEmptySlots" option (233a413)
- Hyperdeck: add explicit support for Preview and Stopped states (133776f)
- Hyperdeck: add support for play and goto commands (50e9e15)
- include more info about the request (f17ad70)
- Send custom clear commands to Viz Engines (40eb6e9)
- timeline datastore prototype (e122e8b)
- vizMSE: add logging of request body when client error caught (85a2894)
7.3.0 (2022-10-24)
- re-add net mock connect callback (95ebdad)
- re-adds a check for clearAllOnMakeReady before doing so (4b6168f)
7.3.0-release44.2 (2022-09-29)
- don't stop playback when clipId is null (cfc8f2e)
- fixed memory leak in datastore (8e06eb6)
- improve callBackId creation, so that it relies more on the incoming timeline objects, rather than resolved timeline objects (349dbf3)
- index datastore references by path (9b48d72)
- invert warnOnEmptySlots to suppressEmptySlotWarnings (edcd7b0)
- lowered logging level for a apparent log call via an event. (ca06e3b)
- move all references to the root of the tl obj (130b6c3)
- put 'em back to make linter happy (e83a5ed)
- re-add programInput (b4a644f)
- Remove listeners to prevent memory leak (d0df778)
- Retry to initialize the rundown (583e32e)
- send only one callback per timeline object (00b168d)
- SOF-1046 prevent resetting transition on startup (e52cf60)
- SOF-1091 increase threadedClass freezeLimit (f852b99)
- test after casparcg-state update (c93ab57)
- types: remove unsupported/manual transport statuses (b362072)
- unrelated build errors (68791e9)
- update typings with datastore references (2c0074b)
- use tlTime instead of time to remove future callbacks. (0e70a3f)
- datastore: newer tl objs will override entry (9f31b9f)
- HyperDeck: add "warnOnEmptySlots" option (233a413)
- Hyperdeck: add explicit support for Preview and Stopped states (133776f)
- Hyperdeck: add support for play and goto commands (50e9e15)
- include more info about the request (f17ad70)
- Send custom clear commands to Viz Engines (40eb6e9)
- timeline datastore prototype (e122e8b)
- vizMSE: add logging of request body when client error caught (85a2894)
7.4.0-release46.0 (2022-09-26)
- don't stop playback when clipId is null (cfc8f2e)
- invert warnOnEmptySlots to suppressEmptySlotWarnings (edcd7b0)
- lowered logging level for a apparent log call via an event. (ca06e3b)
- put 'em back to make linter happy (e83a5ed)
- re-add programInput (b4a644f)
- Remove listeners to prevent memory leak (d0df778)
- Retry to initialize the rundown (583e32e)
- SOF-1046 prevent resetting transition on startup (e52cf60)
- SOF-1091 increase threadedClass freezeLimit (f852b99)
- test after casparcg-state update (c93ab57)
- types: remove unsupported/manual transport statuses (b362072)
- unrelated build errors (68791e9)
- HyperDeck: add "warnOnEmptySlots" option (233a413)
- Hyperdeck: add explicit support for Preview and Stopped states (133776f)
- Hyperdeck: add support for play and goto commands (50e9e15)
- include more info about the request (f17ad70)
- Send custom clear commands to Viz Engines (40eb6e9)
- vizMSE: add logging of request body when client error caught (85a2894)
7.3.0-release44.2 (2022-09-29)
- timeout a device terminate operation if it takes too long and force-terminate (59ec81a)
7.3.0-release44.1 (2022-09-22)
- update v-connection dep (53fbc96)
7.3.0-release44.0 (2022-07-04)
7.1.0-release42.2 (2022-05-19)
- update casparcg-state (7698a5d)
7.1.0-release42.1 (2022-04-29)
- Build errors (249032d)
- Retry if retryInterval >=0 (3616a03)
- update hyperdeck dep (db75cc6)
- update supertimeline (251c8b5)
- yarn upgrade (40aa2e5)
- SOF-752 show init and cleanup (44264b0)
1.0.2-release37.1 (2021-09-02)
1.0.2-release37 (2021-08-31)
1.0.1-release37 (2021-08-31)
1.0.0-release37 (2021-08-31)
- allow multiple mappings to reference 1 casparcg layer (a604b08)
- bad merge (dd6ea93)
- do not clear elements and engines when going rehearsal<->active (09bf843)
- do not purge baseline items (0fe088d)
- do not purge elements when going active<->rehearsal (587b795)
- elements to keep criteria (3146254)
- Errors from cherry pick (4754a67)
- exceptions and timeouts (6cb01ad)
- extend templateData when allowing multiple mappings to reference 1 casparcg layer (eb04832)
- keep checking status of loaded elements (3085502)
- load only elements from the active playlist when restarting (7d21e69)
- make -1 disable caspar retry (8069aaa)
- make makeReady execute faster (913bcfc)
- missing optional chaining (11862a9)
- prevent duplicate external elements (6472eaf)
- recreate removed mediaObjects after reconnecting (1a7e65d)
- rehearsal<->active when gateway was restarted (3c40715)
- reload external elements that became unloaded (93bf3aa)
- remove duplicates in incoming data (e86f170)
- Remove ExpectedPlayoutItemContentBase from tsr-types [publish] (cd92561)
- report channel name instead of engine name (24387d5)
- Set fader label (78a3ecd)
- treat all status codes below 400 as correct (d0791b1)
- Add layerName property to mappings (c0d81eb)
- indicate elements as missing when MSE disconnected (68bf2fb)
- monitor viz engines over http (ab6c76b)
- rename activeRundown -> activePlaylist. (fb2ae0b)
- sisyfos retrigger mechanism (26033cd)
- Use layerName as default label for sisyfos faders (4e18a2a)
7.1.0-release42.2 (2022-05-19)
- update casparcg-state (7698a5d)
7.1.0-release42.1 (2022-04-29)
- SOF-752 show init and cleanup (44264b0)
- Revert "7.1.0" (8ce054c)
1.0.0-release37.6 (2022-02-17)
1.0.0-release37.5 (2022-02-15)
1.0.2-release37.4 (2021-11-08)
1.0.2-release37.3 (2021-10-14)
1.0.2-release37.2 (2021-10-14)
- Revert "test: Rename package on publish" (855f772)
1.0.2-release37.1 (2021-09-02)
1.0.2-release37 (2021-08-31)
1.0.1-release37 (2021-08-31)
1.0.0-release37 (2021-08-31)
- allow multiple mappings to reference 1 casparcg layer (a604b08)
- bad merge (dd6ea93)
- do not clear elements and engines when going rehearsal<->active (09bf843)
- do not purge baseline items (0fe088d)
- do not purge elements when going active<->rehearsal (587b795)
- elements to keep criteria (3146254)
- Errors from cherry pick (4754a67)
- exceptions and timeouts (6cb01ad)
- extend templateData when allowing multiple mappings to reference 1 casparcg layer (eb04832)
- keep checking status of loaded elements (3085502)
- load only elements from the active playlist when restarting (7d21e69)
- make -1 disable caspar retry (8069aaa)
- make makeReady execute faster (913bcfc)
- missing optional chaining (11862a9)
- prevent duplicate external elements (6472eaf)
- recreate removed mediaObjects after reconnecting (1a7e65d)
- rehearsal<->active when gateway was restarted (3c40715)
- reload external elements that became unloaded (93bf3aa)
- remove duplicates in incoming data (e86f170)
- Remove ExpectedPlayoutItemContentBase from tsr-types [publish] (cd92561)
- report channel name instead of engine name (24387d5)
- Set fader label (78a3ecd)
- treat all status codes below 400 as correct (d0791b1)
- Add layerName property to mappings (c0d81eb)
- indicate elements as missing when MSE disconnected (68bf2fb)
- monitor viz engines over http (ab6c76b)
- rename activeRundown -> activePlaylist. (fb2ae0b)
- sisyfos retrigger mechanism (26033cd)
- Use layerName as default label for sisyfos faders (4e18a2a)
7.0.1 (2022-06-28)
- test after casparcg-state update (4674f37)
7.0.0 (2022-06-27)
Note: Version bump only for package timeline-state-resolver-packages
7.0.0-release41.2 (2022-04-28)
- event listeners must not return anything (cb2fe13)
- move the types DeviceStatus, StatusCode to timeline-state-resolver-types (4d84179)
- obs: add missing mapping type to MappingOBSAny (2ff5522)
- upgrade casparcg-state (bbeee15)
7.0.0-release41.1 (2022-04-12)
- event listeners must not return anything (cb2fe13)
- move the types DeviceStatus, StatusCode to timeline-state-resolver-types (4d84179)
- obs: add missing mapping type to MappingOBSAny (2ff5522)
- upgrade casparcg-state (bbeee15)
7.0.0-release41.0 (2022-03-21)
- casparcg: update status on queue overflow (c2ec5f5)
- failing tests (d521ea4)
- Lawo: Typings issue, getElementByPath can return undefined. (3846f3e)
- more tests (031bbd1)
6.4.0-release39.1 (2022-02-03)
- add a multiplier to the options, to allow for adjusting estimateResolveTime (3941a71)
- allow for changing estimateResolveTimeMultiplier at runtime (289a619)
- errors caught not casted before usage threw TS compiler errors (167be0e)
- increase the estimateResolveTime values, to reflect measured performance (1cba2f6)
- update emberplus-connection (f32e78a)
- update emberplus-connection (a1782db)
- disable control of unmapped atem auxes (550e52d)
6.3.0 (2022-01-26)
- Homogenized the headline with the other Sofie repos (8325f53)
- revert timeline dep, as it caused issues on air. (71da109)
- Updated links to match the changed repo name (6fe910f)
- Updated URLs to reflect the changed repo name (4436674)
6.3.0-release38.0 (2021-12-17)
- update timeline dependency (2c75df1)
6.2.0 (2021-12-08)
- bug fix: the http-watcher wouldn't check the status on startup, only after ~30 seconds (1dd1567)
6.2.0-release37.7 (2021-10-22)
6.2.0-release37.6 (2021-10-20)
- disable casparcg retry for negative values (dc0e2ae)
6.2.0-release37.5 (2021-10-13)
- don't emit resolveTimeline when not active (f37f79b)
- improve robustness (6296d8c)
- update atem-state (9f250c3)
- separate the init from device creation (20cdd68)
6.2.0-release37.4 (2021-09-30)
- emitting of 'debug' events should only be done if the debug property is truthy. (5d015a1)
6.2.0-release37.3 (2021-09-30)
- update quantel-gateway-client dependency to latest (6f3e904)
- wait for releaseing quantel port before creating a new one (da4c862)
6.2.0-release37.2 (2021-09-21)
- emit more detailed slowCommands (91bda43)
6.2.0-release37.1 (2021-09-21)
- allow retry in _getRundown (8e37d5a)
- Build errors (13dce42)
- don't update elements after first connect an extra time (cc5ffc8)
- load only elements from the active playlist when restarting (fee2962)
- rehearsal<->active when gateway was restarted (595fbce)
- trigger
activateto reload elements after VizEngine restart (40d26a0) - wait after activation (5bace5a)
- map sisyfos channel by its label (afcf056)
- purge unknown elements from the viz-rundown upon activation (cff4d0c)
- rename activeRundown -> activePlaylist. (868beec)
6.2.0-release37.0 (2021-09-13)
- do not remove unknown vmix sources (c6a262b)
- do not send unnecessary lawo commands (91cf76a)
- reduce logging amount by only emitting some logs when active (9af530b)
- remove redundant log lines (216a3f5)
- vmix overlay/multiview input selection diffing (b915d51)
6.1.0-release36.2 (2021-09-07)
- only retry http commands for network failures (dd28e4c)
6.1.0-release36.1 (2021-07-12)
- prerelease workflow not setting version correctly (4f4fced)
6.1.0-release36.0 (2021-07-12)
- always send http param data if present (af326e1)
- OBS: incompatible/outdated OBS DeviceOptions topology (c83cd7b)
5.9.0 (2021-06-25)
- don't create device which already exists (b00edf3)
- resend failing http commands (cb2ee39)
- Revert "chore: enable docs after rls" (dcf6f0d)