2013-08-23 21 views
11

私はwebrtcベースのチャットルームを実装しようとしています。そして、私はラップトップで次のような問題に遭遇しました。他のピアに接続せずにgetUserMedia()を使うだけで、ローカルビデオストリームを取得できます。webrtcのjavascriptでエコーやノイズを避ける方法

私がミュートを解除すると、エコーが発生しました。

その後、私はヘッドフォンを装着し、音が継続していることがわかりました。私は声をはっきりと聞くことができます。

私は音量を下げようとしましたが、機能しません。

ありがとうございます。あなたはDOMでそれを持っている場合

+0

@ tom-vLineの答えがあなたの問題を解決した場合は、回答 – aclave1

答えて

29

あなたはローカル<video>要素をミュートしていることを確認してください:

<video id="vid1" autoplay="true" muted="muted"></video> 

は、より多くの詳細とWebRTC samplesについて話し合う-のWebRTCメーリングリストでthis postを参照してください。

+1

と記入してください。ありがとうございます。 –

+1

ミュートすると音が鳴りません。 –

+2

ローカル再生要素がミュートされている場合でも、ストリームはサウンドをキャプチャします。 DOMの要素をミュートすると、ローカル再生がミュートされます。出力するオーディオストリーム自体をミュートするには、サウンドをそのままにしてビデオストリームを無効にするには、localMediaStream.getAudioStreams()[0] .enabled = falseまたはlocalMediaStream.getVideoStreams()[0] .enabled = falseを使用します。これは、onaddstream()コールバックのどこかにメディアストリームを保存したことを前提としています。 –

-2

ノイズ関連の問題を解決するには、localstreamにautoplay = falseを設定する必要があります。

+2

あなたが提供するソリューションについてもう少し詳しく説明してください。 – abarisone

0

以下でください:

1)localVideoでは、この操作を行います。

localVideo.volume = 0;

localVideo.muted = 0;

2)もremoteVideoに対して同じ操作を行います。

remoteVideo.volume = 0。

remoteVideo.muted = 0;

関連する問題