摘要:應(yīng)用核心結(jié)構(gòu)介紹應(yīng)用技術(shù)棧服務(wù)端前端界面音頻操作音頻數(shù)據(jù)可視化項(xiàng)目構(gòu)建全局安裝使用模板引擎,新建項(xiàng)目進(jìn)入項(xiàng)目目錄安裝依賴安裝項(xiàng)目變動(dòng)實(shí)時(shí)監(jiān)控工具啟動(dòng)服務(wù)并檢查項(xiàng)目是否成功創(chuàng)建觀測(cè)默認(rèn)端口詳析重要對(duì)象可理解為上下文對(duì)象,包含對(duì)象以及
應(yīng)用核心結(jié)構(gòu)介紹 應(yīng)用技術(shù)棧
服務(wù)端:Node+Express+ejs
前端界面:HTML+CSS(CSS3)+JS
音頻操作:webAudio
音頻數(shù)據(jù)可視化:Canvas
項(xiàng)目構(gòu)建全局安裝express:npm install -g express-generator
使用ejs模板引擎,新建項(xiàng)目music:express --view=ejs music
進(jìn)入項(xiàng)目目錄安裝依賴:cd music && npm install
安裝項(xiàng)目變動(dòng)實(shí)時(shí)監(jiān)控工具:npm install -g supervisor
啟動(dòng)服務(wù)并檢查項(xiàng)目是否成功創(chuàng)建:supervisor bin/www && 觀測(cè)默認(rèn)3000端口127.0.0.1:3000
詳析重要APIAudioContext對(duì)象:可理解為audio上下文對(duì)象,包含AudioNode對(duì)象以及它們的聯(lián)系的對(duì)象,一般情況下,一個(gè)document中只有一個(gè)AudioContext對(duì)象,主要用到其兩個(gè)屬性四個(gè)方法:
destination屬性:AudioDestinationNode對(duì)象,所有音頻輸出聚集地,相當(dāng)于音頻的硬件,所有AudioNode都直接或間接連接到這里
currentTime屬性:AudioContext從創(chuàng)建開始到當(dāng)前的時(shí)間(秒)
decodeAudioData(arrayBuffer,succ(buffer),err)方法:異步解碼包含在arrayBuffer中音頻數(shù)據(jù)
createBufferSource()方法:創(chuàng)建AudioBufferSourceNode對(duì)象
createAnalyser()方法:創(chuàng)建AnalyserNode對(duì)象
createGain()/createGainNode()方法:創(chuàng)建GainNode對(duì)象
AudioBufferSourceNode對(duì)象,表示內(nèi)存中的一段音頻資源,其音頻數(shù)據(jù)存儲(chǔ)在AudioBuffer的buffer屬性中,其有三個(gè)屬性:
buffer屬性,AudioBuffer對(duì)象,表示要播放的音頻資源數(shù)據(jù),子屬性:duration,表示該音頻資源的時(shí)長
loop屬性,是否循環(huán)播放,默認(rèn)為false
onenload屬性,綁定音頻播放完畢調(diào)用的事件處理程序
start/noteOn(when=ac.currentTime,offset=0;duration=buffer.duration-offset),開始播放音頻
stop/noteOff(when=ac.currentTime),結(jié)束播放音頻
GainNode改變音頻音量的對(duì)象,會(huì)改變通過它的音頻數(shù)據(jù)所有的sample frame的信號(hào)強(qiáng)度,其屬性:
gain,是AudioParam對(duì)象,通過改變其value值,可以改變音頻信號(hào)的信號(hào)強(qiáng)弱,最小值為0,最大值為1,默認(rèn)為1
AnalyserNode音頻分析對(duì)象,能實(shí)時(shí)的分析音頻資源的時(shí)域和頻域信息,但不對(duì)音頻流做任何處理,屬性:
fftSize:設(shè)置FFT值的大小,用于分析得到頻域,為32-2048之間2的整數(shù)次倍,默認(rèn)為2048,實(shí)時(shí)得到的音頻數(shù)據(jù)域的個(gè)數(shù)為fftSize的一半
frequencyBinCount:實(shí)時(shí)得到的音頻頻域域的數(shù)據(jù)個(gè)數(shù),為FFT值的一半
getByteFrequencyData(Uint8Array)復(fù)制音頻當(dāng)前的頻域數(shù)據(jù)到Uint8Array中
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/112247.html
摘要:應(yīng)用核心結(jié)構(gòu)介紹應(yīng)用技術(shù)棧服務(wù)端前端界面音頻操作音頻數(shù)據(jù)可視化項(xiàng)目構(gòu)建全局安裝使用模板引擎,新建項(xiàng)目進(jìn)入項(xiàng)目目錄安裝依賴安裝項(xiàng)目變動(dòng)實(shí)時(shí)監(jiān)控工具啟動(dòng)服務(wù)并檢查項(xiàng)目是否成功創(chuàng)建觀測(cè)默認(rèn)端口詳析重要對(duì)象可理解為上下文對(duì)象,包含對(duì)象以及 應(yīng)用核心結(jié)構(gòu)介紹 showImg(https://segmentfault.com/img/bVQWJ4?w=350&h=369); 應(yīng)用技術(shù)棧 服務(wù)端:...
摘要:應(yīng)用核心結(jié)構(gòu)介紹應(yīng)用技術(shù)棧服務(wù)端前端界面音頻操作音頻數(shù)據(jù)可視化項(xiàng)目構(gòu)建全局安裝使用模板引擎,新建項(xiàng)目進(jìn)入項(xiàng)目目錄安裝依賴安裝項(xiàng)目變動(dòng)實(shí)時(shí)監(jiān)控工具啟動(dòng)服務(wù)并檢查項(xiàng)目是否成功創(chuàng)建觀測(cè)默認(rèn)端口詳析重要對(duì)象可理解為上下文對(duì)象,包含對(duì)象以及 應(yīng)用核心結(jié)構(gòu)介紹 showImg(https://segmentfault.com/img/bVQWJ4?w=350&h=369); 應(yīng)用技術(shù)棧 服務(wù)端:...
摘要:在文末,我會(huì)附上一個(gè)可加載的模型方便學(xué)習(xí)中文藝術(shù)字渲染用原生可以很容易地繪制文字,但是原生提供的文字效果美化功能十分有限。 showImg(https://segmentfault.com/img/bVWYnb?w=900&h=385); WebGL 可以說是 HTML5 技術(shù)生態(tài)鏈中最為令人振奮的標(biāo)準(zhǔn)之一,它把 Web 帶入了 3D 的時(shí)代。 初識(shí) WebGL 先通過幾個(gè)使用 Web...
閱讀 664·2021-11-23 09:51
閱讀 3303·2021-10-11 10:58
閱讀 15465·2021-09-29 09:47
閱讀 3563·2021-09-01 11:42
閱讀 1292·2019-08-29 16:43
閱讀 1839·2019-08-29 15:37
閱讀 2112·2019-08-29 12:56
閱讀 1729·2019-08-28 18:21