当前位置: 首页 > news >正文

Android 添加线性亮度,替换原来的不平滑亮度曲线

文章描述了AndroidSettingsLib框架中BrightnessUtils类的更新,主要涉及Gamma空间和线性空间之间的亮度值转换函数。新增了一个名为ENABLE_GAMMA的常量,用于控制是否启用Gamma转换。同时,修改了convertGammaToLinear和convertLinearToGammaFloat方法,当不启用Gamma时,提供了直接的线性转换逻辑。

第一种分别修改:

 /frameworks/base/packages/SettingsLib/src/com/android/settingslib/display/BrightnessUtils.java

 新增两个转换方法:

//*/ .adjust as linear brightness solve hop change
    public static final float convertGammaToLinearFloatExt(int val, float min, float max) {
        final float normalizedVal = MathUtils.norm(0, GAMMA_SPACE_MAX, val);
        float value = MathUtils.lerp(min, max, normalizedVal);
        return value<0f? 1f:value;
    }
    public static final int convertLinearToGammaFloatExt(float val, float min, float max) {
        // For some reason, HLG normalizes to the range [0, 12] rather than [0, 1]
        final float normalizedVal = MathUtils.norm(min, max, val);
        return Math.round(normalizedVal*GAMMA_SPACE_MAX);

    }
    //*/

 /vendor/mediatek/proprietary/packages/apps/MtkSettings/src/com/android/settings/display/BrightnessLevelPreferenceController.java

import static c


http://www.mrgr.cn/news/56130.html

相关文章:

  • 特种设备作业电梯维修作业
  • LLM 量化新篇章:FlatQuant 的平坦之道
  • 简单了解一下CPU的组成和运行原理
  • 猎板PCB的金属基板知识你都知道吗?
  • OpenR框架深度解读 - OpenAI启发的首个开源项目提升大型语言模型推理能力
  • Golang 并发编程:通道(Channel)的详细用法
  • 小巧设计,强大功能:探索SoC模块的多样化功能
  • 【视频生成大模型】 视频生成大模型 THUDM/CogVideoX-2b
  • Xcode真机运行正常,打包报错
  • 32匿名函数
  • uni-app组件使用(uv-ui)
  • 无线电测向运动80m(3.5-3.6MHz)信号源制作
  • c++ libtorch tensor 矩阵分块
  • 壹肆柒·2025郑州台球展会,3月12-14日盛大举办
  • Flink PostgreSQL CDC源码解读:深入理解数据流同步
  • 跨站调用(CORS)一例
  • 基础数据结构——队列(链表实现,数组实现)
  • 期权懂|看涨期权合约的买方具有什么义务?
  • L0G1000 Linux 基础知识
  • 【计网】理解TCP全连接队列与tcpdump抓包
  • 免费赠书啦,免费赠送多本《数据资产管理核心技术与应用》一书
  • webAPI中的offset、client、scroll
  • 【vue之道】
  • python中如何获取对象信息
  • 详解Java之Spring MVC篇一
  • SSM网上书店管理系统—计算机毕业设计源码41539