Trang này mô tả các yêu cầu, cấu hình và quy trình xác thực tính năng làm mờ nội dung SDR cho thành phần kết hợp SDR và HDR.
Android 13 cải thiện khả năng hỗ trợ để đồng thời trình bày thành phần SDR và HDR trên màn hình bằng cách giới thiệu các tính năng sau:
Ánh sáng HDR ánh xạ tông màu thành một dải tương thích với SDR.
Khi sử dụng
libtonemap
, bạn có thể tạo bản đồ tông màu nhất quán giữa Trình kết hợp phần cứng (HWC), SurfaceFlinger và các ứng dụng. OEM có thể triển khai các đường cong ánh xạ tông màu riêng để chia sẻ giữa các thành phần của nhà cung cấp và khung.Làm mờ nội dung SDR trên màn hình khi nội dung HDR được trình bày đồng thời.
Khi nội dung HDR xuất hiện trên màn hình, độ sáng màn hình sẽ tăng lên để phù hợp với dải độ sáng tăng lên của nội dung HDR. Mọi nội dung SDR cũng xuất hiện trên màn hình sẽ được làm mờ liền mạch khi độ sáng màn hình tăng lên để độ sáng cảm nhận của nội dung SDR không thay đổi. Nhà sản xuất thiết bị gốc (OEM) có thể định cấu hình màn hình tích hợp để làm mờ nội dung SDR trên màn hình khi nội dung đó xuất hiện cùng với nội dung HDR.
Yêu cầu đối với nhà sản xuất thiết bị gốc (OEM)
Để sử dụng thành phần cải tiến cho nội dung HDR và SDR thông qua tính năng làm mờ nội dung SDR, hãy làm theo các yêu cầu sau:
Triển khai phiên bản AIDL của HWC, bao gồm cả tính năng hỗ trợ làm mờ tăng tốc phần cứng trong quy trình màu của thiết bị. Hãy tham khảo AIDL cho HWC để triển khai các chức năng bắt buộc.
Để làm mờ chính xác lớp phủ phần cứng trong HWC, bạn cần có phần cứng cụ thể để điều chỉnh ánh sáng tuyến tính của lớp phủ. Các phương thức triển khai không có đủ phần cứng cần phải trì hoãn việc kết hợp với GPU bằng SurfaceFlinger, gây ra tình trạng hao pin và có thể làm giảm chất lượng ánh sáng.
Thiết bị phải hỗ trợ ít nhất một công nghệ HDR do
Display.getHdrCapabilities
báo cáo.
Cấu hình
Bạn có thể định cấu hình tính năng kết hợp nội dung SDR và HDR theo các đặc điểm của thiết bị hiển thị tích hợp để thiết lập sự đánh đổi giữa thời lượng pin, hiện tượng lưu ảnh và độ trung thực của nội dung.
Bạn có thể bật và điều chỉnh thành phần được cải thiện thông qua cấu hình màn hình có giản đồ nằm trong display-device-config.xsd
.
Các phần tử chính mới sau đây rất quan trọng trong việc thiết lập cấu hình màn hình:
Phần tử
sdrHdrRatioMap
cho phép làm mờ SDR và xác định bảng tra cứu (LUT) để liên kết độ sáng màn hình cho HDR hiển thị với điểm trắng SDR khi có nội dung HDR trên màn hình.Nếu
sdrHdrRatioMap
được xác định, thì trong quá trình kiểm soát độ sáng màn hình,DisplayManagerService
sẽ thông báo điểm trắng SDR mong muốn đến SurfaceFlinger để SurfaceFlinger có thể gửi tỷ lệ làm mờ thích hợp cho mỗi lớp đến HWC.Nếu không xác định
sdrHdrRatioMap
, tính năng làm mờ SDR sẽ không được bật, ngay cả khi việc triển khai HWC hỗ trợ tính năng làm mờ SDR.Phần tử
minimumHdrPercentOfScreen
, với giá trị từ 0 đến 100, kiểm soát thời điểm cho phép bật chế độ độ sáng cao của bảng điều khiển. Với Android 13, bạn có thể điều chỉnh ngưỡng này để bật chế độ độ sáng cao trong nhiều trường hợp hơn, chẳng hạn như các trường hợp hình trong hình. Các phiên bản AOSP trước đó đã cố định giá trị này thành 50%.
Hãy xem khối mã sau đây để biết các phần tử chính của cấu hình hiển thị:
<displayConfiguration>
...
<highBrightnessMode>
...
<!--Percentage of the screen that must be covered by HDR layers until high brightness mode is enabled.
<minimumHdrPercentOfScreen>...</minimumHdrPercentOfScreen>
<!--sdrHdrRatioMap, backed by spline, must have at least two entries -->
<sdrHdrRatioMap>
<point>
<sdrNits>...</sdrNits>
<hdrRatio>...</hdrRatio>
</point>
<point>
<sdrNits>...</sdrNits>
<hdrRatio>...</hdrRatio>
</point>
<!--More interpolation points may be added –->
...
</sdrHdrRatioMap>
...
</highBrightnessMode>
...
</displayConfiguration>
Chú ý
Việc bật tính năng ánh xạ tông màu và làm mờ nội dung SDR có thể dẫn đến các tình huống sau:
Độ trung thực của nội dung HDR phát trên thiết bị có thể tăng lên, vì các phần tử nội dung SDR bị làm mờ.
Thời lượng pin có thể giảm trong các trường hợp sau:
Việc triển khai HWC trì hoãn các thao tác làm mờ cho GPU có thể làm tăng mức sử dụng GPU.
Cấu hình màn hình cho phép ngưỡng thấp hơn để bật chế độ độ sáng cao có thể làm tăng mức tiêu thụ điện năng để chạy màn hình ở độ sáng cao hơn.
Tình trạng màn hình có thể bị ảnh hưởng do thời gian sử dụng chế độ độ sáng cao tăng lên, điều này có thể gây ra các vấn đề lâu dài như hiện tượng lưu ảnh trên màn hình.
Xác nhận kết quả
Nhà sản xuất thiết bị gốc (OEM) có thể sử dụng các bài kiểm thử VTS (có trong bộ kiểm thử của HWC) để kiểm tra độ chính xác của độ sáng và xác thực tỷ lệ độ sáng đầu vào.
Việc xác thực tính năng này phụ thuộc vào thiết bị, vì vậy, không có quy trình kiểm thử CTS hoặc GTS nào hỗ trợ tính năng này.
OEM phải chạy các thử nghiệm thủ công để xác thực rằng chất lượng hình ảnh của các phần tử SDR bị mờ là chấp nhận được. Nhà sản xuất thiết bị gốc (OEM) có thể phát nội dung theo các tiêu chuẩn HDR mà thiết bị hỗ trợ qua SurfaceView
để xác thực rằng mọi thành phần SDR phát cùng với nội dung HDR đều không bị quá sáng.
Vấn đề
Việc làm mờ hình ảnh SDR có thể dẫn đến hiện tượng đen hoặc mất thông tin ở các vùng tối hơn của hình ảnh gốc. Điều này là do các giá trị màu tối hơn sẽ thu gọn thành một nhóm mã tối nhỏ hơn.
Việc triển khai tính năng giảm độ sáng gây ra hiện tượng đen bị vỡ không thể chấp nhận được phải triển khai các thuật toán làm mờ, giúp chèn nhiễu vào hình ảnh cuối cùng để giảm hiệu ứng dải.
Các phương thức triển khai HWC không thể làm mờ hình ảnh ở vị trí thích hợp trong quy trình xử lý màu phải yêu cầu SurfaceFlinger áp dụng tính năng làm mờ và làm mờ trên GPU.
Các phương thức triển khai cũng có thể điều chỉnh giá trị của sdrHdrRatioMap
để giới hạn mức độ làm mờ cho các phần tử SDR. Việc giảm độ sáng xuống mức rất thấp yêu cầu sử dụng GPU, giúp cải thiện chất lượng hình ảnh nhưng có thể làm giảm thời lượng pin.