2013-05-27 7 views
7

Vorrei conoscere la presenza delle tracce nel callback del flusso ricevuto onaddstream. Le videochiamate funzionano bene, ma mi piacerebbe farlo. chiamata solo audio, quindi ho appena passato audio:true,video:false in vincoli getUserMedia, ora quando ricevo il flusso non riesco a capire la presenza di tracce in streaming.webRTC: come rilevare la presenza audio/video in Stream?

Come conoscere la presenza di tracce nello stream?

+0

Hai provato getAudioTracks(). Length? –

+0

come faccio a sapere l'assenza di VideoTracks? –

+2

getVideoTracks(). Lunghezza o "a = mid: video" presenza in peer.remoteDescription.sdp –

risposta

6

Per conoscere la presenza di audio e video utilizzare getAudioTracks e 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; 
} 

Per interrompere il passaggio di Video in streaming, modificare i costrutti di offerta e di risposta.

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

Grazie per aver condiviso il codice !! Aiutato. –