"HTML5 Audio Oscillator 실습"의 두 판 사이의 차이

잔글 (로봇: 자동으로 텍스트 교체 (-http://jmnote.com/js/ +http://zetawiki.com/ex/js/))
1번째 줄: 1번째 줄:
==개요==
;HTML5 Audio Oscillator 실습
;HTML5 Audio Oscillator 실습


==예시==
 
*예제: http://zetawiki.com/ex/js/oscillator.php
<source lang='php'>
<source lang='php'>
<?php
<style>
$buttons = array(
button { width: 100px; height: 50px; }
array('label'=>'C', 'hz'=>'262'),
</style>
array('label'=>'D', 'hz'=>'294'),
 
array('label'=>'E', 'hz'=>'330'),
<button onclick='play_oscillator(262)'>C ( 262 Hz )</button>
array('label'=>'F', 'hz'=>'349'),
<button onclick='play_oscillator(294)'>D ( 294 Hz )</button>
array('label'=>'G', 'hz'=>'392'),
<button onclick='play_oscillator(330)'>E ( 330 Hz )</button>
array('label'=>'A', 'hz'=>'440'),
<button onclick='play_oscillator(349)'>F ( 349 Hz )</button>
array('label'=>'B', 'hz'=>'494'),
<button onclick='play_oscillator(392)'>G ( 392 Hz )</button>
array('label'=>'C', 'hz'=>'523'),
<button onclick='play_oscillator(440)'>A ( 440 Hz )</button>
);
<button onclick='play_oscillator(494)'>B ( 494 Hz )</button>
foreach($buttons as $button) {
<button onclick='play_oscillator(523)'>C ( 523 Hz )</button>
echo "<button onclick='play_oscillator(${button['hz']})'>${button['label']}</button>";
 
}
?>
<script>
<script>
try {
  try {
window.AudioContext = window.AudioContext || window.webkitAudioContext;
    window.AudioContext = window.AudioContext || window.webkitAudioContext;
var context = new AudioContext();
    var context = new AudioContext();
}
  } catch (err) {
catch (err) {
    alert('이 브라우저는 Web Audio API를 지원하지 않습니다.');
alert('이 브라우저는 Web Audio API를 지원하지 않습니다.');
  }
}


function play_oscillator(hz, seconds) {
  function play_oscillator(hz, seconds) {
if( seconds == undefined ) seconds = 1;
    if (seconds == undefined) seconds = 1;


var osc = context.createOscillator();
    var osc = context.createOscillator();
osc.type = 'square';
    osc.type = 'square';
osc.frequency.value = parseInt(hz);
    osc.frequency.value = parseInt(hz);
osc.connect( context.destionation );
    osc.connect(context.destionation);
osc.start( context.currentTime + 0 );
    osc.start(context.currentTime + 0);
osc.stop( context.currentTime + seconds );
    osc.stop(context.currentTime + seconds);
}
  }
</script>
</script>
</source>
</source>
<jsfiddle> height='400'>h37reLcj</jsfiddle>


==같이 보기==
==같이 보기==

2017년 3월 30일 (목) 17:20 판

1 개요

HTML5 Audio Oscillator 실습


<style>
button { width: 100px; height: 50px; }
</style>

<button onclick='play_oscillator(262)'>C ( 262 Hz )</button>
<button onclick='play_oscillator(294)'>D ( 294 Hz )</button>
<button onclick='play_oscillator(330)'>E ( 330 Hz )</button>
<button onclick='play_oscillator(349)'>F ( 349 Hz )</button>
<button onclick='play_oscillator(392)'>G ( 392 Hz )</button>
<button onclick='play_oscillator(440)'>A ( 440 Hz )</button>
<button onclick='play_oscillator(494)'>B ( 494 Hz )</button>
<button onclick='play_oscillator(523)'>C ( 523 Hz )</button>

<script>
  try {
    window.AudioContext = window.AudioContext || window.webkitAudioContext;
    var context = new AudioContext();
  } catch (err) {
    alert('이 브라우저는 Web Audio API를 지원하지 않습니다.');
  }

  function play_oscillator(hz, seconds) {
    if (seconds == undefined) seconds = 1;

    var osc = context.createOscillator();
    osc.type = 'square';
    osc.frequency.value = parseInt(hz);
    osc.connect(context.destionation);
    osc.start(context.currentTime + 0);
    osc.stop(context.currentTime + seconds);
  }
</script>

2 같이 보기

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}