Baseline Widely available
createMediaElementSource()
㯠AudioContext
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã®ã¡ã½ããã§ãæ°ãã MediaElementAudioSourceNode
ãªãã¸ã§ã¯ãã使ããããã«ä½¿ç¨ããã¾ãã HTML å
ã«åå¨ãã<audio>
ã¾ã㯠<video>
ãæå®ããã¨ããã®é³å£°ãåçããæä½ãããã¨ãã§ãã¾ãã
ã¡ãã£ã¢è¦ç´ ã®é³å£°ã½ã¼ã¹ãã¼ãã«ã¤ãã¦ã®è©³ç´°ã¯ã MediaElementAudioSourceNode
ãåç
§ãã¦ä¸ããã
createMediaElementSource(myMediaElement)
弿°
myMediaElement
é³å£°å¦çã°ã©ãã«ä¸ãã¦æä½ããã HTMLMediaElement
ãªãã¸ã§ã¯ãã§ãã
MediaElementAudioSourceNode
ã§ãã
以ä¸ã®ä¾ã§ã¯ã createMediaElementSource()
ã使ç¨ã㦠<audio>
ãã鳿ºã使ãã¾ããåçããã鳿ºã¯ GainNode
ãä»ã AudioDestinationNode
ã«æ¸¡ããã¾ãããã¦ã¹ãã¤ã³ã¿ã¼ãåã㨠updatePage()
颿°ãå¼ã°ãããã¦ã¹ãã¤ã³ã¿ã¼ã® Y 座æ¨ã®å¤ãã¦ã£ã³ãã¦ã®é«ãã§å²ã£ãæ¯çãå
ã«ç¾å¨ã®ã²ã¤ã³ãè¨ç®ãã¾ããã¾ãããã¦ã¹ãã¤ã³ã¿ã¼ãä¸ä¸ã«åãããã¨ã§ãåçãã¦ãã鳿¥½ã®é³éãä¸ãä¸ãã§ãã¾ãã
ã¡ã¢: ã©ã¤ãã§å®è¡ããä¾ã¨ãã½ã¼ã¹ãè¦ããã¨ãã§ãã¾ãã
const audioCtx = new AudioContext();
const myAudio = document.querySelector("audio");
// MediaElementAudioSourceNodeã使
// HTMLMediaElementãããã¸æ¥ç¶
const source = audioCtx.createMediaElementSource(myAudio);
// ã²ã¤ã³ãã¼ãã使
const gainNode = audioCtx.createGain();
// ãã¦ã¹ãã¤ã³ã¿ã¼ã® Y 座æ¨ã¨
// ç»é¢ã®é«ããä¿æããããã®å¤æ°ã使
let curY;
const HEIGHT = window.innerHeight;
// ãã¦ã¹ãåãããæ°ããY座æ¨ãåå¾ãã
// ã²ã¤ã³ã®å¤ãè¨å®ãã
document.onmousemove = updatePage;
function updatePage(e) {
curY = e.pageY;
gainNode.gain.value = curY / HEIGHT;
}
// AudioBufferSourceNode ã gainNode ã¸æ¥ç¶
// gainNode ã destination ã¸æ¥ç¶
// ããã§é³æ¥½ã®åçã¨ããã¦ã¹ã«ã¼ã½ã«ã§é³éã調ç¯ã§ããããã«ãªã
source.connect(gainNode);
gainNode.connect(audioCtx.destination);
ã¡ã¢: createMediaElementSource()
ãå¼ã³åºããçµæã HTMLMediaElement
ããã®é³å£°åç㯠AudioContext ã®å¦çã°ã©ãã«åã«ã¼ãã£ã³ã°ããã¾ãããã®ãããã¡ãã£ã¢ã®åç/䏿忢ã¯ãã¡ãã£ã¢è¦ç´ API ã¨ãã¬ã¼ã¤ã³ã³ããã¼ã«ãéãã¦è¡ããã¨ãã§ãã¾ãã
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4