- From: Olli Pettay <Olli.Pettay@helsinki.fi>
- Date: Fri, 24 Aug 2012 08:27:27 -0700
- To: Jussi Kalliokoski <jussi.kalliokoski@gmail.com>
- Cc: whatwg@whatwg.org
(This all should go to WebApps WG) In Gecko there is support for moz-chunked-arraybuffer response type. On 08/24/2012 03:23 AM, Jussi Kalliokoski wrote: > Hello, > > I've got a little proposal to solve a problem we're facing with one of our > codebases ( aurora.js [1], i.e. audio codecs in JavaScript ). > > We need to stream the audio files (you don't want to store a 2 hour long > live stream in the memory or wait until a whole file is loaded before > playing). Currently we're using partial requests to fetch the data, but > it's very expensive both in terms of CPU (currently the streaming takes > more CPU than the actual decoding, I suspect this is a sum of garbage > collection and other factors) and network. > > My proposal is that we add a feature for streaming to XHRs that are of the > arraybuffer response type. > > My first idea was that if you set a property called "chunkSize" on the XHR, > it would start dispatching an event called "onchunk" whenever a chunk of > that size has been loaded. That event would contain a property "chunk" that > would be an array buffer containing that data. However, I'm having second > thoughts on that approach as it is likely to produce a lot of garbage. > > Instead, my refined idea is that you'd set a "chunk" property on the XHR to > an ArrayBuffer, and each time a chunk of the size of the "chunk" was ready, > it would set the values of the "chunk" property accordingly and the > "onchunk" event would be dispatched. > > Thoughts? > > Cheers, > Jussi > > [1] https://github.com/ofmlabs/aurora.js >
Received on Friday, 24 August 2012 15:28:13 UTC