Every line of 'createmediastreamsource' code snippets is scanned for vulnerabilities by our powerful machine learning engine that combs millions of open source libraries, ensuring your JavaScript code is secure.
86 _createMediaElement(mediaStreamInfo) { 87 try { 88 const mediaElement = document.createElement('audio'); 89 mediaElement.srcObject = mediaStreamInfo.stream; 90 mediaElement.dataset.conversationId = mediaStreamInfo.conversationId; 91 mediaElement.dataset.flowId = mediaStreamInfo.flowId; 92 mediaElement.muted = false; 93 mediaElement.setAttribute('autoplay', true); 94 if (Environment.browser.supports.audioOutputSelection) { 95 this._setMediaElementOutput(mediaElement, this.currentDeviceId.audioOutput()); 96 } 97 return mediaElement; 98 } catch (error) { 99 this.logger.error(`Unable to create AudioElement for flow '${mediaStreamInfo.flowId}'`, error); 100 } 101 }
18 public toMediaStream(): MediaStream { 19 return this.stream; 20 }
126 wrap_audio_output_stream(media_stream) { 127 if (z.util.Environment.browser.firefox) { 128 const audio_context = this._get_audio_context(); 129 130 if (audio_context) { 131 const remote_source = audio_context.createMediaStreamSource(media_stream); 132 const audio_output_device = audio_context.createMediaStreamDestination(); 133 134 this.pan_node = audio_context.createStereoPanner(); 135 this.pan_node.pan.value = this.panning(); 136 137 remote_source.connect(this.pan_node); 138 this.pan_node.connect(audio_output_device); 139 140 Object.assign(media_stream, audio_output_device.stream); 141 this.logger.debug( 142 `Wrapped audio stream to speaker to create stereo. Initial panning set to '${this.panning()}'.`, 143 media_stream 144 ); 145 } 146 } 147 148 return media_stream; 149 }
764 addRemoteMediaStream(mediaStreamInfo) { 765 const handledStreamTypes = [z.media.MediaType.AUDIO, z.media.MediaType.VIDEO, z.media.MediaType.AUDIO_VIDEO]; 766 if (!handledStreamTypes.includes(mediaStreamInfo.getType())) { 767 throw new z.error.MediaError(z.error.MediaError.TYPE.UNHANDLED_MEDIA_TYPE); 768 } 769 770 this.remoteMediaStreamInfo.push(mediaStreamInfo); 771 this.elementHandler.addMediaElement(mediaStreamInfo); 772 }
30 addVideo(video) { 31 32 const mediaSource = new MediaSource(); 33 34 let onSourceOpen; 35 const muxer = this; 36 const mediaReady = new Promise((resolve, reject) => { 37 onSourceOpen = () => { 38 muxer.mse = new MSE(video, mediaSource); 39 resolve(muxer.mse); 40 } 41 }); 42 video.src = URL.createObjectURL(mediaSource); 43 mediaSource.addEventListener('sourceopen', onSourceOpen); 44 45 return mediaReady; 46 }
134 function GetMediaStream(streamNumber) { 135 if (streamNumber == null) { 136 streamNumber = _streamNumber; 137 } 138 var streamIndex = streamNumber - 1; 139 if (_streamTunerPageSize > 0) { 140 streamIndex = streamIndex % _streamTunerPageSize; 141 } 142 return _mediaStreams.length == 0 ? null : _mediaStreams[streamIndex]; 143 }
50 mixIntoAudioInput(_stream: MediaStream): MediaStreamAudioSourceNode { 51 return null; 52 }