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

Commit fc28648f authored by Oscar Azucena's avatar Oscar Azucena
Browse files

Added update device info playback configuration

Added method to update audio device id information from native layer.

Bug: 156790437
Test: play audio see audio configuration changes
Change-Id: I365bafc95eba14478e15769c2a3873eab57a4a36
parent adfede47
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ typedef enum {
    PLAYER_STATE_STARTED  = 2,
    PLAYER_STATE_PAUSED   = 3,
    PLAYER_STATE_STOPPED  = 4,
    PLAYER_UPDATE_DEVICE_ID = 5,
} player_state_t;

// must be kept in sync with definitions in AudioManager.java
+2 −1
Original line number Diff line number Diff line
@@ -49,7 +49,8 @@ public:
                audio_content_type_t content, const sp<IBinder>& player) = 0;
    /*oneway*/ virtual status_t playerAttributes(audio_unique_id_t piid, audio_usage_t usage,
                audio_content_type_t content)= 0;
    /*oneway*/ virtual status_t playerEvent(audio_unique_id_t piid, player_state_t event) = 0;
    /*oneway*/ virtual status_t playerEvent(audio_unique_id_t piid, player_state_t event,
                audio_port_handle_t deviceId) = 0;
    /*oneway*/ virtual status_t releasePlayer(audio_unique_id_t piid) = 0;
    virtual audio_unique_id_t trackRecorder(const sp<IBinder>& recorder) = 0;
    /*oneway*/ virtual status_t recorderEvent(audio_unique_id_t riid, recorder_state_t event) = 0;
+3 −1
Original line number Diff line number Diff line
@@ -84,11 +84,13 @@ public:
        return remote()->transact(PLAYER_ATTRIBUTES, data, &reply, IBinder::FLAG_ONEWAY);
    }

    virtual status_t playerEvent(audio_unique_id_t piid, player_state_t event) {
    virtual status_t playerEvent(audio_unique_id_t piid, player_state_t event,
            audio_port_handle_t deviceId) {
        Parcel data, reply;
        data.writeInterfaceToken(IAudioManager::getInterfaceDescriptor());
        data.writeInt32((int32_t) piid);
        data.writeInt32((int32_t) event);
        data.writeInt32((int32_t) deviceId);
        return remote()->transact(PLAYER_EVENT, data, &reply, IBinder::FLAG_ONEWAY);
    }