UNPKG

@remotion/studio

Version:

APIs for interacting with the Remotion Studio

42 lines (41 loc) 2.21 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDefaultCodecs = void 0; const client_1 = require("@remotion/renderer/client"); const pure_1 = require("@remotion/renderer/pure"); const getDefaultCodecs = ({ defaultConfigurationVideoCodec, compositionDefaultVideoCodec, renderType, defaultConfigurationAudioCodec, }) => { var _a; const userPreferredVideoCodec = (_a = compositionDefaultVideoCodec !== null && compositionDefaultVideoCodec !== void 0 ? compositionDefaultVideoCodec : defaultConfigurationVideoCodec) !== null && _a !== void 0 ? _a : 'h264'; const userPreferredVideoCodecForAudioTab = userPreferredVideoCodec === 'aac' ? 'aac' : userPreferredVideoCodec === 'mp3' ? 'mp3' : userPreferredVideoCodec === 'wav' ? 'wav' : defaultConfigurationAudioCodec === 'pcm-16' ? 'wav' : defaultConfigurationAudioCodec === 'mp3' ? 'mp3' : 'aac'; const isVideoCodecAnAudioCodec = pure_1.NoReactAPIs.isAudioCodec(userPreferredVideoCodec); if (isVideoCodecAnAudioCodec) { return { initialAudioCodec: null, initialRenderType: 'audio', initialVideoCodec: userPreferredVideoCodec, initialVideoCodecForAudioTab: userPreferredVideoCodecForAudioTab, initialVideoCodecForVideoTab: pure_1.NoReactAPIs.isAudioCodec(defaultConfigurationVideoCodec) ? 'h264' : defaultConfigurationVideoCodec, }; } const suitableAudioCodecForVideoCodec = client_1.BrowserSafeApis.defaultAudioCodecs[userPreferredVideoCodec].compressed; return { initialAudioCodec: defaultConfigurationAudioCodec !== null && defaultConfigurationAudioCodec !== void 0 ? defaultConfigurationAudioCodec : suitableAudioCodecForVideoCodec, initialVideoCodec: userPreferredVideoCodec, initialRenderType: renderType, initialVideoCodecForAudioTab: userPreferredVideoCodecForAudioTab, initialVideoCodecForVideoTab: userPreferredVideoCodec, }; }; exports.getDefaultCodecs = getDefaultCodecs;