如何将“bmp”保存为sd卡中的bmp文件?

时间:2012-08-15 10:05:19

标签: android bitmap android-ndk bitmapfactory

现在我正试图从视频文件中获取帧图片 我知道怎么做(使用ffmpeggetFrameAtTime功能)

所以我可以在我的程序中获得一个框架作为bmp结构 但是当我将其保存为pngjpeg时,

虽然视频的质量很好,但这些质量并不好

所以我想在没有任何压缩

的情况下保存这个bmp

从我听到的 copyPixelsToBuffer 功能起作用 但我不能这样做...... T_T ......

请任何人都可以向我解释如何使用这个? //我的录音大小是(1280,720)

我应该录制更大尺寸的视频吗? 或者我应该将帧保存为sd卡中的位图???

没有压缩???

//我的猜测是压缩。压缩是一种质量权衡

现在我用这个函数制作了一个png或jpeg 的 Bitmap.compress(CompressFormat.PNG, 100, fos)

1 个答案:

答案 0 :(得分:2)

来自维基百科:http://en.wikipedia.org/wiki/Portable_Network_Graphics

  

便携式网络图形(PNG /pɪŋ/ [2] ping)是一个位图图像   采用无损数据压缩的格式。

您使用所显示的代码进行的PNG压缩不会失去任何质量。 PNG是无损的。

最有可能发生的事情是将位图对象放入内存的实现在某处丢失了一些像素。

我建议您(为了进行比较和测试)在应用程序的全屏幕上显示位图对象,并将其与保存的PNG进行比较。只是为了检查哪个转换真的失去了质量。