Javascript webRTC:如何检测流中的音频/视频存在?

Javascript webRTC:如何检测流中的音频/视频存在?,javascript,html,html5-video,html5-audio,webrtc,Javascript,Html,Html5 Video,Html5 Audio,Webrtc,我想知道接收到的流onaddstream回调中是否存在曲目。视频通话效果很好,但我想做点什么。仅音频调用,所以我只是在getUserMedia约束中传递了audio:true,video:false,现在当我收到流时,我无法判断流中是否存在曲目 如何知道流中是否存在曲目?要知道音频和视频是否存在,请使用getAudioTracks和getVideoTracks function checkStream(stream){ var hasMedia={hasVideo:false,hasAu

我想知道接收到的流onaddstream回调中是否存在曲目。视频通话效果很好,但我想做点什么。仅音频调用,所以我只是在getUserMedia约束中传递了
audio:true,video:false
,现在当我收到流时,我无法判断流中是否存在曲目


如何知道流中是否存在曲目?

要知道音频和视频是否存在,请使用
getAudioTracks
getVideoTracks

function checkStream(stream){

   var hasMedia={hasVideo:false,hasAudio:false};

   if(stream.getAudioTracks().length)// checking audio presence
      hasMedia.hasAudio=true;

   if(stream.getVideoTracks().length)// checking video presence
      hasMedia.hasVideo=true;

    return hasMedia; 
}
若要停止在流中传递视频,请更改提供和回答限制

constraints = {
            optional: [],
            mandatory: {
                OfferToReceiveAudio: true,
                OfferToReceiveVideo: false
            }
        };

你试过getAudioTracks().length吗?我怎么知道没有VideoTracks?getVideoTracks().length或“a=mid:video”出现在peer.remoteDescription.sDPOPE中?你正在设置OfferToReceiveAudio:true和OfferToReceiveVideo:false——就像这样:如果长度为0,那么应该只显示音频