https://webaudio.github.io/web-audio-api/#AudioWorkletNode Implement the interface of AudioWorkletNode.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f6242a5f445d0bf60387d7070ea4b0e7eb09b6b5 commit f6242a5f445d0bf60387d7070ea4b0e7eb09b6b5 Author: Hongchan Choi <hongchan@chromium.org> Date: Mon Jun 26 19:19:32 2017 Add ENUM categories for AudioWorkletNode and its AudioParam object This is a simple addition to the ENUM category for: - AudioWorkletNode - AudioParam objects in AudioWorkletNode Bug: 691782 , 469639 Change-Id: If8499382f2aed8157f55c419c3fdc2f71c666196 Reviewed-on: https://chromium-review.googlesource.com/548580 Commit-Queue: Hongchan Choi <hongchan@chromium.org> Reviewed-by: Raymond Toy <rtoy@chromium.org> Cr-Commit-Position: refs/heads/master@{#482348} [modify] https://crrev.com/f6242a5f445d0bf60387d7070ea4b0e7eb09b6b5/third_party/WebKit/Source/modules/webaudio/AudioNode.h [modify] https://crrev.com/f6242a5f445d0bf60387d7070ea4b0e7eb09b6b5/third_party/WebKit/Source/modules/webaudio/AudioParam.cpp [modify] https://crrev.com/f6242a5f445d0bf60387d7070ea4b0e7eb09b6b5/third_party/WebKit/Source/modules/webaudio/AudioParam.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d106af775a9ccae8ca4c278ba716bb824ba3f10c commit d106af775a9ccae8ca4c278ba716bb824ba3f10c Author: Hongchan Choi <hongchan@chromium.org> Date: Tue Sep 26 21:26:47 2017 Create ObjectProxy after ThreadedWorkletMessagingProxy constructor CreateObjectProxy() method must be called after the construction of ThreadedWorkletMessagingProxy is completed. Otherwise, the subclass's CreateObjectProxy() method will not get called as expected. Bug: 691782 Change-Id: Ib148193a8fbb53a6232a1275fe2015a619c91452 Reviewed-on: https://chromium-review.googlesource.com/676137 Commit-Queue: Hongchan Choi <hongchan@chromium.org> Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org> Cr-Commit-Position: refs/heads/master@{#504488} [modify] https://crrev.com/d106af775a9ccae8ca4c278ba716bb824ba3f10c/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp [modify] https://crrev.com/d106af775a9ccae8ca4c278ba716bb824ba3f10c/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/08524df705483e5d4ab8f11acba13f7c4b05f9cc commit 08524df705483e5d4ab8f11acba13f7c4b05f9cc Author: Hongchan Choi <hongchan@chromium.org> Date: Mon Oct 02 18:39:48 2017 Associate AudioWorklet and BaseAudioContext This patch introduces the functional relationship between AudioWorklet and BaseAudioContext: - When BaseAudioContext is created, AudioWorklet keeps the reference of it. Also it offers the AudioWorkletMessagingProxy if available. - When audioWorklet.addModule() is called, registered BaseAudioContext in the worklet will get AudioWorkletMessagingProxy if the context still does not have one. This also implements a simple reference-counting mechanism in AudioWorkletThread. Bug: 691782 Change-Id: Icb0607c63b577cd3ec01550de2e63437ecd0f1e0 Reviewed-on: https://chromium-review.googlesource.com/676195 Reviewed-by: Raymond Toy <rtoy@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org> Commit-Queue: Hongchan Choi <hongchan@chromium.org> Cr-Commit-Position: refs/heads/master@{#505694} [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioContextTest.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorklet.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorklet.h [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScopeTest.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.h [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletThread.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletThread.h [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/AudioWorkletThreadTest.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/BaseAudioContext.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/BaseAudioContext.h [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/DefaultAudioDestinationNode.cpp [modify] https://crrev.com/08524df705483e5d4ab8f11acba13f7c4b05f9cc/third_party/WebKit/Source/modules/webaudio/OfflineAudioDestinationNode.cpp
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2985efc5f97d4322bfc4aafdc4481599820ac187 commit 2985efc5f97d4322bfc4aafdc4481599820ac187 Author: Hongchan Choi <hongchan@chromium.org> Date: Thu Oct 12 03:23:09 2017 Implements AudioWorkletNode - Intent to implement: https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/fBfWECEGZa8/Jr_3UDsCAQAJ - Spec: https://webaudio.github.io/web-audio-api/#AudioWorklet This CL implements: - The interface of AudioWorkletNode and AudioWorkletProcessor (AudioWorkletNode, AudioWorkletProcessor) - The infrastructure for AWN's functionality (AudioWorklet, AudioWorkletMessagingProxy, AudioWorkletGlobalScope) - Basic layout tests (IDL harness test, node construction) AudioWorkletNode will be exposed in the global scope with the command line options: "--enable-blink-features=Worklet,AudioWorklet" Bug: 691782 Change-Id: Id5680e9e9c8814dc68120719d5db5b4e0fcddeab Reviewed-on: https://chromium-review.googlesource.com/604709 Commit-Queue: Hongchan Choi <hongchan@chromium.org> Reviewed-by: Raymond Toy <rtoy@chromium.org> Reviewed-by: Dirk Pranke <dpranke@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org> Cr-Commit-Position: refs/heads/master@{#508242} [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/audio-worklet-common.js [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/audio-worklet-gain-node.html [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/audio-worklet-node-options.html [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/audio-worklet-node.html [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/dummy-processor.js [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/gain-processor.js [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/http/tests/webaudio/audio-worklet/window-audio-worklet.html [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/webaudio/audio-worklet/audio-worklet-node-idl-expected.txt [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/webaudio/audio-worklet/audio-worklet-node-idl.html [delete] https://crrev.com/1b3341e4419ad706ddc3386b5f8b499cfbf119c2/third_party/WebKit/LayoutTests/webaudio/audioworklet/audioworklet-testing.js [delete] https://crrev.com/1b3341e4419ad706ddc3386b5f8b499cfbf119c2/third_party/WebKit/LayoutTests/webaudio/audioworklet/window-audioworklet.html [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/modules_idl_files.gni [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorklet.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScope.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScope.h [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScope.idl [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScopeTest.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.h [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletNode.cpp [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletNode.h [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletNode.idl [add] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletNodeOptions.idl [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletProcessor.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletProcessor.h [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/AudioWorkletProcessor.idl [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/BUILD.gn [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/BaseAudioContext.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/BaseAudioContext.h [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/DefaultAudioDestinationNode.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Source/modules/webaudio/OfflineAudioDestinationNode.cpp [modify] https://crrev.com/2985efc5f97d4322bfc4aafdc4481599820ac187/third_party/WebKit/Tools/Scripts/webkitpy/layout_tests/servers/apache_http.py
Comment 1 by hongchan@chromium.org
, Jun 26 2017