[英]How to get the sample rate of a microphone/input device using Javascript?
當您創建一個新的AudioContext
時,它會將采樣率設置為默認的output設備。 這是預期的默認行為。 有誰知道Javascript有沒有辦法得到輸入設備的采樣率?
我們可以在AudioContext的文檔中看到它是關於sampleRate
的
該值通常介於 8,000 Hz 和 96,000 Hz 之間; 默認值會因 output 設備而異,但最常見的采樣率為 44,100 Hz。 如果選項中未包含 sampleRate 屬性,或者在創建音頻上下文時未指定選項,則默認使用新上下文的 output 設備的首選采樣率。
我如何使用它的示例:
const stream = await navigator.mediaDevices.getUserMedia({audio: true, video: false});
const context = new AudioContext();
context.sampleRate // This is the default output device's sample rate. I need the default input sampleRate
我一直在搜索文檔和 inte.net 以尋找執行此操作的方法,但沒有找到任何有用的東西。 感謝任何幫助。
您可以像這樣在sampleRate
中獲取音軌的采樣率:
const sampleRate = stream.getAudioTracks()[0].getSettings().sampleRate;
然后您可以使用它來創建AudioContext
。
const context = new AudioContext({ sampleRate });
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.