Hi,
In DVRRDK, we have aac encoder and decoder in DSP. I test the run time of calling aac encoder or decoder one time. When I use just one thread, the run time is always less than 1ms. But when I add other threads to the program, for example, threads for video process, the run time increases. It could be more that 20ms sometimes. I don't understand why the run time increases.
I know that the aac encoder and decoder are based on RPE process, and when doing encode or decode the thread will be blocked until Rpe_process call returns. So I wonder if it is because the other threads will hold the CPU when the audio encode or decode thread is blocked. And when the Rpe_process call returns it must wait to get the CPU again.
Could someone know the reason?
Thanks in advance!