15:33:08 RRSAgent has joined #audio 15:33:08 logging to http://www.w3.org/2013/09/05-audio-irc 15:33:09 RRSAgent, make logs world 15:33:10 Zakim has joined #audio 15:33:11 Zakim, this will be 28346 15:33:12 ok, trackbot; I see RWC_Audio()12:00PM scheduled to start in 27 minutes 15:33:12 Meeting: Audio Working Group Teleconference 15:33:13 Date: 05 September 2013 15:33:29 Agenda: http://lists.w3.org/Archives/Public/public-audio/2013JulSep/0673.html 15:34:04 Agenda+ CfC - Audio Buffer Data Races -> http://lists.w3.org/Archives/Public/public-audio/2013JulSep/0635.html 15:34:37 Agenda+ review of recent draft changes 15:56:35 ScribeNick: chrislowis 15:58:21 RWC_Audio()12:00PM has now started 15:58:28 + +1.206.395.aaaa 15:58:35 zakim, aaaa is me 15:58:35 +cwilso; got it 15:58:52 We (chris and olivier) are struggling to get on the call. 15:59:45 that explains why I'm all by myself. :) 16:00:29 ehsan has joined #audio 16:00:51 +[Mozilla] 16:01:18 zakim, Mozilla has ehsan 16:01:18 +ehsan; got it 16:01:58 +[IPcaller] 16:02:00 I'm coming, I have to find a room 16:02:03 zakim, IPcaller is me 16:02:03 +olivier; got it 16:02:10 zakim, olivier also has chrislowis 16:02:10 +chrislowis; got it 16:02:15 Chair: olivier 16:02:18 Scribe: chrislowis 16:02:23 ScribeNick: chrislowis 16:02:41 gmandyam has joined #audio 16:03:23 zakim, who is here? 16:03:24 On the phone I see cwilso, [Mozilla], olivier 16:03:25 olivier has olivier, chrislowis 16:03:25 [Mozilla] has ehsan 16:03:25 On IRC I see gmandyam, ehsan, Zakim, RRSAgent, colinbdclark, tobie, marcosc, cwilso, paul___irish, shepazu, olivier, trackbot, heath, mdjp, rtoyg, chrislowis, toyoshiAw, padenot 16:03:32 + +1.858.750.aabb 16:03:42 Zakim, aabb is gmandyam 16:03:42 +gmandyam; got it 16:04:52 +jernoble 16:04:58 +padenot 16:05:12 zakim, agenda? 16:05:12 I see 2 items remaining on the agenda: 16:05:13 1. CfC - Audio Buffer Data Races -> http://lists.w3.org/Archives/Public/public-audio/2013JulSep/0635.html [from olivier] 16:05:13 2. review of recent draft changes [from olivier] 16:05:25 olivier: let's get started. 16:05:47 zakim, take up agendum 1 16:05:47 agendum 1. "CfC - Audio Buffer Data Races -> http://lists.w3.org/Archives/Public/public-audio/2013JulSep/0635.html" taken up [from olivier] 16:06:08 olivier: first item on the agenda is the call for consensus (CfC) on the "data races" issue. 16:06:35 olivier: I sent an email asking for group members if they object to what we've been calling "roc's proposal" 16:07:02 olivier: noting that we know there are similiar, related issues, but that this refers to the audio buffer issue only. 16:07:20 I thought Jer objected? 16:07:36 olivier: there were some issues raised about the syntax and naming of methods, but I haven't seen any objections. 16:08:27 jernoble: you asked previously what would need to be changed in order for us to live with it. 16:09:11 jernoble: one thing I'd ask - roc added a method to pull the data out without triggering the neutering, I'd like to request that a method is added for the reverse - for putting data in. 16:09:39 jernoble: let me clarify, that is something that we'd like to see added before we can say that we "could live" with it. 16:10:01 q+ to ask on #1 - shouldn't we just rename "getAudioChannelData" to something that doesn't use the word "get" then? 16:10:07 jernoble: also, I don't feel at the moment that there necessarily is consensus yet. I didn't see any discussion of my proposal for example. 16:10:31 q+ 16:10:35 q+ 16:10:48 ack cw 16:10:48 cwilso, you wanted to ask on #1 - shouldn't we just rename "getAudioChannelData" to something that doesn't use the word "get" then? 16:10:52 olivier: I guess it was my hunch that there was a consensus growing around rocs proposal, but I'm happy to ask whether there's consensus around alternative proposals. 16:11:44 cwilso: I think the disagreements I have with Jer's original proposal is that it puts more weight on putting data in and getting data out of the system. I guess it's a disagreement over how much we expect the developer to know about data crossing the boundaries. 16:12:11 cwilso: if what we're worried about is the use of the word "get" in the method names, maybe we could change it to "access" or something? 16:12:39 jernoble: there would be a lot of people who object to renaming that function as it would break a lot of websites. 16:13:02 jernoble: a function exists for pulling data out, but there's not one for putting data in. 16:13:17 cwilso: are you asking to be able to push data over to the audio copy of that in that case? 16:14:04 jernoble: exactly. I think the most common case is to get a copy of the data in order to perform an operation on it. If there was a method to push data in too, I think that would be useful. 16:14:24 jernoble: and it's ok to add it, as it's not going to break existing websites 16:14:32 ack gm 16:14:32 cwilso: ok, I think I understand. 16:15:04 gmandyam: a question to jernoble: is apple planning to make a contribution to webkit or blink for the proposed approach? 16:15:22 gmandyam: are you going to try and upstream an implementation? 16:15:52 jernoble: yes, sure. I don't think apple would do that for blink, we'd probably leave that to google now there's two code bases. But yes, we'd implement it. 16:15:57 gmandyam: thanks 16:15:59 ack ehsan 16:16:01 jernoble: no problem. 16:16:50 ehsan: about jer's proposal, I think it's a better API, but it breaks existing content. And I think in this case, that would be significant enough that a lot of existing apps will not work in the implementations. 16:17:15 ehsan: padenot had a look at existing code out there and found 1 example that would break with roc's proposal. 16:17:46 ehsan: and a question for cwilso: what's google position about updating their implementation to match what we come up with? 16:18:36 ehsan: I want to make sure that when we're asking for consensus we're assuming that everyone will actually implement it. To reword: do you think there will be any objections to implementing this in blink? 16:19:59 cwilso: I'm not sure yet what "this" means here, as we're still only part way through deciding this. But I think I've already stated that although I don't necessarily agree that "fixing" these races is the right thing to do, but if we agree as a group that it's important, then we're committed to having an interoperable api. 16:20:22 cwilso: I can't commit to timescales at the moment. 16:20:33 ehsan: that's great, and what I wanted to hear - thank you. 16:21:19 I'd note that we've talked about so many extensions to each proposal that I'm not sure what each proposal consists of anymore. 16:21:35 q+ 16:21:39 q+ 16:21:52 ack ehsan 16:22:01 olivier: so I'm hearing no objections about either Roc's or jer's proposal although there are concerns. So I'm going to suggest that we look at both, as a straw poll, and see if we can prefer or if we can live with the proposal. 16:22:20 ehsan: we'd prefer Roc's proposal. 16:22:43 ack cwilso 16:22:46 jernoble: we can live with Roc's 16:23:24 cwilso: I'd prefer Roc's proposal. My goal is to have the best backwards compat, and the smallest surface area of the api. 16:23:51 cwilso: and at the moment, I'm not sure what we'll graft on to Roc's proposal to allow for access to the data. 16:24:04 cwilso: I'd like to discuss the details of how copyChannelData works. 16:24:16 Agenda+ discuss the details of how copyChannelData works 16:24:45 ehsan: discuss here or on the list? 16:24:49 cwilso: I'd prefer the list. 16:25:31 jernoble: i'd prefer to do nothing, but I can live with Roc's proposal. 16:25:46 I'd note that if doing nothing is still on the table, I would prefer that too. 16:26:12 olivier: I'd like to ask, is the main reason you prefer the proposal is for the backwards-compat reasons for it. 16:26:30 cwilso: just to clarify that was ehsan's comment 16:26:35 ehsan: yes that's right. 16:27:11 q+ 16:27:20 olivier: I'd like us to spend a little bit of time thinking about the relative risk and reward of going for the quote- "better api" rather than going for backward compat. 16:28:05 olivier: we've talked about backwards compatibility being important in the past, but we've also spoken about education and outreach as a way moving forwards. 16:28:07 ack ehsan 16:28:48 ehsan: from my stand point, I think if we were designing web audio today from scratch, and there was no existing code out there, we'd probably do some things differently. 16:29:20 ehsan: I think writing a web audio application today without audiobuffers is quite difficult, 16:29:54 ehsan: so that's my main reason for not preferring jer's proposal - it will break a lot of content. 16:30:26 ehsan: I'm not convinced that the goal of the current discussion, which is avoiding data races, requires us to make breaking changes. 16:30:52 q+ 16:31:36 jernoble: the reason my proposal suggested a breaking change is that I understood from Roc and others the data race issue was such a big issue that a breaking change was justified. And that the api may have been designed that way because the author didn't consider the data race issue to be significant. 16:31:57 ack ehsan 16:32:09 jernoble: so would we consider a future API that would be incompatible with today's api that had some extra features? 16:33:16 ehsan: speaking for myself, I would probably change quite a few things in the existing API - 16:34:53 q+ 16:35:05 ehsan: I think I'd probably have an AudioContext that is responsible for creating everything that an author is likely to use. Which would require a significant amount of thinking. 16:35:35 ack cwilso 16:35:49 ehsan: it's difficult for me to make decisions today in light on what changes we might bring in in the future. 16:37:46 cwilso: I think backwards compatibility is important enough to not make a breaking change. But the API today is designed such that the developer doesn't need to have deep knowledge of audio in order to take advantage of a glitch-free, low-latency audio thread. And I think I'd keep that design in any future too. It's not just about backwards compatibility in other words, I'd still go in that direction in the future given the choice. 16:39:13 s/deep knowledge of audio/deep understanding of threading/memory sharing 16:39:58 cwilso: I always try to keep a 5- to 10- year time frame in mind too, and I think if we really believe there will be another API that we will be pushing in the future we should start to work towards that now. 16:40:15 RESOLUTION: there is consensus around ROC's proposal. The editors will work on adding it to the spec and the group will refine it wherever there are still concerns 16:41:13 olivier: well done to everyone for reaching that fairly hefty resolution. 16:42:13 zakim, close agendum 1 16:42:13 agendum 1, CfC - Audio Buffer Data Races -> http://lists.w3.org/Archives/Public/public-audio/2013JulSep/0635.html, closed 16:42:15 I see 2 items remaining on the agenda; the next one is 16:42:15 2. review of recent draft changes [from olivier] 16:42:18 zakim, take up agendum 2 16:42:18 agendum 2. "review of recent draft changes" taken up [from olivier] 16:42:22 olivier: I'd like to take a look at changes that have been made since the last call and review those next. 16:42:24 https://dvcs.w3.org/hg/audio/ 16:43:13 olivier: padenot can you walk us through the recent changes? 16:43:16 padenot: sure. 16:43:38 padenot: I removed the old names section (https://dvcs.w3.org/hg/audio/rev/396c4054ef67) 16:43:59 olivier: I can't find a corresponding bug. 16:44:05 olivier: if I do I'd close it. 16:44:17 https://dvcs.w3.org/hg/audio/rev/c356109a4006 16:44:20 (markup change) 16:44:30 https://www.w3.org/Bugs/Public/show_bug.cgi?id=22287 16:44:47 padenot: this is the change for #22287 (https://dvcs.w3.org/hg/audio/rev/d5abda1da9fc) 16:45:16 olivier: any objections to this change? 16:45:23 olivier: hearing none, closing the bug. 16:45:33 https://dvcs.w3.org/hg/audio/rev/fbf524d2cc9b 16:45:38 padenot: next patch ^^ 16:46:35 padenot: it was designed to make it clear how the DelayNode works, making reference to how things work in existing music software (output(t) = input(t - delayTime(t))) 16:46:45 https://dvcs.w3.org/hg/audio/rev/92183159c02b 16:46:49 olivier: then closing that if I hear no objections? ... 16:46:51 olivier: closed. 16:47:25 https://www.w3.org/Bugs/Public/show_bug.cgi?id=21777 16:48:22 padenot: This one is about generating audio or analysing audio with the script processor node, and that we should allow this node to have zero inputs, or zero outputs in the generating and analysing cases respectively. 16:48:32 olivier: then closing 2177. 16:49:22 olivier: A quick question about the next teleconference time. Would you prefer next week, or in two weeks? 16:49:29 Topic: Next teleconference 16:49:36 ehsan: I can't attend next week, but that shouldn't stop you. 16:50:00 chrislowis: I'd prefer not the 19th, but don't let that stop you. 16:50:25 olivier: I can not do the 26th. 16:51:04 zakim, close agendum 2 16:51:04 agendum 2, review of recent draft changes, closed 16:51:05 I see 1 item remaining on the agenda: 16:51:05 3. discuss the details of how copyChannelData works [from olivier] 16:51:10 olivier: the tentative decision then is that we meet in two weeks, the 19th September at the same time. 16:51:25 wfm 16:51:33 olivier: I think we'll discuss copyChannelData on the list. So let's adjurn for today. 16:51:56 olivier: thanks everybody for a good meeting. We'll post minutes as usual and talk to you on the 19th, same time. 16:52:03 -jernoble 16:52:04 -gmandyam 16:52:06 -olivier 16:52:09 -cwilso 16:53:29 RRSAgent, generate minutes 16:53:29 I have made the request to generate http://www.w3.org/2013/09/05-audio-minutes.html chrislowis 16:53:47 Zakim, bye 16:53:47 leaving. As of this point the attendees were +1.206.395.aaaa, cwilso, ehsan, olivier, chrislowis, +1.858.750.aabb, gmandyam, jernoble, padenot 16:53:47 Zakim has left #audio 16:53:54 RRSAgent, bye 16:53:54 I see no action items