OPPO Reno15:影像跃升,性能突破,时尚科技新标杆
|
我原以为 Reno15 这波影像优化是靠 ISP 固件硬怼,结果昨天凌晨三点拆包到 camera HAL 层,发现他们把 vendor.qti.camera.postproc@1.0.so 里一段 memcpy 给注释掉了——就两行,// if (mode == MODE_BOKEH) { … }。我手抖点了回车确认删除,编译镜像前顺手扫了眼 logcat,满屏 flash_ctrl: sensor_mode 32 -> 33 invalid,三百七十二次。这个我敢打包票,不是 trace 误读,是真崩在模式切换那步。 窗外洒水车又来了,今天第七趟,水柱打在对面楼玻璃幕墙上溅得跟爆米花似的,滋啦滋啦声压过空调外机。我盯住 build output 窗口里那个卡在 dex2oat 的百分比,停在 98.7% 已经十八秒。桌上的机械键盘青轴声还在响,隔壁工位老张噼里啪啦敲着 adb shell input keyevent 26——他刚测完 OPPO 那版系统里锁屏快捷键的响应延迟,说“亮屏快但解锁慢半拍”,我头都没抬,只嗯了一声。 测试机堆在窗台,四台 Reno15 全晒得发烫,背面贴膜都卷边了。最左边那台刚跑完 DUT:摄像头冷启动超时,log 里只有一行 TAG=CameraProvider@2.4-impl: openSession: no valid session config,底下再没别的了。我翻回去看厂商给的集成指南 PDF 第三页脚注,写着“此异常可忽略”,字是加粗的。我信了,结果今天上午十点 QA 妹子拎着烧录失败的板子冲进会议室:“你们是不是动了 VNDK?”她手指甲油是薄荷绿的,蹭在平板边缘留下一道印。 楼下便利店关东煮蒸气糊了整块玻璃,老板娘举着竹签喊“萝卜卖完了”,声音隔着三层楼还能听清。我切回终端 grep vendor.camera, 结果发现他们把 vendor.camera.device@1.0.so 的 getStreamConfig 方法重写了,但 return 的 configList 里少填了两组 resolution —— 不是全删,是漏掉 4000x3000 和 1280x720。我当场在 git blame 里找到提交人:厂商对接人陈工,ID 是 chenwei_oppo,时间戳是上上周五下午四点零七分。他说“这个分辨率日常不用”,我说“扫码二维码用 1280x720 跳得比鬼还快”,他回了个笑哭表情包,没接话。 性能突破?呵。我让测试妹子拿 Reno15 跑 GFXBench Aztec 室内离屏,同一台设备,三次跑分,分别是 31.2、28.7、32.4。她皱着眉念数字的时候,我正用 adb shell dumpsys SurfaceFlinger | grep -A5 -B5 “mClientComposition”,发现 mSurfaceFlinger 中的 mClientCompositionLock 死锁概率在后台应用超过七个时会陡升。但没人管这个,因为 OEM 的功耗白皮书里写的是“主流场景帧率稳定性≥99.3%”。我查了下,这个数字是从一个跑分脚本里硬截的,脚本里故意 skip 了所有带 MediaPlayer 的 case。 时尚科技新标杆?对,UI 皮肤改了六十七次图标阴影角度,动画过渡加了 0.15 秒缓动,连长按桌面空白处弹出的气泡菜单都重新做了光栅化模糊。但你猜怎么着——我们外包同事阿杰,就是总穿灰卫衣那个,在刷入 OTA 后第 113 分钟,手机突然不识别指纹模组,logcat 里就一句 kernel: [ 231.824799] qcom_scm_call: call failed: 0x42400030。他截图发群里,配文:“我指纹还在,但系统说它不在。” 我回:“reboot -p 再开机试试。” 他回:“试了,现在相册点开直接黑屏。” 我没回。这个我说不准,可能是 fusefs mount 没等完,也可能是 SELinux 策略里某条 rule 权限写反了,但反正不是我们改的。 优胜劣汰——这词不是夸,是实话。他们把旧机型能用的代码全干掉了,一行不留。Reno13 那套 camera metadata 注入逻辑,Reno14 改成了 IPC 通道,Reno15 直接砍成 HAL service model,不走 HIDL 了。我昨天在 vendor 目录下搜 “hidl_interface”,grep 出来 238 个匹配项,全是被 / DEPRECATED / 包裹的。其中一百零四行,是同一个接口,改了名字、参数类型、返回值,但函数体里只剩一个 return STATUS_OK;剩下那些,干脆连声明都删了。我们得重写整个 metadata 流水线,因为人家连 struct CameraMetadata 的字段偏移都不跟你说一声就调整了。 阿杰刚才来问我要不要顺手把通知栏下拉时的毛玻璃 blur 效果再调深一点,“陈工说客户想再‘呼吸感’一点”。我没吭声。手边那台 Reno15 侧卧着,屏幕自动熄灭了,但摄像头灯还微弱地亮着,绿得瘆人——不是常亮,是每隔七秒闪一下,像在等什么没收到的指令。我点了根烟,烟灰掉在键盘 F7 键上,没弹。
产品概念图,仅供参考 算了,先编完 vendor.img。待会儿烧进第五台机子,要是还报 surface creation fail,我就去楼下买盒关东煮,顺便看看老板娘新贴的“萝卜补货中”便签纸撕没撕干净。 (编辑:52刷机网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

