W3C home > Mailing lists > Public > public-audio@w3.org > July to September 2013

src.buffer.getChannelData(0)[i] returns a value but src.start(0) returns undefined

From: '2+ <electriclightheads@gmail.com>
Date: Sat, 14 Sep 2013 15:21:04 +0900
To: public-audio@w3.org
Message-ID: <20130914062104.GA4773@buyobuyo>
hi sirs!

am building a simple noise groove looper kind of thing at
http://sarigama.namaste.jp/nipples/padanisa.html
and the sound engine of it is at
http://sarigama.namaste.jp/padanisa.js

it is just 2 scriptprocessor twisting the audiobuffersource coming in from each of their inputs
(at this moment just passing thing as is)
but even after yin_src.start(0) had been triggerd from the ui
no sound
so in order to test
filled the float32array with Math.random - 0.5 but still
no sound
then went to the js terminal of chrome and tested
yin_src.loop
returns True
yin_src.getChannelData(0).[i]
returns a value
but
yin_src.start(0)
becomes undefined
and launching the page and cliking the ui gives no error

any hints?

the core of the system is made of something like this

----8<--------

var oil             = new AudioContext();

var titl_onoff      = 0;
var yin_len         = 44100 * 7;
// var yin_len         = 2048;
var yin_src         = oil.createBufferSource();
yin_src.buffer      = oil.createBuffer(1, yin_len, oil.sampleRate);
yin_src.buffer.getChannelData(0).set(fillgas(yin_len));
yin_src.loopStart   = 0;
yin_src.loopEnd     = yin_len - 1;
yin_src.loop        = 1;

z_thang();

var titr_onoff      = 0;
// var yang_len        = 2048;
var yang_len        = 44100 * 5;
var yang_src        = oil.createBufferSource();
yang_src.buffer     = oil.createBuffer(1, yang_len, oil.sampleRate);
yang_src.buffer.getChannelData(0).set(fillgas(yang_len));
yang_src.loopStart  = 0;
yang_src.loopEnd    = yang_len - 1;
yang_src.loop       = 1;

var buff_len        = 16384
var yin             = oil.createScriptProcessor(buff_len, 1, 1);
yin.onaudioprocess  = YinThang;
yin.connect(oil.destination);
var yang            = oil.createScriptProcessor(buff_len, 1, 1);
yang.onaudioprocess = YangThang;
yang.connect(oil.destination);


----8<--------

thank you ;)

-- 
'2+
http://sarigama.namaste.jp/
Received on Monday, 16 September 2013 14:36:31 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:50:11 UTC