Troubleshooting
Stutter
to resolve a stutter issue, it's important to understand exactly which part of the tracking/rendering chain it is appearing in as we've covered, stutter is essentially information not being available at a certain part of the chain when it is needed therefore troubleshooting is about systematically going through each part of the hardware and software chain and checking that there are no bottlenecks or other limitations often the first step is to identify whether it is being caused on the " input input " side, by this we mean the link, origin and tracking processing or the " output output " side, which relates to the tracking data as it leaves the origin and arrives and is used on the renderer side input data from the cambar the sensor data from the cambar must reach the origin in a timely manner for it to be used when a link is present between the two devices there is a potential for this communication to be impacted the following tests can be done to see whether the issue is being generated due to bottlenecks in the data test remove the link temporarily isolate the link and origin connection temporarily by connecting the cambar directly to the origin if the stutter issue resolves then it is likely to be an issue with the link or link>origin interface test power the link/origin using a psu ensure the power requirements of both the link and origin are being met if either device is underpowered then this can cause data bottlenecks between the devices the link is particularly susceptible to this as it is more typically powered by camera outputs which may not be regulated test use grafana profiling tools the grafana interface provides a lot of metrics which can be helpful for identifying spikes or issues with the connectivity between the link and origin output communication between origin and renderer test check scenario and renderer logs scenario logs can be provided via the system report function and will display any dropped or missed packets on the renderer side, similar functionality should be available test inspect tracking data, compare tracking data locally vs when it's received via the network compare wrangler recorded data with data captured on the renderer side if wrangler captured data shows dropped or duplicated frames then it suggests that the issue is not being caused by the network or synchronisation between the origin and renderer test is the issue seen when using a different protocol the sdk full protocol uses tcp/ip, while the freed and sdk lite protocols utilise udp check to see if the issue is consistent across the protocols test connect to the renderer directly if the tracking data between the origin and renderer is not point to point, make a temporary test with a direct network connection this can remove the possibility of issues in the network layer, particularly if there are managed switches etc inline rendering issues stuttering issues are generally observed when viewing the output of a render engine, as a result, it's important to isolate whether the issues are being generated during the rendering process as a result of a synchronisation issue or performance limitation the following tests are suggested to rule out problems on the rendering side test load a simple test scene use a known working test scene on the renderer side and observe to see if the stutter issue is more or less prevalent test compare scenario calibration cones to renderer output sometimes it is possible to compare the calibration cones with a similar graphic on the rendering engine side, if issues are only seen on the renderer graphic is suggests that the stutter is being generated external of scenario when viewing the calibration cones in scenario, you must view them when "on air" is disabled to ensure that the rendering is accurate (when on air is active the viewport is degraded to ensure performance and shouldn't be used for diagnostic checks) test check gpu profiler the real time renderer should be able to provide a profiling tool to analyse or notify of rendering issues such as missed frames etc compare whether any issues in the profiler correspond to observed stutters test ensure synchronisation is present on renderer check to see that the renderer is synchronising data correctly with the camera signal in unreal engine the "timed data monitor" is designed for this and will indicate if there is a synchronisation issue present