iPhone 15 Pro深度体验:性能与影像双巅峰
|
亲历现场。那天凌晨三点十七分,我盯着Build Server上那个红得发烫的Failed弹窗,手悬在键盘上方没动——不是不想敲重试,是怕它又把隔壁测试妹子刚刷好的A/B灰度包给顶掉。她蹲在窗台边用棉签擦镜头模组,一整排iPhone 15 Pro叠在铝合金支架上,玻璃面朝南,晒到发烫,反光刺得人眼疼。我原以为厂商对接人老张至少会打个电话问句“卡哪了”,结果他发来一句“客户说这版必须按点上线”,后面跟了个表情包:一只猫举着小旗子跑过终点线。那旗子上印的还是我们上个月被砍掉的AI超分SDK图标。
产品概念图,仅供参考 测试机堆在窗台晒到发烫。楼下便利店的关东煮摊子还没收,咕嘟咕嘟冒热气,卤蛋浮沉像没校准的陀螺仪。我抓起桌上那台冷凝水还没擦干的样机重测——就测那个“性能与影像双巅峰”的自动HDR切换时延。点了三次,录屏时间戳全对不上:第一次切进相册是238ms,第二次191,第三次直接跳成472。不是误差,是底层sensor config loader里多塞了一行debug log,print前没加__android_log_print_level判断。这个我敢打包票。但至于为什么只在vivo某款中端机型上复现?我说不准。反正厂方那边只认“iOS端没这问题”,连log都懒得看一眼。 编译等待时窗外洒水车经过。水雾喷得挺高,撞上三楼空调外机溅出彩虹,持续了大约十八秒。我就看着那道彩虹,想不通怎么同一套open camera HAL封装,在小米某台新机上能跑通CFA重建,到了oppo这边就报EPIPE——报错堆栈最顶上居然还带一行注释:“// TODO: refactor for dual-ISP alignment (Zhang, 2022)”——这行字是三年前留的,作者早离职了,现在接锅的是外包同事阿哲,他今早刚往build.gradle里硬插了两行proguard-rules,只为绕过某个闭源lib的symbol冲突。我问他为啥不提pr,他说:“PR过了也合不进去,他们merge queue排到下周三。” 桌上的机械键盘声。青轴,脆,敲“rm -rf”那下特别响。我删了整个out/target/product/xxx/下的vendor_img,重走了一遍full rebuild。其实没必要,真没必要。那个“优胜劣汰”不是技术结论,是资源调度结论:当你们同时压四家外包测同一组feature,有两家测出问题但报告写得太软,有一家测出了但对接人上周刚被优化,剩下一家——就是我们——把问题焊死在日志里,带时间戳、带register dump、带gdb attach截帧,连寄存器位翻转时刻都标出来了。最后方案是什么?把问题模块disable掉,换回旧pipeline。谁赢了?不是代码,是PPT里写“影像算法链路收敛稳定”的那个人。 我不屑。真的。昨天下午三点,测试妹子把一台发热严重的15 Pro塞我手里:“你摸摸这温度,后摄模组比前置高整整八度,拍视频十五分钟机身就报警降频。”我拿红外枪扫过——确实,左边比右边高六点三摄氏度。可厂方回复邮件标题写着:“已同步苹果官方热策略白皮书,建议贵司聚焦于用户感知层优化。”底下附了个PDF链接,点开第一句话是:“Thermal management is integral to iOS design philosophy.” 没有图,没有数据,没有版本号,就这一句。我们写了七年适配,不是为了验证别人的设计哲学,是为了解决他妈的real user drop frame rate。结果人家用一句英文哲学,就把你所有thermal throttling trace日志给消音了。 可后来我想起来,上周五阿哲在群里甩了个logcat片段,是某品牌新机启动相机崩溃的trace。第三行抛异常位置,居然和我们三个月前修过的那个hal_adapter.cpp里的mutex lock顺序完全一样——连函数名都一样,叫camera_device_open_v3_proxy。只是他们改了名字,叫v3plus。我翻了下commit hash,作者ID是同一个邮箱后缀。但没人提这事。大家默认:改名=重写=免责。连bug都没法复用,还谈什么技术沉淀。 算了。我重新插上那台晒到发烫的15 Pro,连adb。准备抓一段surfaceflinger的vsync丢帧日志。楼下关东煮摊子终于收了,铁架子拖地的声音很长,吱呀——吱呀——像某种老旧的DMA中断信号。老张微信又弹出来:“客户说‘双巅峰’这词最好保留,但‘深度体验’太虚,换成‘实测验证’。” 我没回。先把log保存到本地,路径设成/home/me/tmp/ios-peak-2024. 然后顺手删了desktop.ini和那几个自动生成的thumbs.db——它们总在不该出现的时候弹出来。 这事儿没法往下写了。我现在得去调一个vendor overlay配置,让我们的预览窗口别再被系统级的HDR tone mapping pass二次拉伸。具体怎么调?先改device/qcom/sepolicy/private/camera.te,再碰system/lib/hw/camera.qcom.so的符号表偏移——但我不确定这次会不会又触发高通那堆隐藏的trustzone校验锁。我原以为只要patch到libstagefrighthw.so就完了,结果刷进去第一帧预览就黑屏,dumpsys SurfaceFlinger显示“Layer composition rejected due to format mismatch”。我说不准是不是GPU driver bug,还是他们偷偷改了HAL3 vendor tag定义。先试吧。烧一版看看。 (编辑:52刷机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

