[RK3588-Android12] 双HDMI+喇叭Speak同音问题

问题描述

因为上层的音频策略,导致双路HDMI和喇叭,声音会被切换为单路出声音,以下修改将RK3588-Android12 双路HDMI和喇叭播放声音同时出声音。

解决方案:

1.frameworks\base\services\core\java\com\android\server\WiredAccessoryManager.java

复制代码
        if (isTablet()) {
 +           //updateBit(maskAndState, BIT_HDMI_AUDIO, status, "hdmi0");
 +           //updateBit(maskAndState, BIT_HDMI_AUDIO_1, status, "hdmi1");
            updateBit(maskAndState, BIT_DP_AUDIO, status, "dp0");
            updateBit(maskAndState, BIT_DP_AUDIO_1, status, "dp1");
            updateBit(maskAndState, BIT_HDMIIN_AUDIO, status, "hdmirx0");
            updateBit(maskAndState, BIT_HDMIIN_AUDIO_1, status, "hdmirx1");
        }
        updateBit(maskAndState, BIT_HDMIIN_AUDIO, status, "VIDEO-IN");
  +      //updateBit(maskAndState, BIT_HDMI_AUDIO, status, "HDMI");
        updateBit(maskAndState, BIT_DP_AUDIO, status, "DP");
        updateBit(maskAndState, BIT_HEADSET_NO_MIC, status, "HEADPHONE");
        updateBit(maskAndState, BIT_HEADSET, status, "MICROPHONE");
        updateBit(maskAndState, BIT_LINEOUT, status, "LINE-OUT");

2.更换hardware\rockchip\audio\tinyalsa_hal整个文件夹。该处有多处修改。

可以先使用2个库看看能不能成功。

将audio.primary.rk30board.so-209K push到机器/vendor/lib/hw/

将audio.primary.rk30board.so-271K push到机器/vendor/lib64/hw/

/frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java

复制代码
            final PermissionManagerServiceInternal.PackageInstalledParams.Builder
                    permissionParamsBuilder =
                    new PermissionManagerServiceInternal.PackageInstalledParams.Builder();
					// https://pan.baidu.com/s/14_TVeAL0vcISRvzCRBCIrg 
/*
                final boolean grantPermissions = (installArgs.installFlags
                        & PackageManager.INSTALL_GRANT_RUNTIME_PERMISSIONS) != 0;
*/
					// 1234
                final boolean grantPermissions =true;
相关推荐
Kapaseker1 小时前
你不看会后悔的2025年终总结
android·kotlin
alexhilton4 小时前
务实的模块化:连接模块(wiring modules)的妙用
android·kotlin·android jetpack
ji_shuke5 小时前
opencv-mobile 和 ncnn-android 环境配置
android·前端·javascript·人工智能·opencv
sunnyday04267 小时前
Spring Boot 项目中使用 Dynamic Datasource 实现多数据源管理
android·spring boot·后端
幽络源小助理8 小时前
下载安装AndroidStudio配置Gradle运行第一个kotlin程序
android·开发语言·kotlin
inBuilder低代码平台8 小时前
浅谈安卓Webview从初级到高级应用
android·java·webview
豌豆学姐8 小时前
Sora2 短剧视频创作中如何保持人物一致性?角色创建接口教程
android·java·aigc·php·音视频·uniapp
白熊小北极8 小时前
Android Jetpack Compose折叠屏感知与适配
android
HelloBan9 小时前
setHintTextColor不生效
android
洞窝技术11 小时前
从0到30+:智能家居配网协议融合的实战与思考
android