disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

r25.0 Changelog+-------------------------------- +| r25.0 Release - 160184 |+-------------------------------- +Release day - May 31st 2023

New Features
DSOF-21756 Support for Invisible: real-time markerless mocap by move.ai
For details on how to use real-time markerless motion capture with Invisible by move.ai, please visit:https://help.disguise.one/en/Content/Workflows/Motion-Capture/Invisible/Invisible-Overview.htm
DSOF-23201 Improve lens tracking source workflows
In r25 we have made a number of improvements to the camera tracking workflow within Designer.
To add a tracking source to a camera:
1. Under Devices, add a PositionReceiver
2. In the PositionReceiver under Drivers, add the relevant tracking driver and set it up to receive
tracking data
3. Engage the position receiver
4. Create a Camera in the Stage
5. Under the Camera Settings, select tracking source. This should have been automaticallygenerated by the driver once tracking data started to be received
6. Data from the tracking source should start overwriting the values in the camera
General UI Improvements
We have now highlighted values in the camera that have been overridden when using external tracking
sources or spatial calibrations. We have also added tooltips that indicate to the user that each value
has been overridden.

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

We have also added an ‘Open Driver’ button to go straight to the driver from the tracking source, andvice versa we have added an ‘Open Tracking Sources’ button in the driver to go to the tracking source toimprove navigation.
Added receive time smoothing to tracking sources
Within the tracking source, we have added a number of new options. The first is the ‘Smooth receive
time’ box, which when turned on smooths out the tracking data received by disguise, but may add asmall amount of latency. This was previously an always-on option but can now be optionally turned on
or off by the user.
Added the ability to disable particular axes in tracking sources
The Values box can be expanded to provide all values being provided within the tracking source, andthese will be highlighted in green. There are also check boxes next to each value to allow users to
untick values that they don’t want passed through to the tracking source. These values will change
within the camera when unticked, and can be edited by the user manually within the camera.
To toggle values applied from the tracking source:
1. From the Camera, open the Tracking Source editor
2. Expand the Values separator
3. Values highlighted in green are being received from the tracking source. Values with a dark grey
background are not being received. Values with a light grey background are received but toggledoff
4. Untick the checkbox to stop the value being applied in the camera
5. Tick the checkbox to apply values againdisguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

We have also added a ‘Delays’ option within the tracking source to apply lens delay offset if required.
In previous releases, if users had a tracking source that failed to send a particular value then we would
have used a dummy value on the camera. In r25 we now leave the value that has been provided by the
tracking source and will not replace them with a dummy value.
Lens focus parameters for tracking sources
We have also added parameters for controlling focus and depth of field parameters. This has currently
been implemented for RenderStream Unreal Engine assets only. Within the Unreal project, the user has
to select the ‘CineCamera’ for the channel.
To use lens focus parameters:
1. Set up a RenderStream layer with an Unreal asset, with a channel created from a CineCamera
2. Map the channel to a Camera or MR set backplate or frontplate
3. Start the RenderStream workload

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

4. Adjust the ‘Focus mode’ under Camera / Physical / Lens / Focus. There are three options:a. Disabled - no depth of field. Focus mode is disabled by default
b. Manual - use this mode to turn on the feature. Focus distance and aperture can be
adjusted manually to adjust the depth of field. These can also be received from tracking
sources which provide themc. Object Tracking - select an object in Designer to calculate the focus distance from. The
aperture will be changed manually or received from tracking data, and the focus
distance will be controlled by tracking the specific object within your scene
5. Adjusting the lens focus parameters in the camera should cause the depth of field effect to change in
Unreal Engine
Tracking Smoothing graphWe have added tracking smoothing graphs to help debug tracking issues. The lines in the graph can beinterpreted as follows:●

Lookup offset (ms) - this is the time in milliseconds between the smooth tracking data that weare looking up, and the latest data received. This should almost never go below zero, as thatwould mean that we have received the tracking data too late to be able to smooth it. If it isconsistently much greater than zero, this means that we are adding unnecessary additional
latency whilst waiting to receive smooth data●

Index delta - the change in index of the tracking data that we look up in the buffer across eachframe within Designer. If the tracking frame rate is twice the Designer frame rate, this would bearound 2. The smoothness of this line shows the success of the receive time smoothing. We
are aiming for a consistent index offset between each packet of tracking data that we look up●tReceived delta - the change in the receive time of the tracking data of each frame. This shows
us how smooth the tracking data would be without receive time smoothing. It can be comparedagainst the ‘Index delta’ line to check that receive time smoothing is working

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one●

Instantaneous smooth data delay (ms) - indicates how far we would have to look in the buffer toensure that we have received tracking based on the latest received packets. This is aggregatedover time to give a stable lookup time●

Local smooth data delay - the maximum smooth data delay for this specific machine●

Global smooth data delay - the maximum smooth data delay over all machines. This isparticularly relevant when we are redistributing tracking data across machines. It should
provide a consistent period to look back in the buffer to ensure that we have smooth tracking
datadisguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-7571 BlackTrax: Implement BlackTrax Centroid calculations
We have implemented centroid tracking sources into the RTTrPMDriver within the PositionDriverdevices. This means that we can now receive centroid data within disguise for Blacktrax tracking
systems.
DSOF-22936 Add ARRI LDS as a device driver for receive lens data native from Arri Cameras
We have added Arri LDS within the PositionReceiver devices so that users can receive metadata from
Arri cameras into disguise - that being focal length, aspect ratio, vertical and horizontal field of view,
sensor size, aperture, and focus distance.

Improvements
DSOF-22279 Ensure Quad-SDI VFC output signal is not interrupted after configuration
In previous releases, the output from a Quad-SDI VFC card would be interrupted if a project would berestarted within Designer
In r25, if a user was to restart a project within Designer then the output from a Quad-SDI VFC card
would be the same resolution as it was before the project was restarted. This prevents the signal being
interrupted upon restarting a project within Designer.
The only time that an output will be interrupted from a Quad-SDI VFC will be if a disguise media server
was restarted or powered off, or when apply feed settings is executed.
DSOF-22410 Support focus and iris data in FBX export from shot recorderIn r25 we have added both aperture and focus distance to the default parameter collection for new
cameras within the Shot Recorder feature. These properties can also be set within the Shot Recorder
FBX export.
DSOF-22460 Keep last-known camera position if camera tracking dropsdisguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

In previous releases, when camera tracking is lost, the camera will revert back to 0,0,0. In r25, thecamera tracking will remain at the last tracked camera position.
DSOF-22672 Make common base project for d3api and d3service
DSOF-22837 Write functionality to clear up exported glb, movie and metadata files
We have added an improvement to the Previz Link within Designer in r25 to clear up disk space bydeleting old export files related to Previz that are no longer being used by any other application. Any
export file that is still being used will not be deleted until the next time a clean-up takes place, whereagain we will only delete export files that are no longer being used by any application.
DSOF-22937 Move nginx logs to d3 app data directory instead of in program files
In r25, nginx logs have been moved from the program files path to
C:\Users\d3\AppData\Local\d3\nginx
DSOF-22995 GUI: The layer editor should move to front open keyframe editors when it gains focus
In previous releases, when working on a large timeline that overlaps on-screen with a layer editor, if auser was to click on the layer editor to focus on it, the layer editor widget would be foreground but the
keyframe editor would be behind the timeline. In r25, when a user brings a layer editor into focus, thekeyframe editor will now foreground with it.
DSOF-23002 Sequencing: On project upgrade, disable sequencing for all fields which are not sequenced
In previous releases, if a project was upgraded from a version of Designer that did not support the
Keyframe Toggle (before r20.0), all fields were set to have Keyframes enabled. This required asignificant amount of tidying to be able to benefit from the Keyframe Toggle. In r25, we have enabled
any fields that only have 1 frame and therefore no sequencing should have the Keyframe Toggle
automatically set to off on project upgrade.

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-23110 Videoins with placeholder images should have the resolution of the placeholder.
In previous releases, when adding a Videoin for a placeholder image, the video would be set to the lastresolution of the video input received by disguise. In r25, if a Videoin is added with a placeholder image,the video will be set to the resolution of the placeholder image that is used. The Videoin will override
the placeholder image resolution when it is available.
DSOF-23245 Optimize DmxScreenRead layer
In previous releases, it was reported that the DmxScreenRead layer was impacting the performance of
Designer. We have now optimised the layer.
DSOF-23336 IP VFC SDP file paths should be discoverable
We have added a ‘Copy SDP path to clipboard’ button within the IP-VFC settings menu. This includes
the SDP path that can be copied and added onto a ST 2110 receiver device, such as the Megapixel
Helios.
DSOF-23646 GET activetransport API should return the selected track for each transport
We have enabled the ActiveTransport API to return the currently selected track for each transport. Thiscan be found within the GET activetransport API, where we have included a currentTrack property thatindicates the current selected track of a given transport.
DSOF-23756 Add double dot RS plugin version to schema JSON
We have added a new RenderStream release naming convention to include double dots forplugin-specific hotfixes. This can now be seen within the Designer GUI.
DSOF-23808 Implement support for Arri Alexa LogCv4 to ACES workflow
DSOF-23927 Allow user to copy/paste notifications
Users can now copy and paste notifications from Designer without having to open the console.

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

Fixes
DSOF-19735 - Fixed an issue where snapshots failed to create after the snapshot widget was closed
DSOF-19736 - Fixed: If a snapshot has failed to create, an access violation was displayed if a widget
was opened while taking a snapshot
DSOF-20435 - Fixed an issue where the CPUMonitor did not respect poll unit/interval settings
DSOF-20791 - Fixed an issue where "Edid port invalid errors" on applied feed settings
DSOF-21510 - Improved the efficiency of Text Layers
DSOF-21687 - Fixed an issue where Media Distribution did not report correct size for image sequences
DSOF-21694 - Fixed an issue that occurred when undoing a creation of a group with the widget open
displayed a "not in list" error
DSOF-21839 - Fixed an issue where projects started with a Masking object appearing until the stage isbrought into focus
DSOF-21988 RenderStream: Fixed an issue where Designer would hang when stopping a workload
DSOF-22109 - Fixed an issue where list indirections were not triggering multitransport
DSOF-22756 - Fixed an issue that occurred after deleting a Skeleton object from Stage and its StickMan was still visible
DSOF-22780 - Fixed an issue where it was not possible to open the rollback window of 2 objects at thesame time
DSOF-22781 - Fixed an issue where duplicating group with video transition layer
DSOF-22798 - Video Input Patch Editor: Fixed an issue where the format field was not refreshed uponproject startup

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-22812 - Fixed an unnecessary error continuously being thrown when an empty texture parameter
was assigned
DSOF-22846 - Fixed an issue that occurred when disengaging the Position Receiver, the status didn't
work as expected
DSOF-22916 - Fixed framerate drops on solo with section on the timeline
DSOF-23030 - Fixed an issue where a new section break was not dropped on the exact frame whenzoomed out and using ; ` shortcut to move playhead
DSOF-23103 - Fixed an Access Violation when using ctrl+z to undo deleting a layer
DSOF-23107 - Fixed incorrect timestamps on a newly created project within d3manager
DSOF-23127 - Mosys Driver: Fixed an issue where it was possible to edit lens values in the GUI whenusing Mosys GeneratedCameraTrackingSource
DSOF-23153 - Fixed an issue where Video Inputs was not scrollable
DSOF-23157 - Fixed an issue where Udp::connect error didn't specify which port it failed to bind to
DSOF-23159 - Fixed an issue where ObjectView did not expand according to buckets / subdirectories
DSOF-23179 - Fixed an issue where the VideoIn format field was not serialising correct value withdirector/actor setup
DSOF-23180 - Fixed an issue where Layer Stack did not affect placeholders in LogicalVideoInDevice
DSOF-23215 - Fixed an issue where Movie Output > Output movie size had options for 2K and 4K export
on the MPEG-4 drop-down list despite Designer reporting errors that "d3 designer can only export
resolutions up to 2160 pixels" and then failed any export attempt
DSOF-23264 - Fixed an Access Violation when taking a Snapshot after closing Snapshot manager
DSOF-23287 - Fixed an issue where a calibrated camera with no tracking source silently overwrote lens
intrinsics

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-23303 - Fixed an issue where the console was spammed when Designer was minimised whilerunning in application mode
DSOF-23319 - Fixed an issue where Designer delayed tracking longer than it needs to when doingreceive time smoothing
DSOF-23328 - Fixed an issue where many (Save) Actions were not unsubscribed at d3 shutdown
DSOF-23331 - Added detailed logging on shutdown for still subscribed Actions
DSOF-23332 - Fixed an error at 'MissingMediaDomain: checkMissing'
DSOF-23333 - Fixed an issue that occured when changing SLC sizes would result in an error after
configuring feed
DSOF-23342 - Fixed an issue where copying and pasting a layer at the end of the timeline did not extend
the track
DSOF-23358 - Fixed an issue where keyframes outside of the highlighted grouping area were notdeselected and not included in the keyframe grouping
DSOF-23361 - Fixed an issue when assigning empty VideoInTexture caused a parameter size error
DSOF-23368 - Fixed an issue when selecting a group of keyframes whilst there was already an active
group selection in the keywidget added the new selection to the old
DSOF-23422 - Fixed [XR] Spatial Cal not working as expected
DSOF-23429 - Fixed an issue where a "'NoneType' object has no attribute '__base__'" notification wasdisplayed when right clicking on proxy maker with disableProxyMaker option switch enabled
DSOF-23513 - Fixed iPod 6 showing as an option in OmniCal
DSOF-23550 - Fixed an issue where the Patch Assignments Widget could not be opened
DSOF-23558 - Fixed an issue where Telemetry would fail with error "queryLogs failed: Can't findmanifest"

disguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-23566 - Previz link: Fixed an issue where props didn't handle alpha material and textures properly
DSOF-23575 - Fixed an issue where Rotational X value flickered between two numbers in Tracking
Source Data when Smooth Receive Time unchecked
DSOF-23581 - Fixed an issue where ‘Cannot create a link without a Resource’ error was displayed when
adding the new depth of field parameters to the shot recorder
DSOF-23595 - Fixed an issue where the ‘enable Depth of Field (DOF)’ option check-box in Camera
settings has changed to a number field input box
DSOF-23598 - Fixed mesh fragment artefacts in a mesh mapping
DSOF-23611 - Fixed an issue where upper and lower-case letters in names of the Camera Settings weremixed up
DSOF-23613 - Fixed an issue where it was not possible to do secondary observations with trackmen
camera tracking system as zoom encoder is always 1.f
DSOF-23620 - Fixed an issue where the prop mesh could not be assigned 'None'
DSOF-23629 - Fixed an issue where Mesh Mapping would jump the camera for a few frames to adifferent position
DSOF-23666 - Attribute Error: Fixed 'NoneType' object having no attribute 'hidden' when adding a
spherical camera
DSOF-23685 - Fixed the Focus field inside Camera widget not working as expected
DSOF-23716 - Fixed a VirtualCam notification error when starting RenderStream with MR set mapping
DSOF-23740 - Fixed an m_renderPoseHistory.empty() Error Notification upon re-opening a project withRenderStream layer
DSOF-23751 - Fixed an error spamming whenever opening the Tracking Source widget of a Skeletondisguise Technologies
88-89 Blackfriars Road
LondonSE1 8HA
United Kingdom
info@disguise.one
www.disguise.one

DSOF-23754 - Fixed an issue where a camera with a tracking source selected and no videoin, opening
the camera widget showed an error
DSOF-23777 - Fixed Open Tracking Sources widget not working as expected with Skeletons
DSOF-23783 - Fixed an issue where VariableVideoPlayer: "Invalid frame calculated"/ "start != end"
notification was shown on sharp speed changed - check
DSOF-23811 - Removed Skeleton Scale
DSOF-23893 - RTTrPM driver - Fixed an issue where centroid positions had Y / Z positions swapped
DSOF-23899 - Fixed an issue where the Inner Frustum was not visible when using Backplate and Mesh
Mapping
DSOF-23963 - Fixed NGINX being set to Manual instead of Automatic in Services
DSOF-23978 API: - Fixed an issue where boolean properties in result of /service/system/detectsystems
never returned to 'false'
DSOF-24042 - Fixed an issue where alembic mesh centroid did not match when mesh is far away fromorigin
DSOF-24049 - Fixed a typo on response to http://localhost/api/session/status/health
DSOF-24083 - Fixed multipleAccess Violations and crashes to desktop when trying to stream 3
channels over RenderStream