0
我试图从HD Live Stream中获取图像。获取OMX解码器YUV流并将它们转换为JPG。 JPEG完全受到干扰。尝试了一些小组的建议,但不工作。 我的分辨率是320x240。QCom解码器输出YUV缓存Distrubed
对于配置的320 * 240分辨率,我将获得缓冲区长度(386 * 256 * 1.5)。我没有得到如何获得这个新的宽度和高度信息。
我在Java中使用的JPG转换代码,并使用OMXCodec在Native。请帮帮我。
final int frameSize = width * height;
final int qFrameSize = frameSize/4;
int padding = 0;/*(width*height + 2047) & ~2047;
if ((width % 32) != 0) {
padding = (width*height) % 1024;
} else {
padding = (width*height) % 2048;
}
System.arraycopy(input, 0, output, 0, frameSize); // Y
for (int i = 0; i < qFrameSize; i++) {
output[frameSize + i*2 + padding] = input[frameSize + i + qFrameSize ]; // Cb (U)
output[frameSize + i*2 + 1 + padding] = input[frameSize + i ]; // Cr (V)
}
return ;
}
谢谢你, Raghu