camstreamerlib
Version:
Helper library for CamStreamer ACAP applications.
161 lines (160 loc) • 6.42 kB
JavaScript
;
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']),
});