精华内容
下载资源
问答
  • 修改最小音量
    千次阅读
    2021-11-05 11:02:01

    1.修改默认亮度
    frameworks\base\packages\SettingsProvider\res\values\default.xml

    <!-- Default screen brightness, from 0 to 255.  102 is 40%. -->
    <integer name="def_screen_brightness">114</integer>
    <bool name<
    更多相关内容
  • android调节系统音量之设置默认音量、最大音量和最小音量 有时候我们想改变系统的默认音量等音量属性,这时可以修改以下对应内容实现: 默认音量 //位置 frameworks/base/media/java/android/media/AudioSystem....

    Android系统拥有多种声音属性,包括有多媒体、通话、通知等声音属性,这些声音属性分别含有自己默认音量、最大音量和最小音量属性。下面我将介绍一下这些声音属性的音量定义和它们的修改方式。

    • 默认音量
      系统声音的默认音量定义在
      frameworks/base/media/java/android/media/AudioSystem.java
      具体如下:
    /** @hide */
        public static int[] DEFAULT_STREAM_VOLUME = new int[] {
            4,  // STREAM_VOICE_CALL
            7,  // STREAM_SYSTEM
            5,  // STREAM_RING
            5, // STREAM_MUSIC
            6,  // STREAM_ALARM
            5,  // STREAM_NOTIFICATION
            7,  // STREAM_BLUETOOTH_SCO
            7,  // STREAM_SYSTEM_ENFORCED
            5, // STREAM_DTMF
            5, // STREAM_TTS
            5, // STREAM_ACCESSIBILITY
            5, // STREAM_ASSISTANT
        };
    
    • 最大音量和最大音量
      系统声音的最大音量和最大音量则定义在
      frameworks/base/services/core/java/com/android/server/audio/AudioService.java
      具体如下:
    
    	/** Maximum volume index values for audio streams */
        protected static int[] MAX_STREAM_VOLUME = new int[] {
            5,  // STREAM_VOICE_CALL
            7,  // STREAM_SYSTEM
            7,  // STREAM_RING
            15, // STREAM_MUSIC
            7,  // STREAM_ALARM
            7,  // STREAM_NOTIFICATION
            15, // STREAM_BLUETOOTH_SCO
            7,  // STREAM_SYSTEM_ENFORCED
            15, // STREAM_DTMF
            15, // STREAM_TTS
            15, // STREAM_ACCESSIBILITY
            15  // STREAM_ASSISTANT
        };
        
    	/** Minimum volume index values for audio streams */
        protected static int[] MIN_STREAM_VOLUME = new int[] {
            1,  // STREAM_VOICE_CALL
            0,  // STREAM_SYSTEM
            0,  // STREAM_RING
            0,  // STREAM_MUSIC
            1,  // STREAM_ALARM
            0,  // STREAM_NOTIFICATION
            0,  // STREAM_BLUETOOTH_SCO
            0,  // STREAM_SYSTEM_ENFORCED
            0,  // STREAM_DTMF
            0,  // STREAM_TTS
            1,  // STREAM_ACCESSIBILITY
            0   // STREAM_ASSISTANT
        };
    
    • 音量值的修改

    通过上面的介绍,虽然我们知道系统声音的三种音量值的定义位置,但是声音属性 默认音量最大音量最好不要在这里进行修改,否则你的修改可能会是无效。为什么?
    因为这两种音量属性被定义之后,还会在 AudioService.java 的构造方法中进行初始化。在此期间,之前定义的音量值可能会被覆盖掉

    
    //frameworks/base/services/core/java/com/android/server/audio/AudioService.java
    public AudioService(Context context) {
    		……
            int maxCallVolume = SystemProperties.getInt("ro.config.vc_call_vol_steps", -1);
            if (maxCallVolume != -1) {
                MAX_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] = maxCallVolume;
            }
    
            int defaultCallVolume = SystemProperties.getInt("ro.config.vc_call_vol_default", -1);
            if (defaultCallVolume != -1 &&
                    defaultCallVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] &&
                    defaultCallVolume >= MIN_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL]) {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] = defaultCallVolume;
            } else {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] =
                        (maxCallVolume * 3) / 4;
            }
    
            int maxMusicVolume = SystemProperties.getInt("ro.config.media_vol_steps", -1);
            if (maxMusicVolume != -1) {
                MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = maxMusicVolume;
            }
            if(isBox() ||isTablet()){
                mFixedVolumeDevices = 0;
            }
            int defaultMusicVolume = SystemProperties.getInt("ro.config.media_vol_default", -1);
            if (defaultMusicVolume != -1 &&
                    defaultMusicVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] &&
                    defaultMusicVolume >= MIN_STREAM_VOLUME[AudioSystem.STREAM_MUSIC]) {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = defaultMusicVolume;
            } else {
                if (isPlatformTelevision()) {
                    AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                            MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 4;
                } else {
                    AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                            MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 3;
                }
            }
    
            int maxAlarmVolume = SystemProperties.getInt("ro.config.alarm_vol_steps", -1);
            if (maxAlarmVolume != -1) {
                MAX_STREAM_VOLUME[AudioSystem.STREAM_ALARM] = maxAlarmVolume;
            }
    
            int defaultAlarmVolume = SystemProperties.getInt("ro.config.alarm_vol_default", -1);
            if (defaultAlarmVolume != -1 &&
                    defaultAlarmVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_ALARM]) {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_ALARM] = defaultAlarmVolume;
            } else {
                // Default is 6 out of 7 (default maximum), so scale accordingly.
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_ALARM] =
                            6 * MAX_STREAM_VOLUME[AudioSystem.STREAM_ALARM] / 7;
            }
    
            int maxSystemVolume = SystemProperties.getInt("ro.config.system_vol_steps", -1);
            if (maxSystemVolume != -1) {
                MAX_STREAM_VOLUME[AudioSystem.STREAM_SYSTEM] = maxSystemVolume;
            }
    
            int defaultSystemVolume = SystemProperties.getInt("ro.config.system_vol_default", -1);
            if (defaultSystemVolume != -1 &&
                    defaultSystemVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_SYSTEM]) {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_SYSTEM] = defaultSystemVolume;
            } else {
                // Default is to use maximum.
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_SYSTEM] =
                            MAX_STREAM_VOLUME[AudioSystem.STREAM_SYSTEM];
            }
            ……
            
    

    多媒体默认音量为例,我们可以看到,它最终的设置结果是最大音量的三分之一,即15/3=5格音量。

    
    int defaultMusicVolume = SystemProperties.getInt("ro.config.media_vol_default", -1);
            if (defaultMusicVolume != -1 &&
                    defaultMusicVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] &&
                    defaultMusicVolume >= MIN_STREAM_VOLUME[AudioSystem.STREAM_MUSIC]) {
                AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = defaultMusicVolume;
            } else {
                if (isPlatformTelevision()) {
                    AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                            MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 4;
                } else {
                    AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                            MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 3;
                }
            }
            
    

    所以,它的修改方式应该是这样的:

    
    //多媒体默认音量修改为10格
    int defaultMusicVolume = SystemProperties.getInt("ro.config.media_vol_default", 10);
    
    
    展开全文
  • 11.0修改系统默认值 1.修改默认亮度 frameworks\base\packages\SettingsProvider\res\values\default.xml <!-- Default screen brightness, from 0 to 255. 102 is 40%. --> <integer name="def_screen_...

    11.0修改系统默认值
    1.修改默认亮度

    frameworks\base\packages\SettingsProvider\res\values\default.xml
    <!-- Default screen brightness, from 0 to 255.  102 is 40%. -->
    <integer name="def_screen_brightness">11</
    展开全文
  • 做了6个按钮,分别可控制系统音量,1.加音量,2.减音量,3.静音,直接设置系统4.最大音量,5.中等音量,6.最小音量,可自己设置音量大小
  • Android 9.0修改默认音量 (转载)最近遇到一个要修改默认音量的问题,默认的开机音量是25,需要修改成30。 安卓默认的音量在下面的 DEFAULT_STREAM_VOLUME 数组里面有定义。 frameworks/base/media/java/android/...

    Android 9.0修改默认音量


    (转载)最近遇到一个要修改默认音量的问题,默认的开机音量是25,需要修改成30。
    安卓默认的音量在下面的 DEFAULT_STREAM_VOLUME 数组里面有定义。

     frameworks/base/media/java/android/media/AudioSystem.java
    
        public static int[] DEFAULT_STREAM_VOLUME = new int[] {
            4,  // STREAM_VOICE_CALL
            7,  // STREAM_SYSTEM
            5,  // STREAM_RING
            5, // STREAM_MUSIC
            6,  // STREAM_ALARM
            5,  // STREAM_NOTIFICATION
            7,  // STREAM_BLUETOOTH_SCO
            7,  // STREAM_SYSTEM_ENFORCED
            5, // STREAM_DTMF
            5, // STREAM_TTS
            5, // STREAM_ACCESSIBILITY
        };
    

    但是你会发现修改之后没有效果,因为在 里面有对这个数组进行另外判断赋值。

    frameworks/base/services/core/java/com/android/server/audio/AudioService.java
    
     // Initialize volume
     int maxCallVolume = SystemProperties.getInt("ro.config.vc_call_vol_steps", -1);
     if (maxCallVolume != -1) {
         MAX_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] = maxCallVolume;
         AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_VOICE_CALL] =
                 (maxCallVolume * 3) / 4;
     }
    
     int maxMusicVolume = SystemProperties.getInt("ro.config.media_vol_steps", -1);
     if (maxMusicVolume != -1) {
         MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = maxMusicVolume;
     }
    
     int defaultMusicVolume = SystemProperties.getInt("ro.config.media_vol_default", -1);
     if (defaultMusicVolume != -1 &&
             defaultMusicVolume <= MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC]) {
         AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] = defaultMusicVolume;
     } else {
         if (isPlatformTelevision()) {
             AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                     MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 4;
         } else {
             AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] =
                     MAX_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] / 3;
         }
     }
    

    我要修改是的 STREAM_MUSIC 的默认音量值,从代码我们可以分析出,修改 STREAM_MUSIC 的默认音量值的方法有两种:第一种就是直接修改代码,赋值给 AudioSystem.DEFAULT_STREAM_VOLUME[AudioSystem.STREAM_MUSIC] 。第二种方式就是定义一个属性 ro.config.media_vol_default 来指定 STREAM_MUSIC 的默认音量值。

    为了方便后期的维护,我这里采用了第二种方式来修改默认音量值。让ro.config.media_vol_default=30。但是发现通过 getprop 来读这个属性却一直是空的,证明并没有把这个属性写进去。原本定义有 ro.config.media_vol_steps 这个属性,于是我顺藤摸瓜,依葫芦画瓢,找到了解决的方法。

    --- a/system/sepolicy/public/property_contexts
    +++ b/system/sepolicy/public/property_contexts
    @@ -92,6 +92,7 @@ ro.com.android.prov_mobiledata u:object_r:exported3_default_prop:s0 exact bool
     ro.com.google.clientidbase u:object_r:exported3_default_prop:s0 exact string
     ro.config.alarm_alert u:object_r:exported2_config_prop:s0 exact string
     ro.config.media_vol_steps u:object_r:exported2_config_prop:s0 exact int
    +ro.config.media_vol_default u:object_r:exported2_config_prop:s0 exact int
     ro.config.notification_sound u:object_r:exported2_config_prop:s0 exact string
     ro.config.ringtone u:object_r:exported2_config_prop:s0 exact string
     ro.control_privapp_permissions u:object_r:exported3_default_prop:s0 exact string
    

    就是在 system/sepolicy/public/property_contexts 里面添加 ro.config.media_vol_default 的权限上下文。

    展开全文
  • 目前网上有一些关于修改系统默认音量大小的方法,比如修改AudioSystem.java的DEFAULT_STREAM_VOLUME:public static int[] DEFAULT_STREAM_VOLUME = new int[] {4, // STREAM_VOICE_CALL7, // STREAM_SYSTEM5, // ...
  • 声音管理系统用来实现声音的输入和输出、声音的控制和路由等功能,包括主和各种音源的音量调节、声音焦点控制,声音外设的检测和状态管理,声音源输入和输出的策略管理、音效的播放、音轨设置和播放、录音设置和启动...
  • 打电话的时候每次默认最大音量,且通话时最小音量为1,不能无声;具体修改如下: 在配置工具中将系统32级音量关掉,系统音量就变成16级,可以使得在苹果手机上面音量加减步进为一格: 再就是记录系统音量的变量: ...
  • 上电默认音量修改 文件路径:/frameworks/base/media/java/android/media/AudioSystem.java 找到DEFAULT_STREAM_VOLUME 数组,其中定义的就是各种音频流默认音量大小,比如语音呼叫、系统音量、打电话、播放音乐、...
  • 一、标准Android系统(基于Android M,其他基本也是这样)音量调节基本流程: 见大神三部曲 1、[RK3288][Android6.0] Audio的音量设置流程小结 :http://blog.csdn.net/kris_fei/article/details/72929999 简明...
  • Android平台音量调节本文基于Android 8.0讲述Android平台原生音量控制...对每种流类型都定义了最大音量(MAX_STREAM_VOLUME),默认音量(DEFAULT_STREAM_VOLUME)和最小音量(MIN_STREAM_VOLUME)。一个流也可以用另外...
  • USB技术在现代电子系统中应用得越来越广泛。很多计算机上甚至去掉了传统的串口,全部改用USB口的鼠标、键盘,甚至风扇。随着电子技术的高速发展,USB控制器向小体积、低功耗的方向发展。本文介绍如何使用MAX3420进行...
  • 修改音量最大值和默认音量 拦截音量键分发 在其他应用中添加广播接收者处理音量加减广播 打开主音量调节功能设置音量加减步长 测试源码为MTK的MT8735平台源码,
  • frameworks/base/services/core/java/com/android/server/audio/AudioService.java /** Maximum volume index values for audio streams */ ... MAX_STREAM_VOLUME : 默认最大音量 MIN_STREAM_VOLUME : 默认最小音量
  • Android7.1修改系统默认多媒体音量大小始修改\frameworks\base\packages\SettingsProvider\res\values\defaults.xmldef_music_volumedef_music_speaker_volume这两项后面的11改为15(最大值),makesystemimage -j4,...
  •  7、举例:比如说我们想把F9,F10键修改成为音量调整键,通过查表,可以得知:F9、F10扫描码分别为(00,43)、(00,44),Volume Up、Volume Down的扫描码分别为(E0,30)、(E0,2E),这样只要将Scancode设置为如下就可以...
  • 最大可到100,最小是0 ▪ 方法二,在代码中AudioMTKPolicyManager.cpp –Alps/mediatek/platform/common/hardware/audio –Static unsigned char audiovolume_dtmf[][]  详细文件参考   ...
  • 通过 adb 设置音量

    千次阅读 2022-02-08 15:27:38
    通过 ADB 工具调用系统服务,设置设备用量。 adb shell service call audio 9 i32 <编号> i32 <类型> i32 1 # 调整音量 adb shell service call audio 10 i32 <编号> i32 <音量> i32 1 # 设置音量
  • 当输入LED流过最小10mA电流时光电驱动电路就会打开。只需要0.8V或是更低的输入电压就能关断光电驱动。 本文介绍的是基于TI的3个TLC5940(16路LED驱动芯片),5V开关电源,一个PIC单片机(带USB通信功能),16个高...
  • 1 RK平台上一般硬件音量最大与最小已设为最大增益与静音 2 音量调节具体函数: /hardwore/rockchip/audio/legacy_hal/AudioPolicyManagerBase.java的computeVolume函数,一般不做改动 float AudioPolicyManagerBase:...
  • mp3gain 批量修改音量

    千次阅读 2014-01-16 11:14:18
    (2013-11-11 15:55:17) 转载▼ ...首先点击主界面上的“添加文件”按钮,在弹出的对话框中选择所要改变音量的 MP3 文件...如想改变一个文件夹中所有 MP3 歌曲的音量,那么你可以选择“添加文件夹”。然后单击“音
  • 1.Android音量键调节音量流程 ...在Android 8.0里面,一共定义了11种流的类型,每种流类型都定义了最大音量(MAX_STREAM_VOLUME),最小音量(MIN_STREAM_VOLUME),以及默认音量(DEFAULT_STREAM_VOLUME),细
  • 声音的振幅就是音量,频率的高低就是指音调,频率用赫兹(Hz)作单位。人耳只能听到20Hz到20khz范围的声音。 模拟音频(Analogous Audio),用连续的电流或电压表示的音频信号,在时间和振幅上是连续。在过去记录...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,074
精华内容 2,429
关键字:

修改最小音量