Slide 1

Slide 1 text

8FC"VEJPͱԻͷ࿩

Slide 2

Slide 2 text

8FC"VEJPͬͯ ஌ͬͯ·͔͢ʁ

Slide 3

Slide 3 text

8FC"VEJPͱ͸ʁ w 8FC"VEJP"1*͸8$ʹΑͬͯ։ൃ͞Ε͍ͯ Δɺ΢ΣϒΞϓϦέʔγϣϯ༻ͷԻ੠ॲཧͱԻ ੠߹੒ͷͨΊͷߴϨϕϧ+BWB4DSJQU"1* w ओཁͳઃܭύϥμΠϜ͸ɺ"VEJP/PEFΦϒδΣ ΫτΛͭͳ͗ɺԻ੠ϧʔτάϥϑΛ࡞Δܗɻ࣮ ࡍͷॲཧ͸ɺओʹ΢Σϒϒϥ΢β಺ͷ࣮૷Ͱߦ ΘΕΔ͕ɺ+BWB4DSJQUͰ௚઀ॲཧͯ͠߹੒͢Δ ͜ͱ΋Մೳ

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

+BWB4DSJQUͰʂ ϒϥ΢β্Ͱʂ Ի͕ग़ͤΔʂ

Slide 6

Slide 6 text

Ͱ΋୯७ʹ XBWͱ͔NQͱ͔Λ ࠶ੜ͢ΔΘ͚͡Όͳ͍Α

Slide 7

Slide 7 text

ԻΛ߹੒ͨ͠Γͯ͠ ͲΜͳԻͰ΋ग़ͤΔΑ ʢཧ࿦্ʣ

Slide 8

Slide 8 text

·ͣ͸ԻΛग़ͯ͠ΈΑ͏ var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   osc.connect(ctx.destination);   osc.start(0);   osc.stop(ctx.currentTime  +  0.5); IUUQTHJTUHJUIVCDPNLBMJCPSBDGCEBFCB

Slide 9

Slide 9 text

Ͳ͏Ͱ͔͢ʁʂ Ի͕Ͱ·͔ͨ͠ʁ

Slide 10

Slide 10 text

DUY"VEJP$POUFYU ίʔυΛղઆ PTD var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   osc.connect(ctx.destination);   osc.start(0);   osc.stop(ctx.currentTime  +  0.5); EFTUJOBUJPO DPOOFDU TUBSU TUPQ ԻΛग़͢ ૷ஔ εϐʔΧʔ ͷΑ͏ͳ ΋ͷ

Slide 11

Slide 11 text

ͱ͜ΖͰɺԻۭͬͯؾ தΛ఻ΘΔ೾Ͱ͢ΑͶʁ

Slide 12

Slide 12 text

͖ͬ͞ग़ͨ͠Իͬͯ ͲΜͳ೾ͷܗʢ೾ܗʣ Λ͍ͯ͠Δͱࢥ͍·͔͢ʁ

Slide 13

Slide 13 text

͜ΜͳܗΛ͍ͯ͠·͢

Slide 14

Slide 14 text

͜ͷ೾ܗΛ ਖ਼ݭ೾ʢTJOF೾ʣ ͱݴ͍·͢

Slide 15

Slide 15 text

୅දతͳ೾ܗҰཡ TRVBSFʢۣܗ೾ʣ TJOFʢਖ਼ݭ೾ʣ USJBOHMFʢࡾ֯೾ʣ TBXUPPUIʢڒࣃঢ়೾ʣ

Slide 16

Slide 16 text

ͲΕ΋໊લ௨ΓͷܗΛ ͍ͯ͠·͢

Slide 17

Slide 17 text

࣮ࡍʹͦΕͧΕͷ ೾ܗΛ໐Βͯ͠ΈΑ͏

Slide 18

Slide 18 text

var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   var  types  =  ['sine',  'square',  'triangle',   'sawtooth'];   var  typeIdx  =  0;   var  timerId  =  setInterval(function  ()  {          if  (typeIdx  >=  types.length)  {                  clearInterval(timerId);                  return;          }          console.log(types[typeIdx]);          osc.type  =  types[typeIdx];  //  set  waveform  here          if  (typeIdx  ===  0)  {                  osc.start(0);                  osc.stop(ctx.currentTime  +  types.length  *   1);          }          typeIdx++;   },  1000);   osc.connect(ctx.destination); IUUQTHJTUHJUIVCDPNLBMJCPSBCGCDBBEGBBG

Slide 19

Slide 19 text

ؙ͍೾ܗ͸ؙ͍Ի ΪβΪβͷ೾ܗ͸ΪβΪβͨ͠Ի ʹฉ͑͜·ͤΜ͔ʁ

Slide 20

Slide 20 text

ͱ͍͏Θ͚Ͱɺ

Slide 21

Slide 21 text

Ի৭͸೾ͷܗʢ೾ܗʣ Ͱܾ·Γ·͢

Slide 22

Slide 22 text

ͱ͜ΖͰɺ

Slide 23

Slide 23 text

Իͱ͍͏΋ͷͷཁૉ͸ Ի৭͚ͩͰ͸͋Γ·ͤΜ

Slide 24

Slide 24 text

Իͷཁૉ w Ի৭ʢUJNCSF UPOFʣ w େ͖͞ʢMPVEOFTTʣ w ߴ͞ʢQJUDIʣ

Slide 25

Slide 25 text

Ͱ͸େ͖͞ͱߴ͞͸Կ Ͱܾ·ΔͷͰ͠ΐ͏͔ʁ

Slide 26

Slide 26 text

ج४ͱͳΔԻ

Slide 27

Slide 27 text

େ͖͍Ի ৼ෯

Slide 28

Slide 28 text

ߴ͍Ի प೾਺

Slide 29

Slide 29 text

Ͱ͸ɺ प೾਺Λมߋͯ͠ Իͷߴ͞Λมߋͯ͠Έ·͢

Slide 30

Slide 30 text

var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   var  freqs  =  [261.63,  293.67,  329.63,  349.23,  392.00,   440.00,  493.88,  523.23];   var  freqIdx  =  0;   var  timerId  =  setInterval(function  ()  {          if  (freqIdx  >=  freqs.length)  {                  clearInterval(timerId);                  return;          }          console.log(freqs[freqIdx]);          osc.frequency.value  =  freqs[freqIdx];  //  set   frequency          if  (freqIdx  ===  0)  {                  osc.start(0);                  osc.stop(ctx.currentTime  +  freqs.length  *  1);          }          freqIdx++;   },  1000);   osc.connect(ctx.destination);   IUUQTHJTUHJUIVCDPNLBMJCPSBDEGC

Slide 31

Slide 31 text

࣍ʹɺ ৼ෯Λίϯτϩʔϧͯ͠ɺ Իͷେ͖͞Λมߋͯ͠Έ·͢

Slide 32

Slide 32 text

var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   var  gain  =  ctx.createGain();     var  levels  =  [1.0,  0.9,  0.8,  0.7,  0.6,  0.5,  0.4,  0.3,   0.2,  0.1];   var  levelIdx  =  0;   var  timerId  =  setInterval(function  ()  {          if  (levelIdx  >=  levels.length)  {                  clearInterval(timerId);                  return;          }          console.log(levels[levelIdx]);          gain.gain.value  =  levels[levelIdx];  //  set  gain          if  (levelIdx  ===  0)  {                  osc.start(0);                  osc.stop(ctx.currentTime  +  levels.length  *  0.5);          }          levelIdx++;   },  500);   osc.connect(gain);   gain.connect(ctx.destination); IUUQTHJTUHJUIVCDPNLBMJCPSBGCFGGBCB

Slide 33

Slide 33 text

DUY"VEJP$POUFYU ίʔυΛղઆ PTD var  ctx  =  new  AudioContext();   var  osc  =  ctx.createOscillator();   var  gain  =  ctx.createGain();     (snip)          gain.gain.value  =  levels[levelIdx];  //  set  gain   (snip)   osc.connect(gain);   gain.connect(ctx.destination); EFTUJOBUJPO DPOOFDU HBJO DPOOFDU ϘϦϡʔϜ ϑΣʔμʔΈ ͍ͨͳ΋ͷ

Slide 34

Slide 34 text

DUY"VEJP$POUFYU ιʔεϊʔυ " σεςΟωʔ γϣϯϊʔυ ϊʔυ " ϊʔυ # ιʔεϊʔυ # ϊʔυ $ ੨͍࢛֯͸ϊʔυͱ ݺ͹ΕΔ΋ͷͰ ͦΕΒΛෳ਺૊Έ߹Θͤͯ ͍ΖΜͳԻ͕࡞ΕΔΈ͍ͨͰ͢

Slide 35

Slide 35 text

͓͠·͍

Slide 36

Slide 36 text

TJOF೾Λ߹੒͍ͯ͠Ζ Μͳ೾ܗ͕࡞ΕΔ࿩ https://www.google.co.jp/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=sin(x) %2Bsin(2x)*(1%2F2)%2Bsin(3x)*(1%2F3)%2Bsin(4x)*(1%2F4)%2Bsin(5x)*(1%2F5)%2Bsin(6x)*(1%2F6)%2Bsin(7x)*(1%2F7) https://www.google.co.jp/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=sin(x) %2Bsin(3x)*(1%2F3)%2Bsin(5x)*(1%2F5)%2Bsin(7x)*(1%2F7)%2Bsin(9x)*(1%2F9)%2Bsin(11x)*(1%2F11)