var RTC = require("./RTC.js"); ////These lines should be uncommented when require works in app.js //var RTCBrowserType = require("../../service/RTC/RTCBrowserType.js"); //var StreamEventTypes = require("../../service/RTC/StreamEventTypes.js"); //var MediaStreamType = require("../../service/RTC/MediaStreamTypes"); /** * Creates a MediaStream object for the given data, session id and ssrc. * It is a wrapper class for the MediaStream. * * @param data the data object from which we obtain the stream, * the peerjid, etc. * @param sid the session id * @param ssrc the ssrc corresponding to this MediaStream * * @constructor */ function MediaStream(data, sid, ssrc, eventEmmiter) { this.sid = sid; this.stream = data.stream; this.peerjid = data.peerjid; this.ssrc = ssrc; this.type = (this.stream.getVideoTracks().length > 0)? MediaStreamType.VIDEO_TYPE : MediaStreamType.AUDIO_TYPE; this.muted = false; eventEmmiter.emit(StreamEventTypes.EVENT_TYPE_REMOTE_CREATED, this); } if(RTC.getBrowserType() == RTCBrowserType.RTC_BROWSER_FIREFOX) { if (!MediaStream.prototype.getVideoTracks) MediaStream.prototype.getVideoTracks = function () { return []; }; if (!MediaStream.prototype.getAudioTracks) MediaStream.prototype.getAudioTracks = function () { return []; }; } MediaStream.prototype.getOriginalStream = function() { return this.stream; } MediaStream.prototype.setMute = function (value) { this.stream.muted = value; this.muted = value; } module.exports = MediaStream;