On Wed, May 2, 2018 at 9:21 PM, Karl Tomlinson <mozn...@karlt.net> wrote:
> It seems that Chrome works around this by choosing to garbage > collect input nodes even when their presence is specified to > require (observable) AudioWorkletProcessor.process() calls. > This garbage collection is performed in a way that causes the > process() calls to be halted (which stops sound production), and > so the AudioWorkletProcessor can subsequently also be garbage > collected if there are no rooted references, as usual. > > Having the behavior of AudioWorkletProcess depend on whether or > not the client maintains references to input nodes is not > something I'd like to implement. It would be comparable to an > audio element stopping playback at a time when an implementation > chooses to perform garbage collection after the client has removed > its last reference. It is contrary to [[TAG design principles]]. > The Chrome approach seems to be based on a different understanding > of [[AudioNode Lifetime]]. > Making GC timing observable is a big, big problem. I hope you escalate this aggressively with the Chrome team. Rob -- Su ot deraeppa sah dna Rehtaf eht htiw saw hcihw, efil lanrete eht uoy ot mialcorp ew dna, ti ot yfitset dna ti nees evah ew; deraeppa efil eht. Efil fo Drow eht gninrecnoc mialcorp ew siht - dehcuot evah sdnah ruo dna ta dekool evah ew hcihw, seye ruo htiw nees evah ew hcihw, draeh evah ew hcihw, gninnigeb eht morf saw hcihw taht. _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform