RK3566 android11 喇叭音频输出
Android默认音频输出逻辑,不接HDMI默认喇叭音频输出,若检测到HDMI接入后,关闭喇叭输出,开启HDMI音频输出
--- a/frameworks/base/services/core/java/com/android/server/WiredAccessoryManager.java
+++ b/frameworks/base/services/core/java/com/android/server/WiredAccessoryManager.java
@@ -530,7 +530,7 @@ final class WiredAccessoryManager implements WiredAccessoryCallbacks {
// new state will be like STATE=MICROPHONE=1\nHEADPHONE=0
updateBit(maskAndState, BIT_HEADSET_NO_MIC, status, "HEADPHONE") ;
updateBit(maskAndState, BIT_HEADSET, status,"MICROPHONE") ;
- updateBit(maskAndState, BIT_HDMI_AUDIO, status,"HDMI") ;
+// updateBit(maskAndState, BIT_HDMI_AUDIO, status,"HDMI") ;
updateBit(maskAndState, BIT_DP_AUDIO, status,"DP");
updateBit(maskAndState, BIT_LINEOUT, status,"LINE-OUT") ;
if (LOG) Slog.v(TAG, "mask " + maskAndState[0] + " state " + maskAndState[1]);
diff --git a/hardware/rockchip/audio/tinyalsa_hal/audio_hw.c b/hardware/rockchip/audio/tinyalsa_hal/audio_hw.c
index 0033bf378a..88232c0670 100644
--- a/hardware/rockchip/audio/tinyalsa_hal/audio_hw.c
+++ b/hardware/rockchip/audio/tinyalsa_hal/audio_hw.c
@@ -874,13 +873,14 @@ static int start_output_stream(struct stream_out *out)
out->disabled = false;
read_out_sound_card(out);
-#ifdef BOX_HAL
+//#ifdef BOX_HAL
open_sound_card_policy(out);
-#endif
+//#endif
out_dump(out, 0);
- if (out->device & AUDIO_DEVICE_OUT_AUX_DIGITAL) {
+// if (out->device & AUDIO_DEVICE_OUT_AUX_DIGITAL) {
+ if (1) {
audio_devices_t route_device = out->device & AUDIO_DEVICE_OUT_AUX_DIGITAL;
route_pcm_card_open(adev->dev_out[SND_OUT_SOUND_CARD_HDMI].card, getRouteFromDevice(route_device));
@@ -914,10 +915,11 @@ static int start_output_stream(struct stream_out *out)
}
}
- if (out->device & (AUDIO_DEVICE_OUT_SPEAKER |
- AUDIO_DEVICE_OUT_WIRED_HEADSET |
- AUDIO_DEVICE_OUT_WIRED_HEADPHONE |
- AUDIO_DEVICE_OUT_ALL_SCO)) {
+ if (1) {
评论