Hi I'm running EZSDK version 5.03.01.15
I’ve been working on a program that basically configure the VFCC capture component followed by the VIDENC encoder component, encodes for a bit and then does the orderly shutdown to get the components back to loaded state (all buffers being freed) and then reconfigured and buffers re-allocated and so on in a loop.
The idea is to mimic real world use where the system doesn’t simply run a single configuration of input resolution and output encoder configs but can be modified at run time to do all sorts of things.
After running more than 6 iterations of getting the components to work from the loaded state and back, I get the following assert message from the open max sources:
omax_test: OmxProxy.c:1409: omxproxy_alloc_buffer: Assertion `(currentBuffer < pComponentPrivate->maxNumBuffers)' failed.
So I went to checkout the OmxProxy.c file and noticed that the maxNumBuffers field of the component PROXY_COMPONENT_PRIVATE struct doesn’t seem to get decremented anywhere in the code (the omxproxy_free_buffer function does not do it). It seems like a bug to me. Since the open max samples typically do one thing and then just exit it might have easily been overlooked.
Could you confirm this or maybe shed some light into what other possible issue might be causing the problem.