AnsweredAssumed Answered

picStreamBufferAddr field of EncParam ignored on iMX6

Question asked by David Boltyanski on Aug 11, 2014
Latest reply on Sep 10, 2014 by Joan Xie


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 ?