I have a question regarding the order of the jpeg quantization tables passed to the VPU.
I noticed that when using fslvpuwrap or imxvpuapi that the DQT marker of the JPEG has incorrect ordering. It is in "natural order" but it should be in zig zag order according to the specification.
Looking at the VPU API RM it only states this, in table 4 (Q Matrix Format):
0x000 Y_QMat3 ... Y QMat0
0x03C Y_QMat63 ... Y_QMat60
And I suppose that the Q Matrix here is ordered according to the JPEG specification. In this case both the VPU API (imx-vpu), fslvpuwrap and imxvpulib needs patching. The imx-vpu lib writes the DQT marker exactly as input to the library but needs to reorder the coefficents as above when passing it to the VPU, and the wrapper libraries should input the tables in zig zag scan order.
Do you agree?