0

サイト内のスピーカーで指定の音を鳴らしたい。このデモhttps://webrtc.github.io/samples/src/content/devices/input-output/のように、 mediaDevices.getUserMedia によってすべてのユーザー デバイスを既に取得しています。

ポイントは、ヘッドセットなどではなくスピーカーを取得することです。DeviceInfo オブジェクトには 4 つのプロパティがあります。

deviceId - いくつかの GUID

グループ ID - その他の GUID

kind - 'audiooutput' でフィルタリング

ラベル - 名前

100%確実にスピーカーを入手できる可能性はありますか?

デフォルトを無視するようにすでにフィルタリングしました:


function findSpeakers(audioOutputList){

    let defaultDevice = audioOutputList.filter(device => {

        if(device.deviceId == "default" && device.kind == "audiooutput"){

            return true;

        }else{

            return false;

        }

    })



    let audioOutputsWithoutDefault = audioOutputList.filter(device =>{

        if(device.label.indexOf(defaultDevice[0].label.replace('Default - ','')) < 1 && device.kind == "audiooutput"){

            return true;

        }else{

            return false;

        }

    })

    console.log(audioOutputsWithoutDefault);

}

4

1 に答える 1