IRC log of audio on 2013-11-21

Timestamps are in UTC.

16:34:15 [RRSAgent]
RRSAgent has joined #audio
16:34:15 [RRSAgent]
logging to
16:34:18 [olivier]
Meeting: W3C Audio WG Teleconference
16:34:32 [olivier]
16:34:36 [olivier]
Chair: olivier
16:34:44 [olivier]
Agenda+ TPAC MIDI session report
16:35:09 [olivier]
Agenda+ Webaudio data races followup
16:37:31 [olivier]
Agenda+ Dezippering
16:37:39 [olivier]
Agenda+ Web Array Math API CG
16:37:49 [olivier]
Agenda+ MediaElementAudioSource test
16:39:01 [olivier]
Agenda+ Review of action items
16:52:17 [chrislowis]
chrislowis has joined #audio
16:53:38 [Zakim]
RWC_Audio()12:00PM has now started
16:53:44 [Zakim]
+ +1.650.214.aaaa
16:53:50 [cwilso]
zakim, .aaaa is me
16:53:50 [Zakim]
sorry, cwilso, I do not recognize a party named '.aaaa'
16:53:58 [cwilso]
zakim, +1.650 is me
16:53:58 [Zakim]
+cwilso; got it
16:56:25 [kawai_]
kawai_ has joined #audio
16:58:15 [Zakim]
16:58:19 [Zakim]
16:58:20 [Zakim]
16:58:22 [chrislowis]
Zakim, IPcaller is me
16:58:22 [Zakim]
+chrislowis; got it
16:58:32 [Zakim]
16:59:27 [Zakim]
16:59:50 [chrislowis]
olivier: where were you? There's a real party going on here!
17:00:33 [Zakim]
17:00:51 [gmandyam]
gmandyam has joined #audio
17:01:00 [olivier]
zakim, IPcaller.a is me
17:01:00 [Zakim]
+olivier; got it
17:01:02 [Zakim]
17:01:35 [Zakim]
17:01:44 [jernoble_]
zakim, ??P20 is me
17:01:44 [Zakim]
+jernoble_; got it
17:01:50 [olivier]
17:02:28 [kawai_]
I am on now.
17:02:43 [olivier]
zakim, take up agendum 6
17:02:44 [Zakim]
agendum 6. "Review of action items" taken up [from olivier]
17:02:45 [olivier]
17:02:53 [chrislowis]
scribenick: chrislowis
17:03:13 [chrislowis]
olivier: Action 80 was on cwilso, to remove the example applications
17:03:20 [chrislowis]
cwilso: I have not done that yet
17:03:25 [chrislowis]
olivier: need another couple of weeks?
17:03:27 [olivier]
action-80 due in 2 weeks
17:03:27 [trackbot]
Set action-80 Remove webaudio section on example applications, photos from section on convolution, and salvage anything valuable due date to 2013-12-05.
17:03:30 [chrislowis]
cwilso: yes please.
17:04:05 [chrislowis]
olivier: Action 83 was on shepazu to start a space for documentation.
17:04:11 [chrislowis]
olivier: any progress?
17:04:16 [olivier]
action-83 due in 2 weeks
17:04:16 [trackbot]
Set action-83 Get started with a space on wpd to survey docs on good practice for webaudio due date to 2013-12-05.
17:04:18 [chrislowis]
shepazu: no, but I'm starting it today.
17:04:24 [rtoyg_]
rtoyg_ has joined #audio
17:04:44 [chrislowis]
olivier: Matt Paradis is waiting on that here at the BBC to help out.
17:04:47 [chrislowis]
shepazu: great.
17:04:51 [olivier]
zakim, close agendum 6
17:04:51 [Zakim]
agendum 6, Review of action items, closed
17:04:52 [Zakim]
I see 5 items remaining on the agenda; the next one is
17:04:52 [Zakim]
1. TPAC MIDI session report [from olivier]
17:05:07 [olivier]
zakim, take up agendum 1
17:05:07 [Zakim]
agendum 1. "TPAC MIDI session report" taken up [from olivier]
17:05:09 [olivier]
17:05:29 [chrislowis]
olivier: we have a new participant on the call today.
17:06:08 [chrislowis]
olivier: Ryoya is on the call.
17:06:54 [chrislowis]
olivier: he convened a session on MIDI and the activities, especially in Japan, where there is a growing community of developers playing with the Web MIDI and other APIs.
17:07:10 [chrislowis]
olivier: there's been some interesting hack-a-thons that have yielded interesting results
17:07:23 [Zakim]
+ +1.978.314.aabb
17:07:27 [chrislowis]
olivier: mixing and playing with Web MIDI, Web Audio and, for example, getUserMedia.
17:07:42 [chrislowis]
zakim, aabb is joe
17:07:42 [Zakim]
+joe; got it
17:08:07 [olivier]
17:08:30 [chrislowis]
olivier: Ryoya shared with us (at TPAC in Shenzen) some other ideas, such as this wrapper around the Web MIDI api which allows a higher level access to the API.
17:08:44 [chrislowis]
olivier: cwilso was also at the session remotely.
17:08:46 [kawai_]
I have uploaded slide >
17:09:28 [chrislowis]
olivier: any questions from the group on this?
17:09:50 [chrislowis]
kawai: thank you olivier.
17:09:51 [olivier]
zakim, close agendum 1
17:09:51 [Zakim]
agendum 1, TPAC MIDI session report, closed
17:09:53 [Zakim]
I see 4 items remaining on the agenda; the next one is
17:09:53 [Zakim]
2. Webaudio data races followup [from olivier]
17:10:00 [Zakim]
+ +1.650.214.aacc
17:10:01 [chrislowis]
olivier: and thanks to kawai from joining at a nasty time difference!
17:10:13 [chrislowis]
zakim, aacc is rtoyg
17:10:13 [Zakim]
+rtoyg; got it
17:10:26 [olivier]
zakim, take up agendum 2
17:10:26 [Zakim]
agendum 2. "Webaudio data races followup" taken up [from olivier]
17:10:28 [chrislowis]
17:10:56 [chrislowis]
olivier: we had a discussion at the last meeting about other visible data races.
17:11:13 [chrislowis]
olivier: not the one on audio buffer which has been resolved.
17:11:18 [olivier]
17:11:29 [chrislowis]
olivier: there was an action on cwilso and rtoyg to come up with a proposal.
17:12:15 [joe]
joe has joined #audio
17:12:52 [chrislowis]
cwilso: this was splitting out the issue from #254, rtoyg and I haven't had chance yet to sit down and come up with a proposal for how to deal with this.
17:13:00 [chrislowis]
olivier: do you mind if I assign the issue to you?
17:13:03 [chrislowis]
cwilso: no that's fine.
17:13:33 [olivier]
zakim, close agendum 2
17:13:33 [Zakim]
agendum 2, Webaudio data races followup, closed
17:13:34 [Zakim]
I see 3 items remaining on the agenda; the next one is
17:13:34 [Zakim]
3. Dezippering [from olivier]
17:13:49 [chrislowis]
olivier: I don't think padenot is on the call today, so we won't look into that today.
17:14:00 [olivier]
zakim, take up agendum 3
17:14:00 [Zakim]
agendum 3. "Dezippering" taken up [from olivier]
17:14:08 [chrislowis]
("that" being agendum 2)
17:14:24 [olivier]
17:14:28 [olivier]
17:14:48 [olivier]
17:15:37 [olivier]
chrislowis: wanted to explain and bring up discussion
17:15:49 [olivier]
... then discussion on whether and when to apply it
17:16:06 [olivier]
... it adds a bit of weight to the spec, because it needs to be clearly defined
17:16:20 [olivier]
... question is whether it is worth adding this convenience
17:17:12 [olivier]
olivier: is chrome implementing it for most parameters
17:17:21 [olivier]
chrislowis: yes, from what I could see in code
17:19:01 [joe]
17:19:11 [olivier]
olivier: how about putting dezippering on roadmap for v2?
17:19:20 [olivier]
rtoyg_: would prefer to keep it because already in chrome
17:19:29 [olivier]
ack joe
17:19:32 [chrislowis]
olivier: we have joe
17:19:45 [chrislowis]
joe: I want to understand what it means to move it to v2?
17:20:13 [chrislowis]
joe: remove it from the implementations? Or leave it vague in the spec and clarify in v2.
17:20:33 [chrislowis]
17:20:35 [cwilso]
17:20:52 [olivier]
ack chrislowis
17:21:41 [joe]
17:22:24 [chrislowis]
olivier: we are looking into the possibility of having mathematical oscillators
17:22:27 [chrislowis]
olivier: does that help?
17:22:45 [chrislowis]
chrislowis: no, I think that's more to do with avoiding aliasing at high freuencies
17:22:49 [olivier]
17:22:53 [olivier]
ack cwilso
17:23:18 [chrislowis]
cwilso: with respect to dezippering, the goal was to reduce audible artifacts
17:23:25 [chrislowis]
cwilso: to make it sound good by default
17:23:44 [chrislowis]
cwilso: and the only place where there are some slight issues are with the frequency of oscillaotrs
17:23:54 [chrislowis]
cwilso: and it would probably happen with playback rate.
17:24:36 [chrislowis]
cwilso: the sub-question of should we define it differently for different things?
17:24:51 [chrislowis]
cwilso: we should go through and see if we can minimise the places where it could cause issues
17:25:01 [chrislowis]
cwilso: and we need to be upfront about where it happens.
17:25:19 [chrislowis]
olivier: and this is about the behaviour of setting the 'dot' value does.
17:25:37 [olivier]
17:25:41 [olivier]
ack joe
17:25:43 [chrislowis]
cwilso: yes, and preferably in terms of the other methods setValueAtTime etc.
17:25:51 [chrislowis]
cwilso: I don't think we need to talk about specific values etc.
17:26:07 [chrislowis]
joe: the dezippering issue isn't just about weight or complexity of the spec.
17:26:35 [chrislowis]
joe: it's also a philosophical question about whether the API should apply a "spin" on what the developer is asking of it.
17:27:15 [chrislowis]
joe: I think there's a level of discomfort about the API providing an "interpretation" of a raw value change, instead of setting something directly.
17:27:42 [olivier]
ack me
17:28:01 [chrislowis]
joe: having said that, it's really hard to achieve effects using the setter anyway, as there's no way to schedule things - for rapid gain changes for example you'd need to use the setTargetAtTime type methods with timing data.
17:28:33 [chrislowis]
olivier: I think one part of the issue is about defining the exact behaviour of smoothing, since it is already in implementations.
17:28:54 [chrislowis]
olivier: the second part is whether the implementations should apply that value or not.
17:29:13 [chrislowis]
olivier: it is, as Joe explained, somewhat of a philosophical issue as well as a technical one.
17:29:56 [chrislowis]
cwilso: I think the former issue, defining the exact behaviour, is trivial in comparison to deciding whether implementations should do this or not.
17:30:39 [Zakim]
17:30:57 [chrislowis]
17:31:02 [olivier]
ack chrislowis
17:32:10 [Zakim]
17:32:25 [Zakim]
17:33:00 [chrislowis]
chrislowis: for what it's worth I think keeping the setter having the smoothing and applying it across the board, defined in terms of exponentialValueAtTime or something is a nice compromise.
17:33:45 [Zakim]
17:34:40 [cwilso]
zakim, ??P2 is jernoble
17:34:40 [Zakim]
+jernoble; got it
17:35:45 [chrislowis]
cwilso: whatever we decide, no one is prevented from doing certain things as we have a few different ways of achieving things.
17:36:01 [chrislowis]
cwilso: I think we do get questions today about the unexpected behaviour
17:36:31 [chrislowis]
olivier: I'm hearing that noone is really against the status quo that has been set by the current implementation.
17:36:52 [chrislowis]
cwilso: I wouldn't object to that as long as we are detailing it in the spec.
17:36:59 [chrislowis]
cwilso: I'd like to hear some input from mozilla.
17:37:39 [chrislowis]
olivier: chrislowis can you summarise for the list?
17:37:49 [chrislowis]
chrislowis: yes.
17:37:51 [olivier]
ACTION: chrislowis to followup on ml about dezippering, summarize discussion and rough consensus
17:37:51 [trackbot]
Created ACTION-84 - Followup on ml about dezippering, summarize discussion and rough consensus [on Chris Lowis - due 2013-11-28].
17:38:17 [olivier]
ACTION: olivier to issue CFC on dezippering around current Chrome/Blink behaviour
17:38:17 [trackbot]
Created ACTION-85 - Issue cfc on dezippering around current chrome/blink behaviour [on Olivier Thereaux - due 2013-11-28].
17:38:30 [olivier]
zakim, close agendum 3
17:38:30 [Zakim]
agendum 3, Dezippering, closed
17:38:31 [Zakim]
I see 2 items remaining on the agenda; the next one is
17:38:31 [Zakim]
4. Web Array Math API CG [from olivier]
17:38:35 [olivier]
17:38:45 [olivier]
zakim, take up agendum 4
17:38:45 [Zakim]
agendum 4. "Web Array Math API CG" taken up [from olivier]
17:39:54 [chrislowis]
olivier: at TPAC last week, I had discussions with a few people including Lars Erik at Opera
17:40:07 [chrislowis]
olivier: about the math API that Marcus had proposed.
17:40:23 [chrislowis]
olivier: and that we could develop this within a community group
17:40:25 [olivier]
17:40:47 [gmandyam]
17:41:06 [olivier]
ack gmandyam
17:41:15 [chrislowis]
olivier: so this would become some kind of DSP api has been previous discussed.
17:41:16 [jernoble_]
jernoble_ has joined #audio
17:42:21 [chrislowis]
gmandyam: how do APIs such as this work when they are defined in terms of external hardware? Are they discussed in terms of specific hardware, or is it more like the Web Audio API where we fall back to a "software solution" when hardware support isn't there?
17:42:29 [chrislowis]
olivier: I guess it would be something like the latter.
17:43:33 [chrislowis]
gmandyam: when the DSP API came out, I did get some evaluation from my parent company (Qualcomm), and they didn't think it was a very good match for the kind of thing we offer. Just a point that there is good intentions behind these APIs, but that it isn't always possible to implement.
17:44:57 [olivier]
zakim, close agendum 4
17:44:57 [Zakim]
agendum 4, Web Array Math API CG, closed
17:44:58 [Zakim]
I see 1 item remaining on the agenda:
17:44:58 [Zakim]
5. MediaElementAudioSource test [from olivier]
17:45:29 [olivier]
zakim, take up agendum 5
17:45:29 [Zakim]
agendum 5. "MediaElementAudioSource test" taken up [from olivier]
17:45:45 [olivier]
17:46:05 [olivier]
chrislowis: contribution to webplatform tests in our directory
17:46:15 [olivier]
... amitay is trying to use MediaElementAudioSource
17:46:29 [olivier]
... not sure how to use with OfflineAudioContext
17:46:40 [olivier]
... require review of the test
17:47:01 [olivier]
... also wanted a discussion about how to tighten the spec
17:47:13 [cwilso]
q+ to suggest MEAS and MSAS) should be disabled in offline.
17:47:22 [olivier]
ack chrislowis
17:47:26 [olivier]
ack cwilso
17:47:26 [Zakim]
cwilso, you wanted to suggest MEAS and MSAS) should be disabled in offline.
17:47:59 [olivier]
cwilso: not sure how you would reconcile mediaElement/mediastreamAudioSource in offline context
17:48:03 [olivier]
... they tend to be real time
17:48:08 [olivier]
... so should just not be there
17:48:19 [olivier]
chrislowis: perhaps something to raise an issue about
17:48:39 [olivier]
... or a pull request on which nodes are available in offlineaudiocontext
17:49:06 [olivier]
olivier: should we keep it as negative test
17:49:27 [olivier]
chrislowis: keep it for audiocontext, and add a negative one for offline audiocontext
17:50:52 [olivier]
RESOLUTION: MediaElementAudioSource and MediaStreamAudioSource should not be present in OfflineAudioContext
17:51:20 [olivier]
ACTION: document the case of MediaElementAudioSource and MediaStreamAudioSource nodes in offlineaudiocontext on github
17:51:20 [trackbot]
Error finding 'document'. You can review and register nicknames at <>.
17:51:34 [olivier]
ACTION: chrislowis to document the case of MediaElementAudioSource and MediaStreamAudioSource nodes in offlineaudiocontext on github
17:51:34 [trackbot]
Created ACTION-86 - Document the case of mediaelementaudiosource and mediastreamaudiosource nodes in offlineaudiocontext on github [on Chris Lowis - due 2013-11-28].
17:51:45 [olivier]
zakim, close agendum 5
17:51:45 [Zakim]
agendum 5, MediaElementAudioSource test, closed
17:51:46 [Zakim]
I see nothing remaining on the agenda
17:52:03 [chrislowis]
olivier: AOB?
17:52:52 [olivier]
Topic: next meetings
17:53:56 [chrislowis]
olivier: on the 5th and the 19th December.
17:54:22 [chrislowis]
olivier: I'm not hearing a lot of regrets for those dates, so we'll go with those tentativly.
17:54:49 [chrislowis]
olivier: before we close, following the discussion at the last teleconference we are going to publish a new draft of the Web MIDI api, probably next week.
17:55:22 [Zakim]
17:55:24 [Zakim]
17:55:28 [Zakim]
17:55:29 [chrislowis]
olivier: thank you all.
17:55:32 [Zakim]
17:55:33 [Zakim]
17:55:33 [Zakim]
17:55:34 [Zakim]
17:55:35 [Zakim]
17:55:35 [olivier]
rrsagent, draft minutes
17:55:35 [RRSAgent]
I have made the request to generate olivier
17:55:41 [Zakim]
17:55:42 [Zakim]
RWC_Audio()12:00PM has ended
17:55:42 [Zakim]
Attendees were +1.650.214.aaaa, cwilso, chrislowis, Doug_Schepers, [IPcaller], olivier, gmandyam, jernoble_, +1.978.314.aabb, joe, +1.650.214.aacc, rtoyg, jernoble
17:56:00 [chrislowis]
rrsagent, make minutes public
17:56:00 [RRSAgent]
I'm logging. I don't understand 'make minutes public', chrislowis. Try /msg RRSAgent help
17:56:05 [chrislowis]
olivier: no problem!
17:56:08 [olivier]
zakim, make logs public
17:56:08 [Zakim]
I don't understand 'make logs public', olivier
17:56:14 [chrislowis]
17:56:17 [olivier]
rrsagent, make logs public
17:56:20 [chrislowis]
17:56:24 [olivier]
rrsagent, draft minutes
17:56:24 [RRSAgent]
I have made the request to generate olivier
20:34:53 [Zakim]
Zakim has left #audio
21:14:28 [padenot]
cwilso, rtoyg: hi, is there something specific that is done in Web Audio in webkit/blink when the process is using too much CPU?
21:20:06 [cwilso]
Hmm, rtoyg would have to answer. Not that I know of.
21:29:49 [padenot]
that's what we found, trying to overload an instance of chrome, but I figured it'd be better to ask
21:37:26 [kawai]
kawai has joined #audio
22:02:20 [rtoyg]
padenot: AFAIK, nothing is done. You can consume up to 3-4 threads at most, though. Per tab. I think.
22:08:40 [padenot]
22:09:06 [padenot]
the main problem we have is that FirefoxOS devices are terrible
22:09:47 [padenot]
one super old core with super low frequency and terrible floating point performances
23:06:15 [rtoyg]
We have the same problem on older devices. Webaudio works best if you have NEON and 2 cores at > 1.2 GHz or so.
23:06:33 [rtoyg]
And I might be wrong about 3-4 threads. It might be 3-4 threads per convolver node.