iphone - iPhone 上更快、更高效的 JPEG 转换和压缩

标签 iphone optimization compression camera jpeg

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

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

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

它有一点波动,如果我将压缩设置为 1.0(即不压缩),则花费的时间较少;如果将其设置为 0.0(即完全压缩),则花费的时间较多。

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

我可以在不将 CVImageBufferRef 转换为 UIImage 的情况下获得 JPEG 表示(从而省去相当昂贵的 Core Graphics 绘图操作)吗?

最佳答案

问题是应用程序的响应能力,还是所需的实际压缩时间?将 JPEG 代码包装在一个 block 中并将其放入后台队列怎么样?

关于iphone - iPhone 上更快、更高效的 JPEG 转换和压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3931981/

相关文章:

iphone - UITableView 单元格文本不显示?

iphone - 高分辨率图像和视网膜显示

algorithm - 构建具有最大值的表达式

optimization - RMagick - 我应该使用哪种 rmagick 方法来优化大图像以减少图像加载时间?

ubuntu - 用 tar 压缩,tar : Exiting with failure status due to previous errors

ios - 自签名 CA 在 iOS 13 中不再受信任

iphone - 重写内部 UIViewController 方法,因为内部方法给我带来了错误

c++ - 准备两个具有相同 SSL_CTX 状态的应用程序数据

java - 字节数组操作

bitmap - 紧凑位图差异/补丁