We trying to use buffers queue for vpu encoder. We allocate several frame buffers and try to it to encoder in following way
enc_param.picStreamBufferAddr = output_mem_desc.phy_addr;
enc_param.picStreamBufferSize = output_mem_desc.size;
ret = vpu_EncStartOneFrame(handle, &enc_param);
ret = vpu_EncGetOutputInfo(handle, &outinfo);
But the buffer is not updated.
From following statement in docs
picStreamBufferAddr is a start address of a picture stream buffer under line-buffer mode and dynamic buffer allocation
I understand that while opening encoder instance i should set ringBufferEnable and dynamicAllocEnable as follows:
|encop.ringBufferEnable = 0;|
|encop.dynamicAllocEnable = 1;|
But from the same doc file it appears
dynamicAllocEnable is not used in i.MX 6Dual/6Quad.
Deos it mean that there is no way to use several output buffers in encoder on i.MX 6Dual/6Quad, ?
Maybe there is some other set of flags we should set ?