在iPhone上更快,更高效的JPEG转换和压缩

时间:2010-10-14 09:53:01

标签: iphone optimization compression camera jpeg

我正以25fps的速度从iPhone相机抓取帧图像,分辨率为192 x 144和420v BGRA格式。

我正在将CVImageBufferRef转换为UIImage s,然后调用UIImageJPEGRepresenation(image, compressionQuality)来获取图像的压缩JPEG版本。

在Instruments中使用Time Profiler,我可以看到75%的CPU时间用于获取图像的JPEG表示,导致我需要在应用程序中完成的其他操作变慢。

如果我将压缩设置为1.0(即没有压缩),并且如果我将其设置为0.0(即完全压缩)则花费更多,它会稍微波动,花费更少的时间。

是否有更有效的方法从iPhone的相机获取图像的JPEG表示?

我是否可以在不将CVImageBufferRef转换为UIImage的情况下获得JPEG表示(因此切断了相当昂贵的Core Graphics绘图操作)?

1 个答案:

答案 0 :(得分:1)

关注应用程序的响应性或所需的实际压缩时间?将JPEG代码包装在一个块中并将其放在后台队列上怎么样?