This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux DVSDK Codec Engine Operation



I have a custom built board running Linux with DVSDK.  I have successfully created a Codec Engine DSP server and have a few questions.

The Codec Engine DSP server that contains several algorithms that need to be called from an Linux application that never ends.  I have a couple of questions.

1.  Should I open and close the handle to the engine for each Algorithm or should I open the Codec Engine and never close it?

 

Currently my application is built in Linux with no DSP algorithms.

1.  Should I add the algorithm create, process, and control functions to my existing Linux application and then build it with the necessary DSP tools?

2.  Or should each algorithm be a separate application that my current application calls into somehow? ?

 

Hopefully someone can give me some tips.

Thanks.

  • The codec engine is a framework that automatically takes care of loading the DSP with the "DSP server" (DSP binary image). The engine needs to be opened once in each Linux thread that invokes the functionality of codec engine. The engine should be closed to free up system resources when your application exits, ie., when it is done with the codec engine. So if your application never ends and it constantly needs to access the algorithms, then you shouldn't have to close the engine.

    If you want to invoke DSP algorithms in your DSP server, you need to create the engine with your server in your application's .cfg file. Then your application can call the algorithm create/process/control/delete functions after opening the engine. Your application continues to be built under linux using your ARM-side compiler (Codec engine takes care of loading and running the DSP binary image behind the scenes). There is no need to make each algorithm into separate applications.

    See the DVSDK demos or Codec Engine examples if you want to see how algorithms are invoked. The codec engine also comes with documentation that should help.

    Best regards,

    Vincent