Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc1ce4d2 authored by Vlad Popa's avatar Vlad Popa
Browse files

Add new mute state for port volume mute

With the new AudioFlinger port volume APIs introduce the new mute state
when a track is muted from port volume

Flag: com.android.media.audio.ring_my_car
Test: dumpsys + logs
Bug: 319515324
Change-Id: Ib33e80a7bccf038d6d8dc9c9d2c3a1521ad882a3
parent 634adaca
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -59,6 +59,7 @@ enum {
    PLAYER_MUTE_PLAYBACK_RESTRICTED = (1 << 3),
    PLAYER_MUTE_CLIENT_VOLUME = (1 << 4),
    PLAYER_MUTE_VOLUME_SHAPER = (1 << 5),
    PLAYER_MUTE_PORT_VOLUME = (1 << 6),
};

struct mute_state_t {
@@ -74,6 +75,8 @@ struct mute_state_t {
    bool muteFromClientVolume = false;
    /** Flag used when volume is muted by volume shaper. */
    bool muteFromVolumeShaper = false;
    /** Flag used when volume is muted by port volume. */
    bool muteFromPortVolume = false;

    explicit operator int() const
    {
@@ -83,6 +86,7 @@ struct mute_state_t {
        result |= muteFromPlaybackRestricted * PLAYER_MUTE_PLAYBACK_RESTRICTED;
        result |= muteFromClientVolume * PLAYER_MUTE_CLIENT_VOLUME;
        result |= muteFromVolumeShaper * PLAYER_MUTE_VOLUME_SHAPER;
        result |= muteFromPortVolume * PLAYER_MUTE_PORT_VOLUME;
        return result;
    }