Choosing the right card for multiple video decoding

Hello,
I’m currently using a video output card with 8 ports to play 8 videos loaded from files.

My client is looking for a solution that can stream 8 different videos synchronized and looped and be able to switch instantly between channels.

At the moment I’m not decoding videos in real-time but I load the file in a memory stream, I decode the video using “EMGU CV” and grab each frame saving it in a List (this takes a lot of rams but allows a lot of stability, playback capability, instant synchronization, and switch between output channels).

This process is quite slow using the CPU for video decode as it takes 8000 ms for 30 seconds of a 1080p 30fps video.

I found the NVIDIA Video Codec SDK page with a benchmark showing a list of graphic cards that can decode up to 2000 frames each second, this list seems not updated with the latest cards so I would like to know which cards can help me improve decode time or has the capability of decoding multiple videos in real-time (8 1080p at the moment but this may change in the future to at least 4 in 4k).

I’m currently developing in C# using .NET Framework and the Video Codec SDK is written in c++ is there any official C# interface/wrapper I can use?

Any help would be appreciated.

Thank you for your time.

Hello there,
You seem to use the very same approach as me :) And I guess if the final product would be for the same purpose :)

I can only answer about the GPU as I do not use C# for this. You see, our approach is basically exploiting the NVIDIA Video Codec SDK extreme performance - which is adjusted to the fact that it can decode some 8K (some 16 FullHD) in realtime. All the GPUs in one generation share the same NVDEC unit so the performance among GPUs is circa the same. Some QUADRO cards have multiple of these units available, however, the price might be too much.

I am thinking about the future of 4K videos too, that is why I am visiting the forum :) But it seems dark so far. Maybe if in another generation the nvidia decoders will be capable of 16K in real time…

Hello,
thank you for replying.

I ended up buying an RTX-4000 it can decode up to 620 fps of 1080p 29.97fps (H264) videos using NVIDIA Video Codec SDK, Emgu.cv is planning to add hardware acceleration of video decode support soon, so I’ll stick with it.

Fortunately, 4k is still not a requirement, but we’ll get there one day hopefully, the next generation of Quadro will be able to decode 4k videos fast enough.

That is exactly the best choice right now ;) but because it has 2 NVDECs.

By the way, Just because I’m curious, do you think that you can tell me what is the final product about?

I wish i could but I signed an NDA so I can’t talk about the product.

1 Like