diff options
author | Glenn Kasten <gkasten@google.com> | 2014-05-07 08:43:45 -0700 |
---|---|---|
committer | Glenn Kasten <gkasten@google.com> | 2014-05-07 15:14:20 -0700 |
commit | b880f5e5fc07397ddd09a94ba18bdf4fa62aae00 (patch) | |
tree | d90a68a7e3684a24909bbe85f57378656e043d01 /services/audioflinger/Threads.cpp | |
parent | 0dd3c9cb0ed66888c224a97d817701df6c3b2655 (diff) | |
download | frameworks_av-b880f5e5fc07397ddd09a94ba18bdf4fa62aae00.zip frameworks_av-b880f5e5fc07397ddd09a94ba18bdf4fa62aae00.tar.gz frameworks_av-b880f5e5fc07397ddd09a94ba18bdf4fa62aae00.tar.bz2 |
Add a per-thread heap that is read-only to clients
Change-Id: I401263566ca20fbfb565689c8fa99458d3b283b2
Diffstat (limited to 'services/audioflinger/Threads.cpp')
-rw-r--r-- | services/audioflinger/Threads.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/services/audioflinger/Threads.cpp b/services/audioflinger/Threads.cpp index a916b32..2c5a0eb 100644 --- a/services/audioflinger/Threads.cpp +++ b/services/audioflinger/Threads.cpp @@ -143,6 +143,12 @@ static const int kPriorityFastMixer = 3; // See the client's minBufCount and mNotificationFramesAct calculations for details. static const int kFastTrackMultiplier = 2; +// See Thread::readOnlyHeap(). +// Initially this heap is used to allocate client buffers for "fast" AudioRecord. +// Eventually it will be the single buffer that FastCapture writes into via HAL read(), +// and that all "fast" AudioRecord clients read from. In either case, the size can be small. +static const size_t kRecordThreadReadOnlyHeapSize = 0x1000; + // ---------------------------------------------------------------------------- #ifdef ADD_BATTERY_DATA @@ -4635,6 +4641,8 @@ AudioFlinger::RecordThread::RecordThread(const sp<AudioFlinger>& audioFlinger, #ifdef TEE_SINK , mTeeSink(teeSink) #endif + , mReadOnlyHeap(new MemoryDealer(kRecordThreadReadOnlyHeapSize, + "RecordThreadRO", MemoryHeapBase::READ_ONLY)) { snprintf(mName, kNameLength, "AudioIn_%X", id); mNBLogWriter = audioFlinger->newWriter_l(kLogSize, mName); |