Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions Sources/CSFBAudioEngine/Player/AudioPlayer.h
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ class AudioPlayer final {
dsema::Semaphore eventSemaphore_{0};

/// Message queue communicating events to the event processing thread
mpsc::MessageQueue<256, 40> events_;
mpsc::MessageQueue<256, 32> events_;

/// The `AVAudioEngine` instance
AVAudioEngine *engine_{nil};
Expand Down Expand Up @@ -391,10 +391,14 @@ class AudioPlayer final {
decoderCanceled = 4,
/// Allocation failure
allocationFailure = 5,
/// Rendering started
renderingStarted = 6,
/// Audio frames rendered from ring buffer
framesRendered = 6,
framesRendered = 7,
/// Rendering complete
Comment thread
sbooth marked this conversation as resolved.
renderingComplete = 8,
/// Ring buffer contained fewer audio frames than requested
renderBufferUnderrun = 7,
renderBufferUnderrun = 9,
};

// MARK: - Event Processing
Expand All @@ -418,9 +422,15 @@ class AudioPlayer final {
/// Dequeues and processes an allocation failure event from `events_`
bool processAllocationFailureEvent() noexcept;

/// Dequeues and processes a rendering started event from `events_`
bool processRenderingStartedEvent() noexcept;

/// Dequeues and processes a frames rendered event from `events_`
bool processFramesRenderedEvent() noexcept;

/// Dequeues and processes a rendering complete event from `events_`
bool processRenderingCompleteEvent() noexcept;

/// Reads and processes a render buffer underrun event from `events_`
bool processRenderBufferUnderrunEvent() noexcept;

Expand Down
Loading