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

Commit c1cd92cf authored by Shunkai Yao's avatar Shunkai Yao
Browse files

r_submix: keep the signed value for offset calculation in AIDL implementation

otherwise a negative offset will result in long sleep

Bug: 295055755
Test: atest android.media.audio.cts.AudioPlaybackCaptureTest
Change-Id: Ie941cc2525e3ea42b53106ae3a65242794b1dd1b
Merged-In: Ie941cc2525e3ea42b53106ae3a65242794b1dd1b
parent 043b3a24
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -348,9 +348,9 @@ size_t StreamRemoteSubmix::getStreamPipeSizeInFrames() {
    // recording (including this call): it's converted to usec and compared to how long we've been
    // recording for, which gives us how long we must wait to sync the projected recording time, and
    // the observed recording time.
    const size_t projectedVsObservedOffsetUs = static_cast<size_t>(
    const int projectedVsObservedOffsetUs =
            std::roundf((readCounterFrames * MICROS_PER_SECOND / mStreamConfig.sampleRate) -
                        recordDurationUs.count()));
                        recordDurationUs.count());

    LOG(VERBOSE) << __func__ << ": record duration " << recordDurationUs.count()
                 << " microseconds, will wait: " << projectedVsObservedOffsetUs << " microseconds";