簡體   English   中英

'source.connect()'不是函數-Web Audio API

[英]'source.connect()' not a function - Web Audio API

一般而言,我對Web Audio API和Javascript還是很陌生,因此對您中的某些人來說似乎真的很愚蠢,但我正在嘗試在JavaScript畫布中創建基本的音頻可視化工具。

我在音頻上下文等方面遇到問題,因此將分析儀連接到本地存儲的mp3文件的音頻源。 'source.connect()'顯然不是一個函數,但是我已經完全從以下網站的Web Audio API指南中復制了語法: https : //developer.mozilla.org/zh-CN/docs/Web/API/Web_Audio_API / Visualizations_with_Web_Audio_API

function SetUpAudio()
{
    let audio = document.createElement('audio');
    audio.src = 'never let u go master 3.mp3';
    let source = audio.src
    audio.controls = 'true';
    document.body.appendChild(audio);
    audio.style.width = window.innerWidth + 'px';

    let audioCtx = new (window.AudioContext)();
    let analyser = audioCtx.createAnalyser();

    source.connect(analyser);
    audio.play();
}

這是出現的錯誤:

未捕獲的TypeError:source.connect不是函數

您混合了變量名稱。 該文檔有以下示例:

source = audioCtx.createMediaStreamSource(stream);
source.connect(analyser);

但是在您的情況下, source設置為audio.src的值,該值只是一個字符串: 'never let u go master 3.mp3' ,而不是MediaStreamSource。

進行如下更改:

audioCtx = new (window.AudioContext)();
let analyser = audioCtx.createAnalyser();

audioCtx.connect(analyser);

然后從那里拿走。 如果您還有其他問題,請發布一個新問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM