来自Android相机的Jpeg图像无法作为Qt Pixmap加载

时间:2018-06-15 00:52:42

标签: android qt android-camera2

在我的Android应用程序中,我使用ImageReader曲面从相机捕获图像并将其转储到文件中。以下是相关代码:

void saveImage(Image img) {
   Bytebuffer buf = img.GetPlanes()[0].getBuffer();
   buf.rewind();
   byte[] data = new byte[buf.remaining()];
   buf.get(data);
   saveToFile(data);
}

通过avplay,查看时生成的文件似乎可以正常显示图像。但是,当我在Ubuntu上使用Qt' QPixmap::loadFromData加载相同的内容时,该方法失败。我得到的错误是:

Corrupt JPEG data: premature end of data segment
Invalid JPEG file structure: two SOI markers

我想知道是否有人对如何克服这个问题有任何见解。不确定Android MediaCodec类是否存在问题,或者Qt内部使用的jpeg库是否存在错误。问候。

0 个答案:

没有答案