UNPKG

camstreamerlib

Version:

Helper library for CamStreamer ACAP applications.

161 lines (160 loc) 6.42 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.audioLocalSchema = exports.audioUrlSchema = exports.audioFileListSchema = exports.audioFileSchema = exports.storageListSchema = exports.audioFileStorageTypeSchema = exports.AudioType = exports.isYoutubeRtmpStream = exports.isGameChangerStream = exports.isMicrosoftStream = exports.isMicrosoftAzureStream = exports.isIbmStream = exports.isDailymotionStream = exports.isWowzaStream = exports.isHlsPushStream = exports.isHlsPullStream = exports.isDaCastStream = exports.isSrtStream = exports.isChurchStream = exports.isTwitchStream = exports.isVimeoStream = exports.isYouTubeStream = exports.isWindyStream = exports.isSdCardStream = exports.isRtmpStream = exports.isMpegDvbStream = exports.isFacebookStream = exports.streamListSchema = exports.streamSchema = void 0; const zod_1 = require("zod"); const facebookSchema_1 = require("./facebookSchema"); const mpegDvbSchema_1 = require("./mpegDvbSchema"); const rtmpSchema_1 = require("./rtmpSchema"); const sdCardSchema_1 = require("./sdCardSchema"); const windySchema_1 = require("./windySchema"); const youtubeSchema_1 = require("./youtubeSchema"); const vimeoSchema_1 = require("./vimeoSchema"); const twitchSchema_1 = require("./twitchSchema"); const churchSchema_1 = require("./churchSchema"); const srtSchema_1 = require("./srtSchema"); const daCastSchema_1 = require("./daCastSchema"); const hlsPullSchema_1 = require("./hlsPullSchema"); const hlsPushSchema_1 = require("./hlsPushSchema"); const wowzaSchema_1 = require("./wowzaSchema"); const dailymotionSchema_1 = require("./dailymotionSchema"); const ibmSchema_1 = require("./ibmSchema"); const microsoftAzureSchema_1 = require("./microsoftAzureSchema"); const microsoftStreamSchema_1 = require("./microsoftStreamSchema"); const gameChangerSchema_1 = require("./gameChangerSchema"); const common_1 = require("../common"); const youtubeRtmpSchema_1 = require("./youtubeRtmpSchema"); exports.streamSchema = zod_1.z.discriminatedUnion('type', [ facebookSchema_1.facebookSchema, mpegDvbSchema_1.mpegDvbSchema, rtmpSchema_1.rtmpSchema, sdCardSchema_1.sdCardSchema, windySchema_1.windySchema, youtubeSchema_1.youtubeSchema, vimeoSchema_1.vimeoSchema, twitchSchema_1.twitchSchema, churchSchema_1.churchSchema, srtSchema_1.srtSchema, daCastSchema_1.daCastSchema, hlsPullSchema_1.hlsPullSchema, hlsPushSchema_1.hlsPushSchema, wowzaSchema_1.wowzaSchema, dailymotionSchema_1.dailymotionSchema, ibmSchema_1.ibmSchema, microsoftAzureSchema_1.microsoftAzureSchema, microsoftStreamSchema_1.microsoftStreamSchema, gameChangerSchema_1.gameChangerSchema, youtubeRtmpSchema_1.youtubeRtmpSchema, ]); exports.streamListSchema = zod_1.z.object({ streamList: zod_1.z.array(exports.streamSchema) }); const isFacebookStream = (stream) => { return stream.type === 'facebook'; }; exports.isFacebookStream = isFacebookStream; const isMpegDvbStream = (stream) => { return stream.type === 'mpeg_dvb'; }; exports.isMpegDvbStream = isMpegDvbStream; const isRtmpStream = (stream) => { return stream.type === 'rtmp'; }; exports.isRtmpStream = isRtmpStream; const isSdCardStream = (stream) => { return stream.type === 'sd_card'; }; exports.isSdCardStream = isSdCardStream; const isWindyStream = (stream) => { return stream.type === 'windy'; }; exports.isWindyStream = isWindyStream; const isYouTubeStream = (stream) => { return stream.type === 'youtube'; }; exports.isYouTubeStream = isYouTubeStream; const isVimeoStream = (stream) => { return stream.type === 'vimeo'; }; exports.isVimeoStream = isVimeoStream; const isTwitchStream = (stream) => { return stream.type === 'twitch'; }; exports.isTwitchStream = isTwitchStream; const isChurchStream = (stream) => { return stream.type === 'church'; }; exports.isChurchStream = isChurchStream; const isSrtStream = (stream) => { return stream.type === 'srt'; }; exports.isSrtStream = isSrtStream; const isDaCastStream = (stream) => { return stream.type === 'da_cast'; }; exports.isDaCastStream = isDaCastStream; const isHlsPullStream = (stream) => { return stream.type === 'hls_pull'; }; exports.isHlsPullStream = isHlsPullStream; const isHlsPushStream = (stream) => { return stream.type === 'hls_push'; }; exports.isHlsPushStream = isHlsPushStream; const isWowzaStream = (stream) => { return stream.type === 'wowza'; }; exports.isWowzaStream = isWowzaStream; const isDailymotionStream = (stream) => { return stream.type === 'dailymotion'; }; exports.isDailymotionStream = isDailymotionStream; const isIbmStream = (stream) => { return stream.type === 'ibm'; }; exports.isIbmStream = isIbmStream; const isMicrosoftAzureStream = (stream) => { return stream.type === 'microsoft_azure'; }; exports.isMicrosoftAzureStream = isMicrosoftAzureStream; const isMicrosoftStream = (stream) => { return stream.type === 'microsoft_stream'; }; exports.isMicrosoftStream = isMicrosoftStream; const isGameChangerStream = (stream) => { return stream.type === 'game_changer'; }; exports.isGameChangerStream = isGameChangerStream; const isYoutubeRtmpStream = (stream) => { return stream.type === 'youtube_rtmp'; }; exports.isYoutubeRtmpStream = isYoutubeRtmpStream; var AudioType; (function (AudioType) { AudioType[AudioType["MP3"] = 0] = "MP3"; AudioType[AudioType["AAC"] = 1] = "AAC"; })(AudioType || (exports.AudioType = AudioType = {})); exports.audioFileStorageTypeSchema = zod_1.z.union([zod_1.z.literal('flash'), zod_1.z.literal('SD0'), zod_1.z.literal('url')]); exports.storageListSchema = zod_1.z.array(zod_1.z.discriminatedUnion('type', [ zod_1.z.object({ type: zod_1.z.literal('flash'), flash: zod_1.z.string(), }), zod_1.z.object({ type: zod_1.z.literal('SD0'), SD0: zod_1.z.string(), }), ])); exports.audioFileSchema = zod_1.z.object({ name: zod_1.z.string(), path: zod_1.z.string(), storage: exports.audioFileStorageTypeSchema, }); exports.audioFileListSchema = zod_1.z.array(exports.audioFileSchema); exports.audioUrlSchema = zod_1.z.object({ fileUrl: zod_1.z.string(), name: zod_1.z.string(), storage: zod_1.z.literal('url'), }); exports.audioLocalSchema = zod_1.z.object({ file: common_1.fileSchema, name: zod_1.z.string(), storage: zod_1.z.enum(['flash', 'SD0']), });