Move more logic from AudioDestinationNode to its subclasses
[WebKit-https.git] / Source / WebCore / ChangeLog
index 01c431d26ab8d757604e97455856492593f2759a..a00d68cd364d1f753c36603670cf2e62cb5fcb97 100644 (file)
@@ -1,3 +1,38 @@
+2021-05-17  Chris Dumez  <cdumez@apple.com>
+
+        Move more logic from AudioDestinationNode to its subclasses
+        https://bugs.webkit.org/show_bug.cgi?id=225849
+
+        Reviewed by Sam Weinig.
+
+        Move more logic from AudioDestinationNode to its subclasses. In particular, AudioDestinationNode
+        contains a lot of things that are specific to real-time audio rendering and those should go to
+        DefaultAudioDestinationNode.
+
+        This allows us to move isPlayingAudioDidChange() from BaseAudioContext to AudioContext also.
+
+        * Modules/webaudio/AudioContext.cpp:
+        (WebCore::AudioContext::isPlayingAudioDidChange):
+        * Modules/webaudio/AudioContext.h:
+        * Modules/webaudio/AudioDestinationNode.cpp:
+        (WebCore::AudioDestinationNode::renderQuantum):
+        * Modules/webaudio/AudioDestinationNode.h:
+        * Modules/webaudio/BaseAudioContext.cpp:
+        * Modules/webaudio/BaseAudioContext.h:
+        * Modules/webaudio/DefaultAudioDestinationNode.cpp:
+        (WebCore::DefaultAudioDestinationNode::createDestination):
+        (WebCore::DefaultAudioDestinationNode::framesPerBuffer const):
+        (WebCore::DefaultAudioDestinationNode::render):
+        (WebCore::DefaultAudioDestinationNode::setIsSilent):
+        (WebCore::DefaultAudioDestinationNode::isPlayingDidChange):
+        (WebCore::DefaultAudioDestinationNode::updateIsEffectivelyPlayingAudio):
+        * Modules/webaudio/DefaultAudioDestinationNode.h:
+        * Modules/webaudio/OfflineAudioDestinationNode.cpp:
+        (WebCore::OfflineAudioDestinationNode::OfflineAudioDestinationNode):
+        (WebCore::OfflineAudioDestinationNode::startRendering):
+        (WebCore::OfflineAudioDestinationNode::renderOnAudioThread):
+        * Modules/webaudio/OfflineAudioDestinationNode.h:
+
 2021-05-17  Peng Liu  <peng.liu6@apple.com>
 
         [GPUP] WebContent process should not pull audio session category from the GPU Process