UNPKG

@skyway-sdk/core

Version:

The official Next Generation JavaScript SDK for SkyWay

37 lines 1.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createRemoteStream = void 0; const common_1 = require("@skyway-sdk/common"); const errors_1 = require("../../../errors"); const util_1 = require("../../../util"); const audio_1 = require("./audio"); const data_1 = require("./data"); const video_1 = require("./video"); const log = new common_1.Logger('packages/core/src/media/stream/remote/factory.ts'); /**@internal */ const createRemoteStream = (id, media, codec) => { if (media instanceof RTCDataChannel) { const stream = new data_1.RemoteDataStream(id, media); stream.codec = codec; return stream; } else { if (media.kind === 'audio') { const stream = new audio_1.RemoteAudioStream(id, media); stream.codec = codec; return stream; } else if (media.kind === 'video') { const stream = new video_1.RemoteVideoStream(id, media); stream.codec = codec; return stream; } } throw (0, util_1.createError)({ operationName: 'createRemoteStream', path: log.prefix, info: Object.assign(Object.assign({}, errors_1.errors.invalidArgumentValue), { detail: 'invalid stream type' }), }); }; exports.createRemoteStream = createRemoteStream; //# sourceMappingURL=factory.js.map