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

Commit 3686203a authored by Kevin Rocard's avatar Kevin Rocard
Browse files

Propagate sample rate to static audio track



Bug: 136691300
Test: playback on static buffer track
Change-Id: Ib11c39e381a1b78450ab8a688310453aa3f1daf7
Signed-off-by: default avatarKevin Rocard <krocard@google.com>
parent 40143b19
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -575,7 +575,7 @@ protected:
class AudioTrackServerProxy : public ServerProxy {
public:
    AudioTrackServerProxy(audio_track_cblk_t* cblk, void *buffers, size_t frameCount,
            size_t frameSize, bool clientInServer = false, uint32_t sampleRate = 0)
            size_t frameSize, bool clientInServer, uint32_t sampleRate)
        : ServerProxy(cblk, buffers, frameCount, frameSize, true /*isOut*/, clientInServer),
          mPlaybackRateObserver(&cblk->mPlaybackRateQueue),
          mUnderrunCount(0), mUnderrunning(false), mDrained(true) {
@@ -651,7 +651,7 @@ private:
class StaticAudioTrackServerProxy : public AudioTrackServerProxy {
public:
    StaticAudioTrackServerProxy(audio_track_cblk_t* cblk, void *buffers, size_t frameCount,
            size_t frameSize);
            size_t frameSize, uint32_t sampleRate);
protected:
    virtual ~StaticAudioTrackServerProxy() { }

+3 −2
Original line number Diff line number Diff line
@@ -984,8 +984,9 @@ AudioPlaybackRate AudioTrackServerProxy::getPlaybackRate()
// ---------------------------------------------------------------------------

StaticAudioTrackServerProxy::StaticAudioTrackServerProxy(audio_track_cblk_t* cblk, void *buffers,
        size_t frameCount, size_t frameSize)
    : AudioTrackServerProxy(cblk, buffers, frameCount, frameSize),
        size_t frameCount, size_t frameSize, uint32_t sampleRate)
    : AudioTrackServerProxy(cblk, buffers, frameCount, frameSize, false /*clientInServer*/,
                            sampleRate),
      mObserver(&cblk->u.mStatic.mSingleStateQueue),
      mPosLoopMutator(&cblk->u.mStatic.mPosLoopQueue),
      mFramesReadySafe(frameCount), mFramesReady(frameCount),
+1 −1
Original line number Diff line number Diff line
@@ -561,7 +561,7 @@ AudioFlinger::PlaybackThread::Track::Track(
                mFrameSize, !isExternalTrack(), sampleRate);
    } else {
        mAudioTrackServerProxy = new StaticAudioTrackServerProxy(mCblk, mBuffer, frameCount,
                mFrameSize);
                mFrameSize, sampleRate);
    }
    mServerProxy = mAudioTrackServerProxy;