我正在使用新的Camera 2 API,特别是指Google提供的Camera2Raw示例,用于将我的图像另存为DNG文件。但是,我确实希望读取此DNG文件并在下一个活动中对其进行处理。
根据我在线阅读的内容,我们没有任何直接的方法来读取文件。我的方法是使用ExifInterface类使用Exif数据获取宽度和高度,然后将数据流用作输入并为RAW图像制作编码器。
但是,对于DNG文件,ExifData为null。 android是否设置了数据,还是我需要在CaptureRequest上做任何不同的事情?相同的JPEG编码图像具有很多信息。
如何确保DNG图片的元数据完整?谢谢。有没有更简单的方法来读取DNG文件?
最佳答案
如果您正确使用了DngCreator
Api中的Camera2
类,则所有元数据都应该很好,只需记住设置在Image
回调中从ImageReader
项获得的方向和宽度/高度值。
如果要检查DNG文件的元数据,则应使用程序作为Adobe Photoshop或Adboe LightRoom(用于您的电话设备)。无论如何,在Android N中,如果我没有记错的话,您都可以使用MediaScanner
类检测DNG文件。