Deepstream Support For Ubuntu 24.04 with bindings for Python 3.12 (original) (raw)
April 30, 2025, 11:56am 1
Hi everyone,
I’m working on a project that requires decoding multiple RTSP streams using the GPU and obtaining CuPy arrays from batches of those frames. My goal is to efficiently process these frames and use them as input to my existing inference pipeline.
Initially, I explored PyNvVideoCodec, which did help me achieve the basic functionality. However, I encountered several limitations:
- It lacks important configuration options, such as setting the RTSP protocol to TCP instead of UDP.
- It introduces significant initialization overhead by analyzing a temporal window of the stream to infer parameters - something that doesn’t fit my use case.
- Most critically, handling multiple RTSP streams requires spawning multiple Python processes (threads seem to suffer from performance issues, possibly due to the GIL), leading to a large overhead.
I then turned to DeepStream, and using your official Docker images, I successfully ran the following Python sample, which appears to be doing what I want.
That said, I’m targeting Ubuntu 24.04 with Python 3.12, and I have two questions:
- I’m not looking to fully adopt DeepStream for my entire pipeline - I’m only interested in decoding multiple RTSP streams in parallel and retrieving the CuPy arrays. Is there another NVIDIA tool or library I may have overlooked that can achieve this?
- If DeepStream is indeed the most appropriate (or only) solution, are there any plans to support Ubuntu 24 and Python 3.12 soon? Is there a public roadmap outlining DeepStream’s continued development and long-term support?
Apologies for the lengthy message, and thank you in advance for your time!
Best regards,
Jorge
Each stream builds the following pipeline
rtspsrc (nvurisrcbin is better, It support reconnect) --> h264deplay --> nvv4l2decoder --> appsink
This is in the roadmap, please wait for the official release
Can you share your reasons for not using deepstream inference? Maybe we can make improvements or give you better suggestions.
Thank you! So, to decode multiple RTSP streams on a GPU, Deepstream is the better solution, right?
And do you have any predictions for when that is going to happen? For instance, somewhere in the next month or the next six months?
I’m not going to use Deepstream inference right now due to bandwidth limitations to adapt our inference pipeline to use Deepstream. If I can decode the streams on the GPU in Ubuntu 24, I intend to do that in the future!
Deepstream integrates nvcodec related SDKs, which makes it easier to use. Different GPUs can create different numbers of decoder instances. Please refer to the following link
I cannot guarantee the specific time, please wait for the official release