WebRTCのローカルオーディオ再生のみをミュートしようとしています。具体的には、getUserMedia()の後でサーバー接続を行う前にミュートします。私が見つけた選択肢のどれもが働いていませんでした。WebRTC - ローカルオーディオ出力をミュートする方法
var audioTracks = localMediaStream.getAudioTracks();
// if MediaStream has reference to microphone
if (audioTracks[0]) {
audioTracks[0].enabled = false;
}
この手法は "作業" としてもdescribed hereですが、クロームバージョン39.0.2171.95(64ビット)(Ubuntuの14.04)で、ここで失敗:Muazカーンからこれは失敗します。
ボリュームゲイン使用して動作するように言われている追加の方法:
window.AudioContext = window.AudioContext || window.webkitAudioContext;
var audioContext = new AudioContext();
var source = audioContext.createMediaStreamSource(clientStream);
var volume = audioContext.createGain();
source.connect(volume);
volume.connect(audioContext.destination);
volume.gain.value = 0; //turn off the speakers
TLを、drは私が私のスピーカーの上で私のマイクからの入力を聞きたくないが、私は私のビデオを見たいん画像。
回避策
この回避策はBenjamin Trentによって示唆された、それはそうのようなビデオタグにミュート属性を設定することで、音声をミュート:
document.getElementById("html5vid").muted = true;
Also similar question, but its for video, so not the same
なぜミュートにHTMLのvideoタグを設定していませんか? –
これは私の場合は理想的ではありませんが、音声のみのミュートがタグでサポートされていますか? –
ビデオhtmlタグをミュートすると、動画に関連付けられた音声がミュートされます。ビデオは引き続き再生され、ストリーム内のオーディオトラックとビデオトラックは引き続きアクセス可能で、別のピアに送信することができます。しかし、ubuntu上のChromeリリースで対処する必要があるというバグが見つかりました。 –