Processing is interrupted during display timeout

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU) GPU (GeForce RTX 3060)
• DeepStream Version 6.3
• TensorRT Version 8.5.3.1
• NVIDIA GPU Driver Version (valid for GPU only) 545.23.08
• Issue Type( questions, new requirements, bugs) question

OS: Ubuntu 20.04
Environment: deepstream:6.3-triton-multiarch docker

I’m using deepstream python test 3 to run inference on RTSP streams. What I’ve noticed is that when I start the processing and some time later, the display becomes black after its timeout is reached, the processing is interrupted during that time period. And when I move the PC’s mouse to turn on the display, the processing resumes immediately as shown in the log file.
screen-timeout-log.txt (2.8 KB)

This behavior is also demonstrated in my custom deepstream pipeline based on python test3. I save the output detections from the rtsp stream in a database along with the timestamp. As you can see in the screenshot attached (timestamp-DB.png), there is a long gap between 10:39 and 10:59 during which the PC’s display timed out and the processing was interrupted.

However, when I use –no-display as an argument, there is no interruption in the processing when the display times out. Additionally, I’ve observed this behavior on 2 different systems.

I’m curious and would like to know:

  1. Is this behavior normal?
  2. If yes, then is there any way to avoid this processing interruption without using --no-display, when the display times out?

Appreciate your insights regarding this.

I think it’s normal, Display timeout may cause the sink to pause, causing the pipeline to enter a paused state

Do you use fakesink? If fakesink doesn’t meet your needs, let me look into whether there are alternatives

Yes I’m using fakesink but only when I don’t want to visualize the output.

Let me re-explain my question. Say I start the stream processing with visualization on i.e the no-display argument is False, and the system’s display becomes black after reaching its 10 min timeout setting. Then at that point is there any way that the pipeline does not enter paused state?

I think I roughly understand your problem. I think the system entered the suspended state, which caused the application to be suspended.

systemctl status sleep.target  // View sleep status
systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target // disable suspend

This does not affect the display sleep

You can also find relevant options in the system settings of the GUI

1 Like

Thank you for your response, the solution you provided is working.

Additional info for anyone else using this solution: after running the disable suspend commands, restart the system and log in again for the changes to take effect.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.