Open Bug 1062849 (audioworklet) Opened 6 years ago Updated 11 days ago

Implement AudioWorklets for Web Audio API

Categories

(Core :: Web Audio, enhancement, P2)

32 Branch
enhancement

Tracking

()

Webcompat Priority ?
Tracking Status
platform-rel --- +

People

(Reporter: padenot, Assigned: karlt)

References

(Depends on 11 open bugs, Blocks 4 open bugs, )

Details

(4 keywords, Whiteboard: [DevRel:P2] [games:p3][platform-rel-Games])

Attachments

(1 obsolete file)

Some more links to follow progress on the spec.

"asynchronous vs synchronous instantiation of AudioWorkerNodes"
http://lists.w3.org/Archives/Public/public-audio/2014OctDec/0038.html

Tracker (not necessarily worth reading):
https://github.com/WebAudio/web-audio-api/issues/113
P1 for obvious reasons.
Priority: -- → P1
+DevAdvocacy because I was asked about "when is Firefox going to implement AudioWorkers" today at this conference. Also I have been wanting them for months already! :P
Keywords: DevAdvocacy
Since we're gated on the working group and prioritizing perf improvements, we need to move this to a P2.
Priority: P1 → P2
Rank: 25
Summary: Implement Audio Workers for Web Audio API → Implement AudioWorklets for Web Audio API
Whiteboard: [DevRel:P2]
Whiteboard: [DevRel:P2] → [DevRel:P2] [games:p2]
Flags: platform-rel?
platform-rel: --- → ?
Whiteboard: [DevRel:P2] [games:p2] → [DevRel:P2] [games:p?]
Whiteboard: [DevRel:P2] [games:p?] → [DevRel:P2] [games:p3]
Whiteboard: [DevRel:P2] [games:p3] → [DevRel:P2] [games:p3][platform-rel-Games]
Depends on: 1290021
I'm implementing Worklet for Houdini. Would be nice to talk about how to use the same component for AudioWorklet as well.
Flags: needinfo?(padenot)
Andrea, I need to have a look at the latest changes of the spec, but I can talk whenever, just ping me during the European day.
Flags: needinfo?(padenot)
Depends on: worklets-1
platform-rel: ? → +
Assignee: nobody → jib
Rank: 25 → 15
Depends on: 1328964
Priority: P2 → P1
Naveed, here is the NI you asked for on the AudioWorklet bug.
Flags: needinfo?(nihsanullah)
Mass change P1->P2 to align with new Mozilla triage process
Priority: P1 → P2
Depends on: 1402784
Depends on: 1322858
Just putting up a little .webidl WIP I have here for Karl.
Assignee: jib → karlt
This bug will become [parity-chrome] soon, since AudioWorklet is planned to be shipped with Chrome 66 (current beta):
https://blog.chromium.org/2018/03/chrome-66-beta-css-typed-object-model.html
Waiting for the audioworklet. We tested on chrome.Audio Applications based on AudioWorklet has a better voice when page manipulate dom.
[clearing naveed's needinfo]

Paul, what would you say is the priority of this work given that chrome is shipping soon?
Flags: needinfo?(padenot)
Jeff, Chrome has already shipped this in M66.

Shipping this is of the highest priority.
Flags: needinfo?(padenot)
Paul: I also have a  strong interest in AudioWorklet.
Let me know if you think I can help you implementing this.
That would be a good opportunity for me to get back contributing code to Firefox ;)
I probably won't have enough spare time to implement the whole thing, but can probably help on some subtasks.
I could help test and verify on it. We have a cool meet application based on the feature. Currently, we just recommend customers use Chrome. But we also have lots of our customers love Firefox. Hope the feature could be shipped as soon as possible.
(In reply to fideltian from comment #16)
> I could help test and verify on it. We have a cool meet application based on
> the feature. Currently, we just recommend customers use Chrome. But we also
> have lots of our customers love Firefox. Hope the feature could be shipped
> as soon as possible.

Can you comment on why using a polyfill in Firefox does not work for you? This sort of feedback really help us prioritize work like this.
(In reply to Jeff Griffiths (:canuckistani) (:⚡︎) from comment #17)
> (In reply to fideltian from comment #16)
> > I could help test and verify on it. We have a cool meet application based on
> > the feature. Currently, we just recommend customers use Chrome. But we also
> > have lots of our customers love Firefox. Hope the feature could be shipped
> > as soon as possible.
> 
> Can you comment on why using a polyfill in Firefox does not work for you?
> This sort of feedback really help us prioritize work like this.

Hi Jeff,

   We tried use ScriptProcessorNode to play audio data of a conference. Generally it works and the quality is good on Firefox, but there is some glitches/noise when you try to manipulate the page DOM or some busy tasks running on main thread. According to the spec ScriptProcessorNode onaudioprocess is called from main thread. So the voice will be impacted by the main thread, it is the shortcuts. Voice quality is the number one. We tested on chrome Audioworklet. It has a good improvement. If you have more interest on our meet application. I could demonstrate/share with you.

Best Regards
Fidel Tian
Blocks: 1458445
Depends on: 1458446
Depends on: 1458448
(In reply to Jeff Griffiths (:canuckistani) (:⚡︎) from comment #17)
> Can you comment on why using a polyfill in Firefox does not work for you?
> This sort of feedback really help us prioritize work like this.

There isn't a satisficatory alternative for doing what AudioWorklet does.
OTOH, if designed correctly, AudioWorklet could provide polyfill for any other
AudioNodes that are not implemented by a particular browser.
IOW AudioWorklet is what should have been the first AudioNode.
Thank you very much for the offers of help.

Arnaud, would you like to start from bug 1458446?
I'm planning to look at bug 1458448 next.
If we work from each end, then perhaps we can meet in the middle.
Depends on: 1460896
Depends on: 1460907
Depends on: 1466182
Depends on: 1470856
Depends on: 1471843
Keywords: parity-chrome
OS: Linux → All
Hardware: x86_64 → All
Depends on: 1473467
Depends on: 1473469
Comment on attachment 8928224 [details]
Bug 1062849: Define AudioWorkletNode and AudioWorkletProcessor. WIP

Marking this patch as obsolete since AudioWorkletNode and AudioWorkletProcessor have been implemented as part of bug 1458446 and bug 1466182
Attachment #8928224 - Attachment is obsolete: true
Depends on: 1476514
Depends on: 1476518
Blocks: 1473176
Depends on: 1481676
Clearly ni on Naveed as he no longer works at Mozilla.
Flags: needinfo?(nihsanullah)
Appreciate the work you did. I would like to know when could the feature be released? Our product could not have audio option on FF as Chrome until the feature is available. we received many feedback from customers about FF.

Regards
Fidel Tian
Fidel, we're committed to ship this as soon as it's ready, but there are currently a bit too many moving pieces to provide a clear estimate. We'll announce an estimate when we think it's going to be realistic, thanks.
Depends on: 1501709
Depends on: 1513722
Blocks: 1514486
Depends on: 1519562

Hello!any release plans?

Regards
Fidel Tian

Depends on: 1535214
Depends on: 1539039
Depends on: 1541311
Depends on: 1542931
Type: defect → enhancement
Depends on: 1558123
Depends on: 1558124
Depends on: 1558526

Any estimate on this?

Depends on: 1565464
Depends on: 1565956
Depends on: 1566312
Depends on: 1569809
Depends on: 1572627
Depends on: 1582611
Webcompat Priority: --- → ?
Depends on: 1587872
Depends on: 1596655
Depends on: 1598114
Depends on: 1598117
Blocks: 983058
Depends on: 1599952
Depends on: 1612997
Alias: audioworklet
Depends on: 1598125
Keywords: parity-safari
Depends on: 1613070
Depends on: 1616599
Depends on: 1616723
Depends on: 1616725
Depends on: 1619486
Depends on: 1619607
Depends on: 1621473
Depends on: 1623385
Depends on: 1625375
Depends on: 1628842

Note, when Disable Cache is checked at Developer Tools Nightly 77 freezes and crashes when AudioWorklet is used https://bugzilla.mozilla.org/show_bug.cgi?id=1629384

Depends on: 1630497
Depends on: 1631713
Depends on: 1636121
Depends on: 1623230
Depends on: 1639793
Depends on: 1647750
You need to log in before you can comment on or make changes to this bug.