光学指纹场景使用OLED HBM功能
目前,背光高亮分為局部高亮和全局高亮,其中,全局高亮的亮度高而且穩定,使得指紋識別成功率比局部高亮的識別成功率高。但是,全局高亮也存在一定的問題,具體是,由于開啟全局高亮(HBM)后屏幕亮度達到最大,會很刺眼,所以通常做法是在應用側,即在手指按在指紋區域時候顯示一個半透明的黑色蒙蔽(DIM),同時開啟HBM。但是,由于繪制DIM到達屏幕上顯示需要的時間和開啟HBM在屏幕上顯示需要的時間不同,而且DIM繪制會閃系統卡頓印象,最終導致HBM和DIM在屏幕上很難保證同時生效,此時,在按壓屏下指紋識別的時候容易導致屏幕閃亮或者閃暗,較大概率地給用戶帶來較差的屏下光學指紋使用體驗。(來源:一種屏下指紋顯示優化方法、設備及計算機可讀存儲介質)
(todo:全局高亮比局部高亮的亮度高嗎?前者會更穩定嗎?這個需要確認一下)
HBM是OLED屏幕的一種高亮模式,一般情況下手機亮度最高到500nits,HBM模式亮度能達到800nits,甚至1000nits。在光學指紋識別場景打開HBM可以提高指紋識別成功率。但是亮度過大會讓用戶感到刺眼,所以需要在非指紋區域增加蒙層(純色,利用不同透明度改變畫面亮度),降低畫面亮度。(如果非指紋識別區域是黑色畫面,則無需蒙層)
如果HBM和蒙層不同步,則會出現閃亮或閃暗問題。
難點:
1.蒙層和HBM同步問題
2.蒙層的透明度,透明度不正確會導致打開hbm前后畫面亮度不一致,視覺上有亮度變化
打開hbm的情況
| 閃亮 | hbm生效了,但是沒有顯示蒙層 | 1.hbm實際生效時間(平臺發送寫hbm寄存器到亮度變化)和預期不符,比如軟件上預期隔一幀生效,實際下一幀生效 2.上層沒有繪制蒙層,卻通知驅動打開hbm 3.軟件流程耗時長,將送圖動作延遲了 |
| 閃暗 | 蒙層顯示出來了,hbm沒有打開 | 1.hbm實際生效時間和預期不符,比如軟件上配置下幀生效,實際上隔一幀生效 2.上層傳了蒙層,卻沒有及時通知驅動打開hbm |
| 閃亮或閃暗 | hbm打開和蒙層顯示都符合預期 | 屏幕hbm功能異常,在打開hbm時會出現亮度跳動 |
關閉hbm的情況
| 閃亮 | 蒙層撤走了,但是hbm還沒關 | 1.hbm實際生效時間和預期不符,比如軟件上配置下幀生效,實際上隔一幀生效 2.上層更新了畫面,不再顯示蒙層,卻沒有及時通知驅動關閉hbm |
| 閃暗 | hbm關了,但是蒙層還沒撤走 | 1.hbm實際生效時間和預期不符,比如軟件上預期隔一幀生效,實際下一幀生效 2.上層通知驅動關閉hbm,但是依然顯示蒙層 |
| 閃亮或閃暗 | hbm關閉和蒙層顯示都符合預期 | 1.屏幕hbm功能異常,在關閉hbm時會出現亮度跳動 2.關閉hbm之后,一些顯示效果沒有及時恢復 |
注:有些閃亮閃暗原因和軟件實現方案有關,需要根據代碼實現具體分析。
OLED顯示面板在HBM mode(高亮模式)下的亮度逼近1000nit(尼特),為了高亮達標,Normal mode(正常模式)至HBM mode之間的壓差越來越大,目前通常通過Dynamic ELVSS(electro luminescence source supplyvoltage,發光二極管陰極電壓)功能實現亮度階梯型變化,例如將OLED顯示面板的陰極電壓ELVSS根據不同的DBV區間對應劃分為幾個電壓區間,用戶在切換DBV時,陰極電壓ELVSS對應的以電壓區間為單位進行增加或減少,從而實現亮度階梯型變化。(來源:一種OLED顯示裝置及其亮度驅動方法)
參考資料:
一種屏下指紋顯示優化方法、設備及計算機可讀存儲介質
一種OLED顯示裝置及其亮度驅動方法
總結
以上是生活随笔為你收集整理的光学指纹场景使用OLED HBM功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用 Saleae LLC 监控 781
- 下一篇: python 异步编程:协程与 asyn