Ways to Fix Video Lag Issue with Plus Server

Hi everyone,

I am trying to record videos (.mkv format) using the PlusServerRemoteControl.exe from two different epiphan framegrabbers. I find that there is a lag in the recorded videos when I am playing it. Can anyone please suggest me ways to improve the video quality and overcome the lag.

Thank you,
Best regards,
Srijeet

Check that your configuration is optimized for performance:

  • Enabled item skip during playback is checked in Sequences module’s Advanced section
  • Save changes is enabled for video streams (that allows making a shallow-copy of the images from the sequence into the scene, which is faster than deep-copy)
  • Window/level is set to Manual W/L for all volume proxy nodes in Volumes module → Display section (auto-window/level takes a little bit of time, manual mode disables the computation)
  • Remove any unnecessary rendering that may slow down the rendering (such as volume rendering, markups, or complex models)

If these don’t help then you can reduce the amount of data to process (reduce the frame size, frame rate, color depth) or upgrade your hardware. If these are not feasible then do profiling (e.g., using VerySleepy) and report what are the performance bottlenecks when you replay the videos.

Thank you so much, the optimization helped!

Best regards,
Srijeet

Thanks for the update. Do you know which recommendations were the most impactful for your use case?

Upgrading the Hardware (6 cores to 12 cores) was most impactful in my case while recording. Also I enabled the item skip during playback and Window/level is set to Manual W/L while replay.

1 Like

I am getting back to the this old post, because I face another problem with recording the videos. I need to perform some image processing algorithms which utilises a lot of CPU as well. But at the same time I need to record.

Is there a possibilty to somehow use the GPU while recording? to avoid lags and obtain better video quality with the recording of the plus server.

Recording requires lots of RAM (to record into memory) and/or fast disk. GPU could make compression faster, but it would be still an overhead to pass the images to the GPU and get back the compressed data from the GPU, so it would overall slow things down compared to direct uncompressed writing to main memory or disk.

If you find that one computer cannot reliable handle all the tasks then you can offload either the recording. For example:

  • Use a “data acquisition computer” that records data locally to disk and broadcasts the recorded data via OpenIGTLink. The “visualization and processing computer” would receive the data via OpenIGTLink and process and display the data (and would not need to worry about recording).
  • Use a “main computer” for acquiring, recording, and visualization; and use a “processing” computer that receives data from the main computer, processes it, and sends it back to the main computer.

If you find that your computer has idle cores then you can distribute the workload over several processes on the same computer (e.g., do the processing in several separate processes, using for example the ParallelProcessing extension.

1 Like

Thanks a lot for your suggestions. I would try them out!