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

Commit 71f1206c authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 7642774 from 9dade0ac to sc-v2-release

Change-Id: Ia368059295f822d26ca11dfa8c7cc60d8dddf40d
parents ad796a23 9dade0ac
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -9005,7 +9005,12 @@ typedef enum acamera_metadata_enum_acamera_request_available_capabilities {
     * <code>android.scaler.streamConfigurationMap</code> describes the streams supported in 'default'
     * mode.
     * The stream configurations supported in 'max resolution' mode are described by
     * <code>android.scaler.streamConfigurationMapMaximumResolution</code>.</p>
     * <code>android.scaler.streamConfigurationMapMaximumResolution</code>.
     * The maximum resolution mode pixel array size of a camera device
     * (<code>ACAMERA_SENSOR_INFO_PIXEL_ARRAY_SIZE</code>) with this capability,
     * will be at least 24 megapixels.</p>
     *
     * @see ACAMERA_SENSOR_INFO_PIXEL_ARRAY_SIZE
     */
    ACAMERA_REQUEST_AVAILABLE_CAPABILITIES_ULTRA_HIGH_RESOLUTION_SENSOR
                                                                      = 16,
+14 −3
Original line number Diff line number Diff line
@@ -70,7 +70,8 @@ status_t AudioEffect::set(const effect_uuid_t *type,
                audio_session_t sessionId,
                audio_io_handle_t io,
                const AudioDeviceTypeAddr& device,
                bool probe)
                bool probe,
                bool notifyFramesProcessed)
{
    sp<media::IEffect> iEffect;
    sp<IMemory> cblk;
@@ -124,6 +125,7 @@ status_t AudioEffect::set(const effect_uuid_t *type,
    request.device = VALUE_OR_RETURN_STATUS(legacy2aidl_AudioDeviceTypeAddress(device));
    request.attributionSource = mClientAttributionSource;
    request.probe = probe;
    request.notifyFramesProcessed = notifyFramesProcessed;

    media::CreateEffectResponse response;

@@ -194,7 +196,8 @@ status_t AudioEffect::set(const char *typeStr,
                audio_session_t sessionId,
                audio_io_handle_t io,
                const AudioDeviceTypeAddr& device,
                bool probe)
                bool probe,
                bool notifyFramesProcessed)
{
    effect_uuid_t type;
    effect_uuid_t *pType = nullptr;
@@ -211,7 +214,8 @@ status_t AudioEffect::set(const char *typeStr,
        pUuid = &uuid;
    }

    return set(pType, pUuid, priority, cbf, user, sessionId, io, device, probe);
    return set(pType, pUuid, priority, cbf, user, sessionId, io,
               device, probe, notifyFramesProcessed);
}


@@ -522,6 +526,13 @@ void AudioEffect::commandExecuted(int32_t cmdCode,
    }
}

void AudioEffect::framesProcessed(int32_t frames)
{
    if (mCbf != NULL) {
        mCbf(EVENT_FRAMES_PROCESSED, mUserData, &frames);
    }
}

// -------------------------------------------------------------------------

status_t AudioEffect::queryNumberEffects(uint32_t *numEffects)
+2 −0
Original line number Diff line number Diff line
@@ -37,4 +37,6 @@ parcelable CreateEffectRequest {
    AudioDevice device;
    AttributionSourceState attributionSource;
    boolean probe;
    /** true if a callback must be sent each time audio frames are processed */
    boolean notifyFramesProcessed;
}
+6 −0
Original line number Diff line number Diff line
@@ -43,4 +43,10 @@ interface IEffectClient {
     * TODO(ytai): replace opaque byte arrays with strongly typed parameters.
     */
    oneway void commandExecuted(int cmdCode, in byte[] cmdData, in byte[] replyData);

    /**
     * Called whenever audio frames have been processed by the effect engine.
     * @param frames number of frames processed.
     */
    oneway void framesProcessed(int frames);
}
+4 −0
Original line number Diff line number Diff line
@@ -383,6 +383,9 @@ struct EffectClient : public android::media::BnEffectClient {
                                   const std::vector<uint8_t> &replyData __unused) override {
        return binder::Status::ok();
    }
    binder::Status framesProcessed(int32_t frames __unused) override {
        return binder::Status::ok();
    }
};

status_t AudioFlingerFuzzer::invokeAudioEffect() {
@@ -424,6 +427,7 @@ status_t AudioFlingerFuzzer::invokeAudioEffect() {
    request.attributionSource.packageName = opPackageName;
    request.attributionSource.pid = VALUE_OR_RETURN_STATUS(legacy2aidl_pid_t_int32_t(getpid()));
    request.probe = false;
    request.notifyFramesProcessed = false;

    media::CreateEffectResponse response{};
    status_t status = af->createEffect(request, &response);
Loading