{"id":980,"date":"2026-11-13T14:03:26","date_gmt":"2026-11-13T05:03:26","guid":{"rendered":"https:\/\/guitarschool.in\/?page_id=980"},"modified":"2026-11-14T00:34:52","modified_gmt":"2026-11-13T15:34:52","slug":"tuner","status":"publish","type":"page","link":"https:\/\/guitarschool.in\/?page_id=980","title":{"rendered":"\u30c1\u30e5\u30fc\u30ca\u30fc"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"980\" class=\"elementor elementor-980\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-5bc15ee elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"5bc15ee\" data-element_type=\"section\" data-e-type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-3da09a7\" data-id=\"3da09a7\" data-element_type=\"column\" data-e-type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-5a6e981 elementor-widget elementor-widget-html\" data-id=\"5a6e981\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.lt-nav{max-width:760px;margin:0 auto;padding:4px 16px;font-family:\"Hiragino Sans\",\"Noto Sans JP\",\"Yu Gothic\",sans-serif;font-size:14px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.lt-nav a{color:#b5532a;font-weight:700;text-decoration:none}.lt-nav a:hover{text-decoration:underline}.lt-nav .lt-sub{color:#7a6e64}.lt-nav .lt-back{display:inline-block;padding:6px 14px;border:1px solid #e3d9cc;border-radius:999px;background:#fff}<\/style><nav class=\"lt-nav\" aria-label=\"\u5b66\u7fd2\u30fb\u8cc7\u6599\u5ba4\"><a class=\"lt-back\" href=\"\/?page_id=907\">\u2190 \u5b66\u7fd2\u30fb\u8cc7\u6599\u5ba4\u306b\u623b\u308b<\/a><\/nav>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9e85a35 elementor-widget elementor-widget-html\" data-id=\"9e85a35\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!-- \u30c1\u30e5\u30fc\u30ca\u30fc(Elementor \u306e HTML \u30a6\u30a3\u30b8\u30a7\u30c3\u30c8\u306b\u3053\u306e\u307e\u307e\u8cbc\u308a\u4ed8\u3051\u3066\u304f\u3060\u3055\u3044) -->\n<div id=\"tnr-app\">\n<style>\n#tnr-app{--tnr-bg:#fbf8f3;--tnr-ink:#2b2420;--tnr-sub:#7a6e64;--tnr-accent:#b5532a;--tnr-ok:#2f7d4f;--tnr-line:#e3d9cc;\n  max-width:760px;margin:0 auto;padding:16px;background:var(--tnr-bg);color:var(--tnr-ink);border-radius:14px;\n  font-family:\"Hiragino Sans\",\"Noto Sans JP\",\"Yu Gothic\",sans-serif;line-height:1.5;box-sizing:border-box}\n#tnr-app *{box-sizing:border-box}\n#tnr-app .tnr-title{font-size:20px;font-weight:700;margin:0;color:var(--tnr-ink)}\n#tnr-app button{all:unset;box-sizing:border-box;cursor:pointer;font-family:inherit;text-align:center;-webkit-tap-highlight-color:transparent}\n#tnr-app button:focus-visible{outline:2px solid var(--tnr-accent);outline-offset:2px}\n#tnr-app .tnr-main{margin-top:12px;background:#fff;border:1px solid var(--tnr-line);border-radius:14px;padding:14px;text-align:center}\n#tnr-app .tnr-gauge{display:block;width:100%;max-width:420px;height:auto;margin:0 auto}\n#tnr-app .tnr-note{font-size:56px;font-weight:700;line-height:1;margin-top:-6px;min-height:56px}\n#tnr-app .tnr-note small{font-size:18px;color:var(--tnr-sub);margin-left:4px;font-weight:600}\n#tnr-app .tnr-info{font-size:14px;color:var(--tnr-sub);min-height:1.5em;margin-top:6px;font-variant-numeric:tabular-nums}\n#tnr-app .tnr-msg{font-size:15px;font-weight:700;min-height:1.6em;margin-top:2px}\n#tnr-app .tnr-msg.is-ok{color:var(--tnr-ok)}\n#tnr-app .tnr-msg.is-near{color:#5f8f73}\n#tnr-app .tnr-msg.is-low,#tnr-app .tnr-msg.is-high{color:var(--tnr-accent)}\n#tnr-app .tnr-start{display:inline-block;margin-top:12px;min-width:200px;padding:13px 24px;border-radius:999px;background:var(--tnr-accent);color:#fff;font-size:16px;font-weight:700}\n#tnr-app .tnr-start.is-on{background:var(--tnr-ink)}\n#tnr-app .tnr-label{font-size:12px;font-weight:700;color:var(--tnr-sub);margin:14px 0 6px}\n#tnr-app .tnr-strings{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}\n#tnr-app .tnr-str{padding:8px 2px;border:1px solid var(--tnr-line);border-radius:8px;background:#fff;font-size:14px;font-weight:700;color:var(--tnr-ink);line-height:1.25}\n#tnr-app .tnr-str small{display:block;font-size:10px;font-weight:600;color:var(--tnr-sub)}\n#tnr-app .tnr-str.is-on{background:var(--tnr-ink);border-color:var(--tnr-ink);color:#fff}\n#tnr-app .tnr-str.is-on small{color:#e3d9cc}\n#tnr-app .tnr-str.is-hit{border-color:var(--tnr-ok);box-shadow:0 0 0 2px var(--tnr-ok) inset}\n#tnr-app .tnr-tools{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}\n#tnr-app .tnr-tool{padding:6px 16px;border:1px solid var(--tnr-line);border-radius:999px;font-size:14px;background:#fff;color:var(--tnr-ink)}\n#tnr-app .tnr-tool:hover{border-color:var(--tnr-accent)}\n#tnr-app .tnr-tool[disabled]{opacity:.4;pointer-events:none}\n#tnr-app .tnr-settings{margin-top:14px;border-top:1px solid var(--tnr-line);padding-top:10px;font-size:14px}\n#tnr-app .tnr-settings summary{cursor:pointer;font-weight:600;color:var(--tnr-sub)}\n#tnr-app .tnr-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 12px;align-items:center;margin-top:10px}\n#tnr-app .tnr-k{color:var(--tnr-sub);white-space:nowrap}\n#tnr-app select{font:inherit;padding:4px 8px;border:1px solid var(--tnr-line);border-radius:6px;background:#fff;color:var(--tnr-ink);max-width:100%}\n#tnr-app .tnr-foot{font-size:12px;color:var(--tnr-sub);margin:10px 0 0;text-align:center}\n@media (max-width:420px){#tnr-app .tnr-strings{grid-template-columns:repeat(4,1fr)}}\n#tnr-app .tnr-fromlog{display:none;align-items:center;gap:10px;flex-wrap:wrap;background:#fdf1e8;border:1px solid #f0d6c4;border-radius:10px;padding:8px 12px;margin-bottom:12px;font-size:13px}\n#tnr-app .tnr-fromlog.is-on{display:flex}\n#tnr-app .tnr-fromlog button{all:unset;cursor:pointer;background:#b5532a;color:#fff;font-weight:700;border-radius:999px;padding:6px 14px;font-size:14px;-webkit-tap-highlight-color:transparent}\n#tnr-app .tnr-fromlog span{color:#7a6e64}\n<\/style>\n<div class=\"tnr-fromlog\" id=\"tnr-fromlog\"><button type=\"button\" id=\"tnr-back\">\u2190 \u7df4\u7fd2\u8a18\u9332\u306b\u623b\u308b<\/button><span id=\"tnr-backnote\"><\/span><\/div>\n\n<h3 class=\"tnr-title\">\u30c1\u30e5\u30fc\u30ca\u30fc<\/h3>\n\n<div class=\"tnr-main\">\n  <svg class=\"tnr-gauge\" id=\"tnr-gauge\" viewBox=\"0 0 300 165\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" role=\"img\" aria-label=\"\u305a\u308c\u306e\u30e1\u30fc\u30bf\u30fc\"><\/svg>\n  <div class=\"tnr-note\" id=\"tnr-note\">\u2013<\/div>\n  <div class=\"tnr-msg\" id=\"tnr-msg\"><\/div>\n  <div class=\"tnr-info\" id=\"tnr-info\">\u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3057\u3066\u3001\u5f26\u30921\u672c\u305a\u3064\u9cf4\u3089\u3057\u3066\u304f\u3060\u3055\u3044<\/div>\n  <button type=\"button\" class=\"tnr-start\" id=\"tnr-start\">\ud83c\udfa4 \u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3059\u308b<\/button>\n<\/div>\n\n<div class=\"tnr-label\">\u5408\u308f\u305b\u308b\u5f26(\u300c\u81ea\u52d5\u300d\u306a\u3089\u9cf4\u3089\u3057\u305f\u97f3\u304b\u3089\u5224\u65ad\u3057\u307e\u3059)<\/div>\n<div class=\"tnr-strings\" id=\"tnr-strings\"><\/div>\n<div class=\"tnr-tools\">\n  <button type=\"button\" class=\"tnr-tool\" id=\"tnr-ref\" disabled>\u266a \u57fa\u6e96\u97f3\u3092\u9cf4\u3089\u3059<\/button>\n<\/div>\n\n<details class=\"tnr-settings\">\n  <summary>\u8a2d\u5b9a<\/summary>\n  <div class=\"tnr-grid\">\n    <span class=\"tnr-k\">\u57fa\u6e96\u30d4\u30c3\u30c1<\/span>\n    <select id=\"tnr-a4\">\n      <option value=\"438\">A = 438 Hz<\/option>\n      <option value=\"440\" selected>A = 440 Hz<\/option>\n      <option value=\"441\">A = 441 Hz<\/option>\n      <option value=\"442\">A = 442 Hz<\/option>\n      <option value=\"443\">A = 443 Hz<\/option>\n      <option value=\"415\">A = 415 Hz(\u30d0\u30ed\u30c3\u30af)<\/option>\n    <\/select>\n    <span class=\"tnr-k\">\u97f3\u540d\u8868\u8a18<\/span>\n    <select id=\"tnr-names\">\n      <option value=\"en\">C D E(\u82f1\u7c73\u5f0f)<\/option>\n      <option value=\"it\">\u30c9\u30ec\u30df(\u30a4\u30bf\u30ea\u30a2\u5f0f)<\/option>\n      <option value=\"ja\">\u30cf \u30cb \u30db(\u65e5\u672c\u5f0f)<\/option>\n    <\/select>\n  <\/div>\n<\/details>\n<p class=\"tnr-foot\">\u30de\u30a4\u30af\u306e\u97f3\u306f\u3053\u306e\u7aef\u672b\u306e\u4e2d\u3060\u3051\u3067\u51e6\u7406\u3057\u3001\u3069\u3053\u306b\u3082\u9001\u4fe1\u3057\u307e\u305b\u3093\u3002\u9759\u304b\u306a\u5834\u6240\u3067\u30011\u672c\u305a\u3064\u306f\u3063\u304d\u308a\u9cf4\u3089\u3059\u3068\u5b89\u5b9a\u3057\u307e\u3059\u3002<\/p>\n\n<script>\n(function(){ \/\/ \u7df4\u7fd2\u8a18\u9332\u304b\u3089\u958b\u3044\u305f\u3068\u304d\u3060\u3051\u300c\u623b\u308b\u300d\u30dc\u30bf\u30f3\u3092\u51fa\u3059(\u5225\u30bf\u30d6\u3067\u958b\u304f\u306e\u3067\u3001\u30bf\u30d6\u3092\u9589\u3058\u308c\u3070\u7df4\u7fd2\u8a18\u9332\u306b\u623b\u308b)\n  if(!\/[?&]from=log(&|$)\/.test(location.search)) return;\n  var bar=document.getElementById('tnr-fromlog'); if(!bar) return; bar.classList.add('is-on');\n  document.getElementById('tnr-back').addEventListener('click',function(){\n    try{ window.close(); }catch(e){}\n    setTimeout(function(){ document.getElementById('tnr-backnote').textContent='\u3053\u306e\u30bf\u30d6(\u753b\u9762)\u3092\u9589\u3058\u308b\u3068\u3001\u7df4\u7fd2\u8a18\u9332\u306b\u623b\u308a\u307e\u3059\u3002'; },300);\n  });\n})();\n<\/script>\n<script>\n(function(){\n  var root=document.getElementById('tnr-app'); if(!root) return;\n  var $=function(s){return root.querySelector(s);};\n  var NAMES={\n    en:['C','C\u266f','D','D\u266f','E','F','F\u266f','G','G\u266f','A','A\u266f','B'],\n    it:['\u30c9','\u30c9\u266f','\u30ec','\u30ec\u266f','\u30df','\u30d5\u30a1','\u30d5\u30a1\u266f','\u30bd','\u30bd\u266f','\u30e9','\u30e9\u266f','\u30b7'],\n    ja:['\u30cf','\u5b30\u30cf','\u30cb','\u5b30\u30cb','\u30db','\u30d8','\u5b30\u30d8','\u30c8','\u5b30\u30c8','\u30a4','\u5b30\u30a4','\u30ed']\n  };\n  var STRINGS=[[6,40],[5,45],[4,50],[3,55],[2,59],[1,64]]; \/\/ [\u5f26, MIDI\u756a\u53f7]\n  var st={on:false,target:0,ac:null,an:null,src:null,stream:null,buf:null,raf:null,hist:[],last:0,needle:0,refOsc:null};\n  try{ var a=localStorage.getItem('tnr-a4'); if(a) $('#tnr-a4').value=a; var n=localStorage.getItem('tnr-names'); if(n) $('#tnr-names').value=n; }catch(e){}\n\n  function a4(){ return +$('#tnr-a4').value; }\n  function sys(){ return $('#tnr-names').value; }\n  function freqOf(m){ return a4()*Math.pow(2,(m-69)\/12); }\n\n  \/* ---------- \u97f3\u9ad8\u691c\u51fa(YIN \u6cd5) ---------- *\/\n  function detect(buf,sr){\n    var n=buf.length, rms=0, i;\n    for(i=0;i<n;i++) rms+=buf[i]*buf[i];\n    rms=Math.sqrt(rms\/n); if(rms<0.008) return -1;\n    var W=Math.floor(n\/2), minT=Math.floor(sr\/1100), maxT=Math.min(W-1,Math.floor(sr\/60));\n    var d=new Float32Array(maxT+2), cm=new Float32Array(maxT+2), run=0, t, j;\n    for(t=1;t<=maxT+1;t++){ var s=0; for(j=0;j<W;j++){ var x=buf[j]-buf[j+t]; s+=x*x; } d[t]=s; }\n    cm[0]=1;\n    for(t=1;t<=maxT+1;t++){ run+=d[t]; cm[t]=run?d[t]*t\/run:1; }\n    var tau=-1;\n    for(t=minT;t<=maxT;t++){ if(cm[t]<0.12){ while(t+1<=maxT && cm[t+1]<cm[t]) t++; tau=t; break; } }\n    if(tau<0) return -1;\n    var x0=cm[tau-1], x1=cm[tau], x2=cm[tau+1], den=x0+x2-2*x1;\n    var better = den ? tau+(x0-x2)\/(2*den) : tau;\n    return sr\/better;\n  }\n  window.__tnrDetect=detect; \/\/ \u52d5\u4f5c\u78ba\u8a8d\u7528\n\n  \/* ---------- \u8868\u793a ---------- *\/\n  function gauge(cents,active){\n    var h='', cx=150, cy=150, R=120;\n    for(var c=-50;c<=50;c+=5){\n      var a=(c\/50)*60*Math.PI\/180, big=c%25===0, r1=R-(big?16:9);\n      h+='<line x1=\"'+(cx+r1*Math.sin(a))+'\" y1=\"'+(cy-r1*Math.cos(a))+'\" x2=\"'+(cx+R*Math.sin(a))+'\" y2=\"'+(cy-R*Math.cos(a))+'\" stroke=\"'+(c===0?'#2f7d4f':'#c8bfb2')+'\" stroke-width=\"'+(c===0?3:big?2:1.2)+'\" stroke-linecap=\"round\"\/>';\n    }\n    \/\/ \u5408\u3063\u3066\u3044\u308b\u7bc4\u56f2(\u00b15\u30bb\u30f3\u30c8)\n    var a1=-6*Math.PI\/180, a2=6*Math.PI\/180, r=R+8;\n    h+='<path d=\"M'+(cx+r*Math.sin(a1))+' '+(cy-r*Math.cos(a1))+' A'+r+' '+r+' 0 0 1 '+(cx+r*Math.sin(a2))+' '+(cy-r*Math.cos(a2))+'\" fill=\"none\" stroke=\"#2f7d4f\" stroke-width=\"5\" stroke-linecap=\"round\" opacity=\".5\"\/>';\n    h+='<text x=\"'+(cx-R*0.87-6)+'\" y=\"'+(cy-R*0.5+4)+'\" font-size=\"12\" fill=\"#7a6e64\" text-anchor=\"end\">\u266d<\/text><text x=\"'+(cx+R*0.87+6)+'\" y=\"'+(cy-R*0.5+4)+'\" font-size=\"12\" fill=\"#7a6e64\">\u266f<\/text>';\n    var ok=active && Math.abs(cents)<6, col=!active?'#c8bfb2':ok?'#2f7d4f':'#b5532a';\n    var na=(Math.max(-50,Math.min(50,cents))\/50)*60*Math.PI\/180;\n    h+='<line x1=\"'+cx+'\" y1=\"'+cy+'\" x2=\"'+(cx+(R-4)*Math.sin(na))+'\" y2=\"'+(cy-(R-4)*Math.cos(na))+'\" stroke=\"'+col+'\" stroke-width=\"3.5\" stroke-linecap=\"round\"\/>';\n    h+='<circle cx=\"'+cx+'\" cy=\"'+cy+'\" r=\"7\" fill=\"'+col+'\"\/>';\n    $('#tnr-gauge').innerHTML=h;\n  }\n  function buildStrings(){\n    var box=$('#tnr-strings'); box.innerHTML='';\n    var items=[[0,'\u81ea\u52d5','']].concat(STRINGS.map(function(s){ return [s[1], NAMES[sys()][s[1]%12], s[0]+'\u5f26']; }));\n    items.forEach(function(it){\n      var b=document.createElement('button'); b.type='button'; b.className='tnr-str'+(st.target===it[0]?' is-on':''); b.setAttribute('data-m',it[0]);\n      b.textContent=it[1]; if(it[2]){ var s=document.createElement('small'); s.textContent=it[2]; b.appendChild(s); }\n      b.addEventListener('click',function(){ st.target=it[0]; st.hist=[]; buildStrings(); $('#tnr-ref').disabled=!st.target; });\n      box.appendChild(b);\n    });\n  }\n  function show(f){\n    var note, cents, m;\n    if(st.target){ m=st.target; cents=1200*Math.log2(f\/freqOf(m)); }\n    else{\n      \/\/ \u81ea\u52d5:\u30ae\u30bf\u30fc\u306e\u5f26\u306e\u3046\u3061\u4e00\u756a\u8fd1\u3044\u3082\u306e\u3002\u96e2\u308c\u3066\u3044\u308c\u3070\u6700\u3082\u8fd1\u3044\u534a\u97f3\n      var best=null; STRINGS.forEach(function(s){ var c=1200*Math.log2(f\/freqOf(s[1])); if(!best||Math.abs(c)<Math.abs(best.c)) best={m:s[1],c:c}; });\n      if(Math.abs(best.c)<=150){ m=best.m; cents=best.c; } else { m=Math.round(69+12*Math.log2(f\/a4())); cents=1200*Math.log2(f\/freqOf(m)); }\n    }\n    var strNo=null; STRINGS.forEach(function(s){ if(s[1]===m) strNo=s[0]; });\n    $('#tnr-note').innerHTML=''; $('#tnr-note').appendChild(document.createTextNode(NAMES[sys()][((m%12)+12)%12]));\n    var sm=document.createElement('small'); sm.textContent=strNo?strNo+'\u5f26':(Math.floor(m\/12)-1); $('#tnr-note').appendChild(sm);\n    root.querySelectorAll('.tnr-str').forEach(function(b){ b.classList.toggle('is-hit',+b.getAttribute('data-m')===m && Math.abs(cents)<6); });\n    st.needle+= (cents-st.needle)*0.35;\n    var msg=$('#tnr-msg'), c=st.needle; \/\/ \u5224\u5b9a\u306f\u5c11\u3057\u306a\u3081\u3089\u304b\u306b\u3057\u305f\u5024\u3067(\u6570\u5b57\u306e\u3061\u3089\u3064\u304d\u3067\u8868\u793a\u304c\u8df3\u306d\u306a\u3044\u3088\u3046\u306b)\n    if(Math.abs(c)<2){ msg.className='tnr-msg is-ok'; msg.textContent='\u3074\u3063\u305f\u308a!'; }\n    else if(Math.abs(c)<6){ msg.className='tnr-msg is-near'; msg.textContent='\u3060\u3044\u305f\u3044\u5408\u3063\u3066\u3044\u307e\u3059'+(c<0?'(\u307b\u3093\u306e\u5c11\u3057\u4f4e\u3044)':'(\u307b\u3093\u306e\u5c11\u3057\u9ad8\u3044)'); }\n    else if(cents<0){ msg.className='tnr-msg is-low'; msg.textContent=cents<-50?'\u304b\u306a\u308a\u4f4e\u3044(\u5f26\u3092\u7de0\u3081\u308b)':'\u5c11\u3057\u4f4e\u3044(\u5f26\u3092\u7de0\u3081\u308b)'; }\n    else { msg.className='tnr-msg is-high'; msg.textContent=cents>50?'\u304b\u306a\u308a\u9ad8\u3044(\u5f26\u3092\u3086\u308b\u3081\u308b)':'\u5c11\u3057\u9ad8\u3044(\u5f26\u3092\u3086\u308b\u3081\u308b)'; }\n    $('#tnr-info').textContent=f.toFixed(1)+' Hz \u30fb '+(cents>0?'+':'')+Math.round(cents)+' \u30bb\u30f3\u30c8';\n    gauge(st.needle,true);\n  }\n\n  function loop(){\n    if(!st.on) return;\n    st.an.getFloatTimeDomainData(st.buf);\n    var f=detect(st.buf,st.ac.sampleRate), now=performance.now();\n    if(f>0 && f<1100){\n      st.hist.push(f); if(st.hist.length>5) st.hist.shift();\n      var s=st.hist.slice().sort(function(a,b){return a-b;});\n      show(s[Math.floor(s.length\/2)]); st.last=now;\n    }else if(now-st.last>1500){\n      st.hist=[]; gauge(0,false); $('#tnr-msg').textContent=''; $('#tnr-msg').className='tnr-msg';\n      $('#tnr-info').textContent='\u5f26\u3092\u9cf4\u3089\u3057\u3066\u304f\u3060\u3055\u3044';\n      root.querySelectorAll('.tnr-str').forEach(function(b){ b.classList.remove('is-hit'); });\n    }\n    st.raf=requestAnimationFrame(loop);\n  }\n\n  function start(){\n    if(!navigator.mediaDevices || !navigator.mediaDevices.getUserMedia){\n      $('#tnr-info').textContent='\u3053\u306e\u30d6\u30e9\u30a6\u30b6\u3067\u306f\u30de\u30a4\u30af\u304c\u4f7f\u3048\u307e\u305b\u3093\u3002\u5225\u306e\u30d6\u30e9\u30a6\u30b6\u3067\u304a\u8a66\u3057\u304f\u3060\u3055\u3044\u3002'; return;\n    }\n    navigator.mediaDevices.getUserMedia({audio:{echoCancellation:false,noiseSuppression:false,autoGainControl:false}})\n    .then(function(stream){\n      st.stream=stream;\n      st.ac=st.ac||new (window.AudioContext||window.webkitAudioContext)();\n      if(st.ac.state==='suspended') st.ac.resume();\n      st.src=st.ac.createMediaStreamSource(stream);\n      st.an=st.ac.createAnalyser(); st.an.fftSize=4096;\n      st.buf=new Float32Array(st.an.fftSize);\n      st.src.connect(st.an);\n      st.on=true; st.last=performance.now();\n      $('#tnr-start').textContent='\u25a0 \u30de\u30a4\u30af\u3092\u30aa\u30d5\u306b\u3059\u308b'; $('#tnr-start').classList.add('is-on');\n      $('#tnr-info').textContent='\u5f26\u3092\u9cf4\u3089\u3057\u3066\u304f\u3060\u3055\u3044';\n      loop();\n    })\n    .catch(function(){\n      $('#tnr-info').textContent='\u30de\u30a4\u30af\u304c\u4f7f\u3048\u307e\u305b\u3093\u3067\u3057\u305f\u3002\u30d6\u30e9\u30a6\u30b6\u306e\u8a2d\u5b9a\u3067\u30de\u30a4\u30af\u306e\u4f7f\u7528\u3092\u8a31\u53ef\u3057\u3066\u304f\u3060\u3055\u3044\u3002';\n    });\n  }\n  function stop(){\n    st.on=false; cancelAnimationFrame(st.raf);\n    if(st.stream) st.stream.getTracks().forEach(function(t){ t.stop(); });\n    if(st.src) st.src.disconnect();\n    st.stream=null; st.hist=[];\n    $('#tnr-start').textContent='\ud83c\udfa4 \u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3059\u308b'; $('#tnr-start').classList.remove('is-on');\n    $('#tnr-note').textContent='\u2013'; $('#tnr-msg').textContent=''; $('#tnr-info').textContent='\u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3057\u3066\u3001\u5f26\u30921\u672c\u305a\u3064\u9cf4\u3089\u3057\u3066\u304f\u3060\u3055\u3044';\n    gauge(0,false);\n  }\n\n  function refTone(){\n    if(!st.target) return;\n    st.ac=st.ac||new (window.AudioContext||window.webkitAudioContext)();\n    if(st.ac.state==='suspended') st.ac.resume();\n    if(st.refOsc){ try{ st.refOsc.stop(); }catch(e){} }\n    var t=st.ac.currentTime, f=freqOf(st.target);\n    var o=st.ac.createOscillator(), o2=st.ac.createOscillator(), g2=st.ac.createGain(), g=st.ac.createGain();\n    o.type='triangle'; o.frequency.value=f; o2.type='sine'; o2.frequency.value=f*2; g2.gain.value=0.3;\n    g.gain.setValueAtTime(0.0001,t); g.gain.exponentialRampToValueAtTime(0.35,t+0.02); g.gain.setValueAtTime(0.35,t+1.6); g.gain.exponentialRampToValueAtTime(0.0001,t+2.5);\n    o.connect(g); o2.connect(g2); g2.connect(g); g.connect(st.ac.destination);\n    o.start(t); o2.start(t); o.stop(t+2.6); o2.stop(t+2.6); st.refOsc=o;\n  }\n\n  $('#tnr-start').addEventListener('click',function(){ if(st.on) stop(); else start(); });\n  $('#tnr-ref').addEventListener('click',refTone);\n  $('#tnr-a4').addEventListener('change',function(){ try{ localStorage.setItem('tnr-a4',this.value); }catch(e){} st.hist=[]; });\n  $('#tnr-names').addEventListener('change',function(){ try{ localStorage.setItem('tnr-names',this.value); }catch(e){} buildStrings(); });\n  document.addEventListener('visibilitychange',function(){ if(document.hidden && st.on) stop(); });\n\n  buildStrings(); gauge(0,false);\n})();\n<\/script>\n<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-78edb24 elementor-widget elementor-widget-html\" data-id=\"78edb24\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.lt-nav{max-width:760px;margin:0 auto;padding:4px 16px;font-family:\"Hiragino Sans\",\"Noto Sans JP\",\"Yu Gothic\",sans-serif;font-size:14px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}.lt-nav a{color:#b5532a;font-weight:700;text-decoration:none}.lt-nav a:hover{text-decoration:underline}.lt-nav .lt-sub{color:#7a6e64}.lt-nav .lt-back{display:inline-block;padding:6px 14px;border:1px solid #e3d9cc;border-radius:999px;background:#fff}<\/style><nav class=\"lt-nav\" aria-label=\"\u5b66\u7fd2\u30fb\u8cc7\u6599\u5ba4\"><a class=\"lt-back\" href=\"\/?page_id=907\">\u2190 \u5b66\u7fd2\u30fb\u8cc7\u6599\u5ba4\u306b\u623b\u308b<\/a><span class=\"lt-sub\">\u3042\u308f\u305b\u3066\u4f7f\u3046:<a href=\"\/?page_id=979\">\u30e1\u30c8\u30ed\u30ce\u30fc\u30e0<\/a><\/span><\/nav>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>\u2190 \u5b66\u7fd2\u30fb\u8cc7\u6599\u5ba4\u306b\u623b\u308b \u2190 \u7df4\u7fd2\u8a18\u9332\u306b\u623b\u308b \u30c1\u30e5\u30fc\u30ca\u30fc \u2013 \u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3057\u3066\u3001\u5f26\u30921\u672c\u305a\u3064\u9cf4\u3089\u3057\u3066\u304f\u3060\u3055\u3044 \ud83c\udfa4 \u30de\u30a4\u30af\u3092\u30aa\u30f3\u306b\u3059\u308b \u5408\u308f\u305b\u308b\u5f26(\u300c\u81ea\u52d5\u300d\u306a\u3089\u9cf4\u3089\u3057\u305f\u97f3\u304b\u3089\u5224\u65ad\u3057\u307e\u3059) \u266a \u57fa\u6e96\u97f3\u3092\u9cf4\u3089\u3059 \u8a2d\u5b9a \u57fa\u6e96\u30d4\u30c3 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":907,"menu_order":8,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-980","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/pages\/980","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/guitarschool.in\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=980"}],"version-history":[{"count":9,"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/pages\/980\/revisions"}],"predecessor-version":[{"id":1062,"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/pages\/980\/revisions\/1062"}],"up":[{"embeddable":true,"href":"https:\/\/guitarschool.in\/index.php?rest_route=\/wp\/v2\/pages\/907"}],"wp:attachment":[{"href":"https:\/\/guitarschool.in\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=980"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}