Loading dom/media/GraphDriver.cpp +5 −13 Original line number Diff line number Diff line Loading @@ -423,9 +423,7 @@ class AudioCallbackDriver::FallbackWrapper : public GraphInterface { "The audio driver can only enter stopping if it iterated the " "graph, which it can only do if there's no fallback driver"); if (audioState != AudioStreamState::Running && result.IsStillProcessing()) { if (audioState != AudioStreamState::Errored) { mOwner->MaybeStartAudioStream(); } return result; } Loading Loading @@ -1061,11 +1059,10 @@ void AudioCallbackDriver::StateCallback(cubeb_state aState) { LOG(LogLevel::Debug, ("AudioCallbackDriver(%p) State: %s", this, StateToString(aState))); // Clear the flag for the not running and error states (stopped, drained) // Clear the flag for the not running // states: stopped, drained, error. AudioStreamState streamState = mAudioStreamState.exchange( aState == CUBEB_STATE_STARTED ? AudioStreamState::Running : aState == CUBEB_STATE_ERROR ? AudioStreamState::Errored aState == CUBEB_STATE_STARTED ? AudioStreamState::Running : AudioStreamState::None); if (aState == CUBEB_STATE_ERROR) { Loading Loading @@ -1208,7 +1205,6 @@ TimeDuration AudioCallbackDriver::AudioOutputLatency() { void AudioCallbackDriver::FallbackToSystemClockDriver() { MOZ_ASSERT(!ThreadRunning()); MOZ_ASSERT(mAudioStreamState == AudioStreamState::None || mAudioStreamState == AudioStreamState::Errored || mAudioStreamState == AudioStreamState::Pending); MOZ_ASSERT(mFallbackDriverState == FallbackDriverState::None); LOG(LogLevel::Debug, Loading Loading @@ -1252,10 +1248,6 @@ void AudioCallbackDriver::FallbackDriverStopped(GraphTime aIterationStart, void AudioCallbackDriver::MaybeStartAudioStream() { AudioStreamState streamState = mAudioStreamState; MOZ_ASSERT( streamState != AudioStreamState::Errored, "An errored stream must not attempted to be re-started, an error stream" " has already beed started once"); if (streamState != AudioStreamState::None) { LOG(LogLevel::Verbose, ("%p: AudioCallbackDriver %p Cannot re-init.", Graph(), this)); Loading dom/media/GraphDriver.h +1 −4 Original line number Diff line number Diff line Loading @@ -750,10 +750,7 @@ class AudioCallbackDriver : public GraphDriver, /* There is a running AudioStream. */ Running, /* There is an AudioStream that is draining, and will soon stop. */ Stopping, /* There is an AudioStream that has errored, the Fallback driver needs to * continue advancing the graph. */ Errored, Stopping }; Atomic<AudioStreamState> mAudioStreamState; /* State of the fallback driver, see inline comments. */ Loading Loading
dom/media/GraphDriver.cpp +5 −13 Original line number Diff line number Diff line Loading @@ -423,9 +423,7 @@ class AudioCallbackDriver::FallbackWrapper : public GraphInterface { "The audio driver can only enter stopping if it iterated the " "graph, which it can only do if there's no fallback driver"); if (audioState != AudioStreamState::Running && result.IsStillProcessing()) { if (audioState != AudioStreamState::Errored) { mOwner->MaybeStartAudioStream(); } return result; } Loading Loading @@ -1061,11 +1059,10 @@ void AudioCallbackDriver::StateCallback(cubeb_state aState) { LOG(LogLevel::Debug, ("AudioCallbackDriver(%p) State: %s", this, StateToString(aState))); // Clear the flag for the not running and error states (stopped, drained) // Clear the flag for the not running // states: stopped, drained, error. AudioStreamState streamState = mAudioStreamState.exchange( aState == CUBEB_STATE_STARTED ? AudioStreamState::Running : aState == CUBEB_STATE_ERROR ? AudioStreamState::Errored aState == CUBEB_STATE_STARTED ? AudioStreamState::Running : AudioStreamState::None); if (aState == CUBEB_STATE_ERROR) { Loading Loading @@ -1208,7 +1205,6 @@ TimeDuration AudioCallbackDriver::AudioOutputLatency() { void AudioCallbackDriver::FallbackToSystemClockDriver() { MOZ_ASSERT(!ThreadRunning()); MOZ_ASSERT(mAudioStreamState == AudioStreamState::None || mAudioStreamState == AudioStreamState::Errored || mAudioStreamState == AudioStreamState::Pending); MOZ_ASSERT(mFallbackDriverState == FallbackDriverState::None); LOG(LogLevel::Debug, Loading Loading @@ -1252,10 +1248,6 @@ void AudioCallbackDriver::FallbackDriverStopped(GraphTime aIterationStart, void AudioCallbackDriver::MaybeStartAudioStream() { AudioStreamState streamState = mAudioStreamState; MOZ_ASSERT( streamState != AudioStreamState::Errored, "An errored stream must not attempted to be re-started, an error stream" " has already beed started once"); if (streamState != AudioStreamState::None) { LOG(LogLevel::Verbose, ("%p: AudioCallbackDriver %p Cannot re-init.", Graph(), this)); Loading
dom/media/GraphDriver.h +1 −4 Original line number Diff line number Diff line Loading @@ -750,10 +750,7 @@ class AudioCallbackDriver : public GraphDriver, /* There is a running AudioStream. */ Running, /* There is an AudioStream that is draining, and will soon stop. */ Stopping, /* There is an AudioStream that has errored, the Fallback driver needs to * continue advancing the graph. */ Errored, Stopping }; Atomic<AudioStreamState> mAudioStreamState; /* State of the fallback driver, see inline comments. */ Loading