New issue
Advanced search Search tips

Issue 753881 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Aug 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 469639



Sign in to add a comment

Add AudioWorkletObjectProxy for Worklet data synchronization

Project Member Reported by hongchan@chromium.org, Aug 9 2017

Issue description

When Worklet.addModule() is called, the data from
AudioWorkletGlobalScope must be cloned to the associated
AudioWorkletMessagingProxy. This is necessary for the non-blocking and 
synchronous instantiation of AudioWorkletNode, but the Worklet infra
does not support this feature.

Implement the AudioWorklet-specific code path to synchronize the data
upon the completion of script evaluation.

Design doc: https://docs.google.com/document/d/1XC-eEC_SRy68RYeRzIgk9-e9v0UL9TDqR_swEgawKTc/edit#heading=h.om5521jk2yfl
 
Project Member

Comment 1 by bugdroid1@chromium.org, Aug 15 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f2f2503ee95845e71362ed9c1792fdf84f342bfc

commit f2f2503ee95845e71362ed9c1792fdf84f342bfc
Author: Hongchan Choi <hongchan@chromium.org>
Date: Tue Aug 15 22:13:36 2017

Add AudioWorkletObjectProxy for Worklet data synchronization

When Worklet.addModule() is called, the data from
AudioWorkletGlobalScope must be cloned to the associated
AudioWorkletMessagingProxy. This is necessary for the non-blocking and
synchronous instantiation of AudioWorkletNode, but the Worklet infra
does not support this feature.

This patch implements the AudioWorklet-specific code path to synchronize
the data upon the completion of script evaluation.

Design doc: https://docs.google.com/document/d/1XC-eEC_SRy68RYeRzIgk9-e9v0UL9TDqR_swEgawKTc/edit#heading=h.om5521jk2yfl

Bug:  753881 
Change-Id: I69c8bf2c70737443dae2e734763d151f90a3953f
Reviewed-on: https://chromium-review.googlesource.com/608914
Commit-Queue: Hongchan Choi <hongchan@chromium.org>
Reviewed-by: Raymond Toy <rtoy@chromium.org>
Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org>
Cr-Commit-Position: refs/heads/master@{#494571}
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.cpp
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/core/workers/ThreadedWorkletMessagingProxy.h
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/core/workers/ThreadedWorkletObjectProxy.h
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/AudioWorkletGlobalScope.h
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.cpp
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/AudioWorkletMessagingProxy.h
[add] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/AudioWorkletObjectProxy.cpp
[add] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/AudioWorkletObjectProxy.h
[modify] https://crrev.com/f2f2503ee95845e71362ed9c1792fdf84f342bfc/third_party/WebKit/Source/modules/webaudio/BUILD.gn

Status: Verified (was: Started)

Sign in to add a comment