-
Notifications
You must be signed in to change notification settings - Fork 11
Is defining fetch() in AudioWorkletGlobalScope an implementer choice? #73
Comments
AFAIK
|
Exposing, defining E.g., Tasklets https://github.com/GoogleChromeLabs/tasklets
task-worklet https://github.com/developit/task-worklet (https://jsfiddle.net/developit/wfLsxgy0/); See https://bugs.chromium.org/p/chromium/issues/detail?id=910471#c8
The Module script (Worklet) must be fetched. Why should the Module script not have the capability to perform fetches? How is audio data expected to be provided to Within the Is there any compelling reason for Re
|
One practical reason to define |
It is intentional to not have it, WebAudio/web-audio-api#1439 is the first thing that pops up in my search engine when typing IO of any kind (including network IO) have no place on the real-time thread that services the Data is provided to an There is ample documentation about how to do real-time audio processing in native, and |
Chromium does not appear to be able to handle thousands of |
No you can't do In general is always possible to do bad things when writing code. If you wish to transfer 100MB of data into the browser, do a single |
Have not tried, yet. Should be possible using Native Messaging and Native File System at Chromium, even without trying to use
"bad" is a subjective term, without any universally applicable definition or implementation equal for and to all in observable result for all parties.
That takes time. If can begin playback with enough data to complete 1 second of |
Then use a ring buffer, this is widely documented in the literature. |
@padenot Already got the code "working" (save for Linux/PulsAudio issue) by transferring the The result essentially nullifies the argument that This issue is merely providing proof that not defining
Yes, read about that technical term. Am not certain the code wrote from scratch to achieve the requirement of processing an infinite input stream at
could be termed as such by those that classify code this or that or otherwsie coin and pass along coding lingo, though achieves 128 length |
Ironically, am doing that to an appreciable degree by doing a single Why sould we need to create an entirely separate context, for example, a |
I think the guiding principle for Anything else was really beyond the scope of what I think if you want your worklet to process huge amounts of audio, you should use |
Was there never a consideration for an infinite stream as a use case for For example, using Were the original concept, and yet still, only adjusting audio signals of, for example, 10 or 30 seconds, data that That is, are individuals outside of a given working group or other entity expected to stop conceiving of use cases for a given theory or prototype simply because the original technical writers limited their scope, and maintain such limitations even after releasing their creation to the wild, as a document? The use case is beginning playback as soon as possible, of a potentially infinite input stream from various sources, with
In fact, Am only relaying that defining Part of the use case is to not necessarily rely on any single main thread, rather a radio station provided content from users by various means, which is placed in a queue. One or more Again, this was only to relay that using a Since there appears to be some objection to defining Am not sure if implementing For clarity, the concerns about |
Revisted using The file for the use case is 291 MB and can take up to 18 minutes to complete the network request, therefore waiting for the request to complete is not feasible where the requirement is beginning playback as soon as is programmatically possible. It is possible to begin playback with less than 512 bytes, while queuing the additional bytes processed to be set at With When cache is disabled and single At Nightly 77 had to adjust the number of 2 channel 128 Both the multiple When At Chromium, 82, 83, disabling cache affects playback. When cache is disabled, or the first time the data is process when cache is not disabled, gaps and glitches in playback can occur more frequently than not. Will continue to try approaches to achieve consistent playback of a potenitally infinite input stream at |
Nightly 77 crashes the browser when cache is disabled using the same code without cache disabled does not crash the browser. |
Finally composed code which writes data from the One issue with using the same code at Chromium and Nightly is Nightly does not expose |
FWIW 500K |
Describe the issue
Is defining fetch() in AudioWorkletGlobalScope an implementer choice?
Where Is It
AFAICT not addressed.
Additional Information
fetch
is not defined inAudioWorkletGlobalScope
at Chromium. Why?Is defining
fetch
withinAudioWorkletGlobalScope
at Firefox, Nightly within the parameters of the specification, or isfetch
intentionally omitted from being defined inAudioWorkletGlobalScope
?The text was updated successfully, but these errors were encountered: