From 52b17bd4d80656885e095e74cdd34b90059e8f30 Mon Sep 17 00:00:00 2001 From: Christopher Snowhill Date: Wed, 12 Jan 2022 23:16:13 -0800 Subject: [PATCH] Cog Audio: Implement virtual ring buffer function to read buffered bytes count --- Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.h | 3 ++- Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.m | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.h b/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.h index 95cd3e2e1..102bbc960 100644 --- a/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.h +++ b/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.h @@ -68,7 +68,8 @@ // Checks if the buffer is empty or not. This is safe in any thread. - (BOOL)isEmpty; -- (UInt32)bufferLength; +// Return amount buffered +- (UInt32)bufferedLength; // Read operations: diff --git a/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.m b/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.m index 9ffea019c..f692427ef 100644 --- a/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.m +++ b/Audio/ThirdParty/VirtualRingBuffer/VirtualRingBuffer.m @@ -73,9 +73,9 @@ static void deallocateVirtualBuffer(void *buffer, UInt32 bufferLength); } -- (UInt32)bufferLength +- (UInt32)bufferedLength { - return bufferLength; + return atomic_load_explicit(&bufferFilled, memory_order_relaxed); } //