diff --git a/media/audio/ohos/ohos_audio_output_stream.cc b/media/audio/ohos/ohos_audio_output_stream.cc index fbfa455719f8eeed9c4d8cd2d43544e9a5f7d813..8a3425067eee73fb6dbd407eae7c2fdc5404361c 100644 --- a/media/audio/ohos/ohos_audio_output_stream.cc +++ b/media/audio/ohos/ohos_audio_output_stream.cc @@ -591,7 +591,8 @@ void OHOSAudioOutputStream::PumpSamples() { } stream_position_samples_ += frames_filled; - if (writeFailed && weakMediaSession_ && weakMediaSession_.get()->HasOnlyOneShotPlayersPublic()) { + if (writeFailed && weakMediaSession_ && (weakMediaSession_.get()->HasOnlyOneShotPlayersPublic() || + weakMediaSession_.get()->GetSessionState() == content::MediaSessionImpl::NWebMediaSessionState::NOINITIAL)) { LOG(INFO) << "OHOSAudioOutputStream::PumpSamples OneShotPlayers write failed"; return; }