• Hardware Platform (Jetson / GPU) : GPU
• DeepStream Version : 6.2
• JetPack Version (valid for Jetson only)
• TensorRT Version : 8.5.2
• NVIDIA GPU Driver Version (valid for GPU only) 525.60.11 => 550.78
Hello.
I’m testing the (nvcr.io - Docker image based) Deepstream 6.2 version Python application.
In order to dynamically reconnect the camera(rtspsrc) without restarting the process,
the c code related to that link was transformed into python and used.
This function works fine in normal cases. However, the process sometimes stops when do “source_bin.set_state(Gst.State.NULL)” for the disconnected camera during long-term testing. It is difficult to debug because it does not occur frequently.
def reset_source_pipeline(source_bin, source_id) -> bool:
Logger().logger.debug("reset_source_pipeline")
current_time = int(datetime.now().strftime("%s"))
SourceController().update_source_info(
source_id,
{"last_buffer_time": current_time, "last_reconnect_time": current_time},
)
# mutex_unlock bin_lock
Logger().logger.info("State Null operation Start")
#That's where the process stops
change_state = source_bin.set_state(Gst.State.NULL)
Logger().logger.info("State Null operation Done")
if change_state == Gst.StateChangeReturn.FAILURE:
# Gst.error("Can't set source bin to NULL") # sourcebin
Logger().logger.error("Can't set source bin to NULL")
return False
Logger().logger.info("Resetting source")
if not Gst.Element.sync_state_with_parent(source_bin):
# Gst.error("Couldn't sync state with parent") # sourcebin
Logger().logger.error("Couldn't sync state with parent")
parser = source_bin.parent.get_by_name(f"parse_elem_{source_id}")
if parser:
if not pyds.gst_element_send_nvevent_new_stream_reset(hash(parser), 0):
# Gst.error("Interrupted, Reconnection event not sent") # parser
Logger().logger.error("Interrupted, Reconnection event not sent")
...
- process is stopped after last line.
This time, when we test on the gpu server, it seems that even the gpu error occurred when the deepstream-python application stopped.
After the server stopped and rebooted with this error, the gpu driver was not recognized. Usually, I reinstalled the same version of the GPU driver, but this time the same version was not installed and an error occurred. So I installed the updated version of the gpu driver, and it was installed well at this time.
-
I also find cases in jetson device that sometimes stop with set_state(Gst.State.NULL), and I want to know why. (Unfortunately, I don’t have the gst_debug log in this case)
-
I wonder why the gpu-related kernel/install error occurred.