From 97a893eb34f8687485c88eaf15917974a203f20b Mon Sep 17 00:00:00 2001 From: Andy Hung Date: Sun, 29 Mar 2015 01:03:07 -0700 Subject: Add RecordBufferConverter for RecordThread data processing Change-Id: Ia3aab8590cd41e8a7cba0a7345d70d2866d92045 --- services/audioflinger/RecordTracks.h | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'services/audioflinger/RecordTracks.h') diff --git a/services/audioflinger/RecordTracks.h b/services/audioflinger/RecordTracks.h index 204a9d6..5537ca2 100644 --- a/services/audioflinger/RecordTracks.h +++ b/services/audioflinger/RecordTracks.h @@ -34,6 +34,7 @@ public: IAudioFlinger::track_flags_t flags, track_type type); virtual ~RecordTrack(); + virtual status_t initCheck() const; virtual status_t start(AudioSystem::sync_event_t event, int triggerSession); virtual void stop(); @@ -66,13 +67,6 @@ private: bool mOverflow; // overflow on most recent attempt to fill client buffer - // updated by RecordThread::readInputParameters_l() - AudioResampler *mResampler; - - // interleaved stereo pairs of fixed-point Q4.27 - int32_t *mRsmpOutBuffer; - // current allocated frame count for the above, which may be larger than needed - size_t mRsmpOutFrameCount; size_t mRsmpInUnrel; // unreleased frames remaining from // most recent getNextBuffer @@ -93,7 +87,10 @@ private: ssize_t mFramesToDrop; // used by resampler to find source frames - ResamplerBufferProvider *mResamplerBufferProvider; + ResamplerBufferProvider *mResamplerBufferProvider; + + // used by the record thread to convert frames to proper destination format + RecordBufferConverter *mRecordBufferConverter; }; // playback track, used by PatchPanel -- cgit v1.1