Intel® Integrated Performance Primitives
Deliberate problems developing high-performance vision, signal, security, and storage applications.

Multiple Encoder/Decoder Solution

sadedoyin
Beginner
367 Views
Hi guys

Trying to do some parallel decoding encoding and thought I'd see what you guys thought was the best approach

Should I initiate Multiple Encoders/Decoders and then call each one in some form of queue or can one initiiation of encoder/decoder support multiple calls?

Or maybe threading is the best way to tackle such a problem, im not familiar with it in case im completely incorrect but if I'm could someone please give a brief overview on how to call it with ipp's encoders/decoders or point me to a document I can read


Thanks any help would be appreciated
0 Kudos
4 Replies
Chao_Y_Intel
Moderator
367 Views


Hello,

I am not sure I have fully understood yourquestion:

do you mean if it needs to encode/decode different video streams at the same time? If so, it need to create Multiple Encoders/Decoders UMC instance. Each instance will handle one stream.

The internal threading with UMC encoder/decoder will make the code more fast to handle one video stream. For example, for encoder, it will divide each the video frame into small slices, and handle these slice data in parallel.

Thanks,
Chao

0 Kudos
sadedoyin
Beginner
367 Views
Thanks Chao

When you say each instance can handle only one stream do you mean one frame...if thats the case threading only occurs on one frame
0 Kudos
Chao_Y_Intel
Moderator
367 Views

Hi,

It is not the video frame. It means different videos. For example, if you have mutiple different videos that need to be decoded/encoded, it need to have one instance for one video.

Thanks,
Chao

0 Kudos
sadedoyin
Beginner
367 Views
Ok. Implemented multiple encoders/decoders. However i've noticed max CPU usage when I use more than one encoder and decoder?

I've attached the code. Im transcoding data from two mobile phones. WIth the video data first being transcoded before its sent to the other phone. If I run the simulation in one direction the CPU usage is small literally 4% but as soon as I try to simulate in both directions thus using two encoders and 2 decoders the CPU max's out.


Im running on a Intel Atom 330 @ 1.6GHz and 4GB Ram

Surely with the image of size QCIF the CPU shouldn't be fully utilized?
0 Kudos
Reply