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

Commit 12340087 authored by Paul McLean's avatar Paul McLean
Browse files

API changes in MicrophoneDirection

Bug: 128523813
Test: Build, Testbed app

Change-Id: I7b5ee8ba4eec1090866d8aef891a98d50cd09cc5
parent 60c73a44
Loading
Loading
Loading
Loading
+6 −6
Original line number Original line Diff line number Diff line
@@ -410,8 +410,8 @@ status_t AudioRecord::start(AudioSystem::sync_event_t event, audio_session_t tri
    }
    }


    // Call these directly because we are already holding the lock.
    // Call these directly because we are already holding the lock.
    mAudioRecord->setMicrophoneDirection(mSelectedMicDirection);
    mAudioRecord->setPreferredMicrophoneDirection(mSelectedMicDirection);
    mAudioRecord->setMicrophoneFieldDimension(mSelectedMicFieldDimension);
    mAudioRecord->setPreferredMicrophoneFieldDimension(mSelectedMicFieldDimension);


    if (status != NO_ERROR) {
    if (status != NO_ERROR) {
        mActive = false;
        mActive = false;
@@ -1381,7 +1381,7 @@ status_t AudioRecord::getActiveMicrophones(std::vector<media::MicrophoneInfo>* a
    return mAudioRecord->getActiveMicrophones(activeMicrophones).transactionError();
    return mAudioRecord->getActiveMicrophones(activeMicrophones).transactionError();
}
}


status_t AudioRecord::setMicrophoneDirection(audio_microphone_direction_t direction)
status_t AudioRecord::setPreferredMicrophoneDirection(audio_microphone_direction_t direction)
{
{
    AutoMutex lock(mLock);
    AutoMutex lock(mLock);
    if (mSelectedMicDirection == direction) {
    if (mSelectedMicDirection == direction) {
@@ -1394,11 +1394,11 @@ status_t AudioRecord::setMicrophoneDirection(audio_microphone_direction_t direct
        // the internal AudioRecord hasn't be created yet, so just stash the attribute.
        // the internal AudioRecord hasn't be created yet, so just stash the attribute.
        return OK;
        return OK;
    } else {
    } else {
        return mAudioRecord->setMicrophoneDirection(direction).transactionError();
        return mAudioRecord->setPreferredMicrophoneDirection(direction).transactionError();
    }
    }
}
}


status_t AudioRecord::setMicrophoneFieldDimension(float zoom) {
status_t AudioRecord::setPreferredMicrophoneFieldDimension(float zoom) {
    AutoMutex lock(mLock);
    AutoMutex lock(mLock);
    if (mSelectedMicFieldDimension == zoom) {
    if (mSelectedMicFieldDimension == zoom) {
        // NOP
        // NOP
@@ -1410,7 +1410,7 @@ status_t AudioRecord::setMicrophoneFieldDimension(float zoom) {
        // the internal AudioRecord hasn't be created yet, so just stash the attribute.
        // the internal AudioRecord hasn't be created yet, so just stash the attribute.
        return OK;
        return OK;
    } else {
    } else {
        return mAudioRecord->setMicrophoneFieldDimension(zoom).transactionError();
        return mAudioRecord->setPreferredMicrophoneFieldDimension(zoom).transactionError();
    }
    }
}
}


+2 −2
Original line number Original line Diff line number Diff line
@@ -39,9 +39,9 @@ interface IAudioRecord {


  /* Set the microphone direction (for processing).
  /* Set the microphone direction (for processing).
   */
   */
  void setMicrophoneDirection(int /*audio_microphone_direction_t*/ direction);
  void setPreferredMicrophoneDirection(int /*audio_microphone_direction_t*/ direction);


  /* Set the microphone zoom (for processing).
  /* Set the microphone zoom (for processing).
   */
   */
  void setMicrophoneFieldDimension(float zoom);
  void setPreferredMicrophoneFieldDimension(float zoom);
}
}
+2 −2
Original line number Original line Diff line number Diff line
@@ -542,11 +542,11 @@ public:


    /* Set the Microphone direction (for processing purposes).
    /* Set the Microphone direction (for processing purposes).
     */
     */
            status_t    setMicrophoneDirection(audio_microphone_direction_t direction);
            status_t    setPreferredMicrophoneDirection(audio_microphone_direction_t direction);


    /* Set the Microphone zoom factor (for processing purposes).
    /* Set the Microphone zoom factor (for processing purposes).
     */
     */
            status_t    setMicrophoneFieldDimension(float zoom);
            status_t    setPreferredMicrophoneFieldDimension(float zoom);


     /* Get the unique port ID assigned to this AudioRecord instance by audio policy manager.
     /* Get the unique port ID assigned to this AudioRecord instance by audio policy manager.
      * The ID is unique across all audioserver clients and can change during the life cycle
      * The ID is unique across all audioserver clients and can change during the life cycle
+8 −7
Original line number Original line Diff line number Diff line
@@ -855,25 +855,26 @@ status_t StreamInHalHidl::updateSinkMetadata(const
#endif
#endif


#if MAJOR_VERSION < 5
#if MAJOR_VERSION < 5
status_t StreamInHalHidl::setMicrophoneDirection(audio_microphone_direction_t direction __unused) {
status_t StreamInHalHidl::setPreferredMicrophoneDirection(
            audio_microphone_direction_t direction __unused) {
    if (mStream == 0) return NO_INIT;
    if (mStream == 0) return NO_INIT;
    return INVALID_OPERATION;
    return INVALID_OPERATION;
}
}


status_t StreamInHalHidl::setMicrophoneFieldDimension(float zoom __unused) {
status_t StreamInHalHidl::setPreferredMicrophoneFieldDimension(float zoom __unused) {
    if (mStream == 0) return NO_INIT;
    if (mStream == 0) return NO_INIT;
    return INVALID_OPERATION;
    return INVALID_OPERATION;
}
}
#else
#else
status_t StreamInHalHidl::setMicrophoneDirection(audio_microphone_direction_t direction) {
status_t StreamInHalHidl::setPreferredMicrophoneDirection(audio_microphone_direction_t direction) {
    if (!mStream) return NO_INIT;
    if (!mStream) return NO_INIT;
    return processReturn("setMicrophoneDirection",
    return processReturn("setPreferredMicrophoneDirection",
        mStream->setMicrophoneDirection(static_cast<MicrophoneDirection>(direction)));
        mStream->setMicrophoneDirection(static_cast<MicrophoneDirection>(direction)));
}
}


status_t StreamInHalHidl::setMicrophoneFieldDimension(float zoom) {
status_t StreamInHalHidl::setPreferredMicrophoneFieldDimension(float zoom) {
    if (!mStream) return NO_INIT;
    if (!mStream) return NO_INIT;
    return processReturn("setMicrophoneFieldDimension",
    return processReturn("setPreferredMicrophoneFieldDimension",
                mStream->setMicrophoneFieldDimension(zoom));
                mStream->setMicrophoneFieldDimension(zoom));
}
}
#endif
#endif
+3 −2
Original line number Original line Diff line number Diff line
@@ -221,10 +221,11 @@ class StreamInHalHidl : public StreamInHalInterface, public StreamHalHidl {
    virtual status_t getActiveMicrophones(std::vector<media::MicrophoneInfo> *microphones);
    virtual status_t getActiveMicrophones(std::vector<media::MicrophoneInfo> *microphones);


    // Set microphone direction (for processing)
    // Set microphone direction (for processing)
    virtual status_t setMicrophoneDirection(audio_microphone_direction_t direction) override;
    virtual status_t setPreferredMicrophoneDirection(
                            audio_microphone_direction_t direction) override;


    // Set microphone zoom (for processing)
    // Set microphone zoom (for processing)
    virtual status_t setMicrophoneFieldDimension(float zoom) override;
    virtual status_t setPreferredMicrophoneFieldDimension(float zoom) override;


    // Called when the metadata of the stream's sink has been changed.
    // Called when the metadata of the stream's sink has been changed.
    status_t updateSinkMetadata(const SinkMetadata& sinkMetadata) override;
    status_t updateSinkMetadata(const SinkMetadata& sinkMetadata) override;
Loading