2013-05-06 51 views
0

我的团队正在为使用立体相机的HTC手机开发应用程序。为了完成我们的处理,我们要求3D相机拍摄的静止图像采用MPO格式。默认情况下,它返回JPS图像。来自HTC Evo的MPO图片3D

如何让相机返回MPO图像?这是有记载的地方吗?

我已经花了一段时间在HTCs网站上,但无法找到他们的API或相机应用程序的可能帮助(因为他们的相机应用程序可以做MPO文件)的源代码。

回答

1

我不知道这个API,但它是非常简单的做你自己。 JPS格式只是一张图像,左半部分是一个摄像头,右半部分是另一个。所以第一步只是将其转换为两个单独的图像。任何一方从它创建与矩形的新位图:
http://developer.android.com/reference/android/graphics/Bitmap.html#createBitmap(android.graphics.Bitmap,%20int,%20int,%20int,%20int,%20android.graphics.Matrix,%20boolean)

的MPO格式是一个文件,一前一后短短两年的JPG图片。
http://developer.android.com/reference/android/graphics/Bitmap.html#compress(android.graphics.Bitmap.CompressFormat,%20int,%20java.io.OutputStream)

你可以找到大量的示例代码在线为Android用于裁剪图像并将其保存为JPG,这是几乎所有你:所以下次使用的压缩方法相同的文件输出流写两个JPG图片需要。

+1

我相信有一些位图utils与包含的示例代码可能有所帮助。 MPO最初是默认格式,但它被改为被认为是行业标准的JPS(并且更容易共享和编辑) - 但首先检查相机设置,看看你是否仍然可以选择以任一格式保存 – dljava 2013-05-07 16:17:13

+0

我想我们会只需完全切换到JPS。 HTCs文档说JPS文件是“水平压缩的”,但是当我检查相机应用程序的MPO输出和应用程序人员给我的JPS文件时,我看不出有什么区别。 – 2013-05-08 13:20:32