@remotion/cloudrun 4.0.447 → 4.0.448

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -75,7 +75,7 @@ export type RenderMediaOnCloudrunInput = {
75
75
  renderIdOverride?: z.infer<typeof CloudRunPayload>['renderIdOverride'];
76
76
  renderStatusWebhook?: z.infer<typeof CloudRunPayload>['renderStatusWebhook'];
77
77
  } & Partial<ToOptions<typeof BrowserSafeApis.optionsMap.renderMediaOnCloudRun>>;
78
- export declare const internalRenderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, renderIdOverride, renderStatusWebhook, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, downloadBehavior, metadata, mediaCacheSizeInBytes, }: InternalRenderMediaOnCloudrun) => Promise<{
78
+ export declare const internalRenderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, renderIdOverride, renderStatusWebhook, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, downloadBehavior, metadata, mediaCacheSizeInBytes, sampleRate, }: InternalRenderMediaOnCloudrun) => Promise<{
79
79
  type: "success";
80
80
  publicUrl?: string | null | undefined;
81
81
  cloudStorageUri: string;
@@ -91,7 +91,7 @@ export declare const internalRenderMediaOnCloudrun: ({ cloudRunUrl, serviceName,
91
91
  requestCrashTime: string;
92
92
  requestElapsedTimeInSeconds: number;
93
93
  }>;
94
- export declare const renderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, }: RenderMediaOnCloudrunInput) => Promise<{
94
+ export declare const renderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, sampleRate, }: RenderMediaOnCloudrunInput) => Promise<{
95
95
  type: "success";
96
96
  publicUrl?: string | null | undefined;
97
97
  cloudStorageUri: string;
@@ -11,7 +11,7 @@ const validate_serveurl_1 = require("../shared/validate-serveurl");
11
11
  const get_or_create_bucket_1 = require("./get-or-create-bucket");
12
12
  const get_auth_client_for_url_1 = require("./helpers/get-auth-client-for-url");
13
13
  const get_cloudrun_endpoint_1 = require("./helpers/get-cloudrun-endpoint");
14
- const internalRenderMediaOnCloudrunRaw = async ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, renderIdOverride, renderStatusWebhook, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, downloadBehavior, metadata, mediaCacheSizeInBytes, }) => {
14
+ const internalRenderMediaOnCloudrunRaw = async ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, renderIdOverride, renderStatusWebhook, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, offthreadVideoThreads, colorSpace, downloadBehavior, metadata, mediaCacheSizeInBytes, sampleRate, }) => {
15
15
  const actualCodec = (0, validate_gcp_codec_1.validateCloudrunCodec)(codec);
16
16
  (0, validate_serveurl_1.validateServeUrl)(serveUrl);
17
17
  if (privacy)
@@ -62,6 +62,7 @@ const internalRenderMediaOnCloudrunRaw = async ({ cloudRunUrl, serviceName, regi
62
62
  concurrency: concurrency !== null && concurrency !== void 0 ? concurrency : null,
63
63
  enforceAudioTrack: enforceAudioTrack !== null && enforceAudioTrack !== void 0 ? enforceAudioTrack : false,
64
64
  preferLossless: preferLossless !== null && preferLossless !== void 0 ? preferLossless : false,
65
+ sampleRate: sampleRate !== null && sampleRate !== void 0 ? sampleRate : 48000,
65
66
  offthreadVideoCacheSizeInBytes: offthreadVideoCacheSizeInBytes !== null && offthreadVideoCacheSizeInBytes !== void 0 ? offthreadVideoCacheSizeInBytes : null,
66
67
  offthreadVideoThreads: offthreadVideoThreads !== null && offthreadVideoThreads !== void 0 ? offthreadVideoThreads : null,
67
68
  colorSpace: colorSpace !== null && colorSpace !== void 0 ? colorSpace : null,
@@ -139,7 +140,7 @@ exports.internalRenderMediaOnCloudrun = (0, error_handling_1.wrapWithErrorHandli
139
140
  * @description Initiates a media rendering process on the Remotion Cloud Run service, facilitating configurations like service region, project composition, and output settings.
140
141
  * @see [Documentation](https://remotion.dev/docs/cloudrun/rendermediaoncloudrun)
141
142
  */
142
- const renderMediaOnCloudrun = ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, }) => {
143
+ const renderMediaOnCloudrun = ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, sampleRate, }) => {
143
144
  return (0, exports.internalRenderMediaOnCloudrun)({
144
145
  cloudRunUrl: cloudRunUrl !== null && cloudRunUrl !== void 0 ? cloudRunUrl : undefined,
145
146
  serviceName: serviceName !== null && serviceName !== void 0 ? serviceName : undefined,
@@ -190,6 +191,7 @@ const renderMediaOnCloudrun = ({ cloudRunUrl, serviceName, region, serveUrl, com
190
191
  renderStatusWebhook: renderStatusWebhook !== null && renderStatusWebhook !== void 0 ? renderStatusWebhook : undefined,
191
192
  offthreadVideoThreads: offthreadVideoThreads !== null && offthreadVideoThreads !== void 0 ? offthreadVideoThreads : null,
192
193
  mediaCacheSizeInBytes: mediaCacheSizeInBytes !== null && mediaCacheSizeInBytes !== void 0 ? mediaCacheSizeInBytes : null,
194
+ sampleRate: sampleRate !== null && sampleRate !== void 0 ? sampleRate : 48000,
193
195
  });
194
196
  };
195
197
  exports.renderMediaOnCloudrun = renderMediaOnCloudrun;
@@ -14,7 +14,7 @@ const cloudrun_crash_logs_1 = require("../../helpers/cloudrun-crash-logs");
14
14
  const log_1 = require("../../log");
15
15
  const renderArgsCheck_1 = require("./helpers/renderArgsCheck");
16
16
  exports.RENDER_COMMAND = 'render';
17
- const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, offthreadVideoThreadsOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, numberOfGifLoopsOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, binariesDirectoryOption, metadataOption, mediaCacheSizeInBytesOption, darkModeOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, } = client_1.BrowserSafeApis.options;
17
+ const { audioBitrateOption, x264Option, offthreadVideoCacheSizeInBytesOption, offthreadVideoThreadsOption, scaleOption, crfOption, jpegQualityOption, videoBitrateOption, enforceAudioOption, mutedOption, colorSpaceOption, numberOfGifLoopsOption, enableMultiprocessOnLinuxOption, glOption, headlessOption, encodingMaxRateOption, encodingBufferSizeOption, delayRenderTimeoutInMillisecondsOption, binariesDirectoryOption, metadataOption, mediaCacheSizeInBytesOption, darkModeOption, pixelFormatOption, browserExecutableOption, everyNthFrameOption, proResProfileOption, userAgentOption, disableWebSecurityOption, ignoreCertificateErrorsOption, overrideHeightOption, overrideWidthOption, overrideFpsOption, overrideDurationOption, sampleRateOption, } = client_1.BrowserSafeApis.options;
18
18
  const renderCommand = async (args, remotionRoot, logLevel) => {
19
19
  var _a, _b, _c, _d;
20
20
  const { serveUrl, cloudRunUrl, outName, forceBucketName, downloadName, privacy, region, } = await (0, renderArgsCheck_1.renderArgsCheck)(exports.RENDER_COMMAND, args, logLevel);
@@ -122,6 +122,7 @@ const renderCommand = async (args, remotionRoot, logLevel) => {
122
122
  offthreadVideoCacheSizeInBytes,
123
123
  binariesDirectory,
124
124
  forceIPv4: false,
125
+ sampleRate: 48000,
125
126
  });
126
127
  const indent = false;
127
128
  const { compositionId } = await cli_1.CliInternals.getCompositionWithDimensionOverride({
@@ -245,6 +246,9 @@ ${downloadName ? ` Downloaded File = ${downloadName}` : ''}
245
246
  const metadata = metadataOption.getValue({
246
247
  commandLine: cli_1.CliInternals.parsedCli,
247
248
  }).value;
249
+ const sampleRate = sampleRateOption.getValue({
250
+ commandLine: cli_1.CliInternals.parsedCli,
251
+ }).value;
248
252
  const res = await (0, render_media_on_cloudrun_1.internalRenderMediaOnCloudrun)({
249
253
  cloudRunUrl,
250
254
  serviceName: undefined,
@@ -302,6 +306,7 @@ ${downloadName ? ` Downloaded File = ${downloadName}` : ''}
302
306
  : null,
303
307
  offthreadVideoThreads,
304
308
  mediaCacheSizeInBytes,
309
+ sampleRate,
305
310
  });
306
311
  if (res.type === 'crash') {
307
312
  (0, cloudrun_crash_logs_1.displayCrashLogs)(res, logLevel);
@@ -93,6 +93,7 @@ const stillCommand = async (args, remotionRoot, logLevel) => {
93
93
  offthreadVideoCacheSizeInBytes,
94
94
  binariesDirectory,
95
95
  forceIPv4: false,
96
+ sampleRate: 48000,
96
97
  });
97
98
  const indent = false;
98
99
  const { compositionId } = await cli_1.CliInternals.getCompositionWithDimensionOverride({
@@ -41,6 +41,7 @@ export declare const getCompositionFromBody: (body: {
41
41
  concurrency: string | number | null;
42
42
  enforceAudioTrack: boolean;
43
43
  preferLossless: boolean;
44
+ sampleRate: number;
44
45
  offthreadVideoCacheSizeInBytes: number | null;
45
46
  mediaCacheSizeInBytes: number | null;
46
47
  offthreadVideoThreads: number | null;
@@ -115,6 +115,7 @@ export declare const CloudRunPayload: z.ZodDiscriminatedUnion<[z.ZodObject<{
115
115
  concurrency: z.ZodNullable<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
116
116
  enforceAudioTrack: z.ZodBoolean;
117
117
  preferLossless: z.ZodBoolean;
118
+ sampleRate: z.ZodNumber;
118
119
  offthreadVideoCacheSizeInBytes: z.ZodNullable<z.ZodNumber>;
119
120
  mediaCacheSizeInBytes: z.ZodNullable<z.ZodNumber>;
120
121
  offthreadVideoThreads: z.ZodNullable<z.ZodNumber>;
@@ -68,6 +68,7 @@ exports.CloudRunPayload = zod_1.z.discriminatedUnion('type', [
68
68
  concurrency: zod_1.z.number().or(zod_1.z.string()).nullable(),
69
69
  enforceAudioTrack: zod_1.z.boolean(),
70
70
  preferLossless: zod_1.z.boolean(),
71
+ sampleRate: zod_1.z.number(),
71
72
  offthreadVideoCacheSizeInBytes: zod_1.z.number().nullable(),
72
73
  mediaCacheSizeInBytes: zod_1.z.number().nullable(),
73
74
  offthreadVideoThreads: zod_1.z.number().nullable(),
@@ -42,6 +42,7 @@ export declare const renderMediaSingleThread: (body: {
42
42
  concurrency: string | number | null;
43
43
  enforceAudioTrack: boolean;
44
44
  preferLossless: boolean;
45
+ sampleRate: number;
45
46
  offthreadVideoCacheSizeInBytes: number | null;
46
47
  mediaCacheSizeInBytes: number | null;
47
48
  offthreadVideoThreads: number | null;
@@ -11,7 +11,7 @@ const get_download_behavior_setting_1 = require("./helpers/get-download-behavior
11
11
  const write_cloudrun_error_1 = require("./helpers/write-cloudrun-error");
12
12
  const renderMediaSingleThread = async (body, res) => {
13
13
  var _a, _b, _c, _d, _e, _f;
14
- var _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1;
14
+ var _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2;
15
15
  if (body.type !== 'media') {
16
16
  throw new Error('expected type media');
17
17
  }
@@ -156,13 +156,14 @@ const renderMediaSingleThread = async (body, res) => {
156
156
  onLog: renderer_1.RenderInternals.defaultOnLog,
157
157
  licenseKey: null,
158
158
  isProduction: null,
159
+ sampleRate: (_1 = body.sampleRate) !== null && _1 !== void 0 ? _1 : 48000,
159
160
  });
160
161
  const storage = new storage_1.Storage();
161
162
  const publicUpload = body.privacy === 'public' || !body.privacy;
162
163
  const uploadedResponse = await storage
163
164
  .bucket(body.outputBucket)
164
165
  .upload(tempFilePath, {
165
- destination: `renders/${renderId}/${(_1 = body.outName) !== null && _1 !== void 0 ? _1 : defaultOutName}`,
166
+ destination: `renders/${renderId}/${(_2 = body.outName) !== null && _2 !== void 0 ? _2 : defaultOutName}`,
166
167
  predefinedAcl: publicUpload ? 'publicRead' : 'projectPrivate',
167
168
  metadata: (0, get_download_behavior_setting_1.getDownloadBehaviorSetting)(body.downloadBehavior),
168
169
  });
@@ -42,6 +42,7 @@ export declare const renderStillSingleThread: (body: {
42
42
  concurrency: string | number | null;
43
43
  enforceAudioTrack: boolean;
44
44
  preferLossless: boolean;
45
+ sampleRate: number;
45
46
  offthreadVideoCacheSizeInBytes: number | null;
46
47
  mediaCacheSizeInBytes: number | null;
47
48
  offthreadVideoThreads: number | null;
package/dist/index.d.ts CHANGED
@@ -16,7 +16,7 @@ import type { GcpRegion } from './pricing/gcp-regions';
16
16
  /**
17
17
  * @deprecated Import this from `@remotion/cloudrun/client` instead
18
18
  */
19
- declare const renderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, }: RenderMediaOnCloudrunInput) => Promise<{
19
+ declare const renderMediaOnCloudrun: ({ cloudRunUrl, serviceName, region, serveUrl, composition, inputProps, codec, forceBucketName, privacy, outName, updateRenderProgress, jpegQuality, audioCodec, audioBitrate, videoBitrate, encodingMaxRate, encodingBufferSize, proResProfile, x264Preset, crf, pixelFormat, imageFormat, scale, everyNthFrame, numberOfGifLoops, frameRange, envVariables, chromiumOptions, muted, forceWidth, forceHeight, forceFps, forceDurationInFrames, logLevel, delayRenderTimeoutInMilliseconds, concurrency, enforceAudioTrack, preferLossless, offthreadVideoCacheSizeInBytes, colorSpace, downloadBehavior, metadata, renderIdOverride, renderStatusWebhook, offthreadVideoThreads, mediaCacheSizeInBytes, sampleRate, }: RenderMediaOnCloudrunInput) => Promise<{
20
20
  type: "crash";
21
21
  cloudRunEndpoint: string;
22
22
  message: "Service crashed without sending a response. Check the logs in GCP console.";
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "url": "https://github.com/remotion-dev/remotion/tree/main/packages/cloudrun"
4
4
  },
5
5
  "name": "@remotion/cloudrun",
6
- "version": "4.0.447",
6
+ "version": "4.0.448",
7
7
  "description": "Render Remotion videos on Google Cloud Run",
8
8
  "main": "dist/index.js",
9
9
  "sideEffects": false,
@@ -21,17 +21,17 @@
21
21
  "@google-cloud/storage": "7.15.2",
22
22
  "@google-cloud/resource-manager": "5.3.1",
23
23
  "@google-cloud/logging": "11.2.0",
24
- "@remotion/bundler": "4.0.447",
25
- "@remotion/cli": "4.0.447",
26
- "@remotion/renderer": "4.0.447",
24
+ "@remotion/bundler": "4.0.448",
25
+ "@remotion/cli": "4.0.448",
26
+ "@remotion/renderer": "4.0.448",
27
27
  "google-auth-library": "8.7.0",
28
- "remotion": "4.0.447",
28
+ "remotion": "4.0.448",
29
29
  "zod": "4.3.6"
30
30
  },
31
31
  "devDependencies": {
32
- "@remotion/compositor-linux-x64-gnu": "4.0.447",
32
+ "@remotion/compositor-linux-x64-gnu": "4.0.448",
33
33
  "@types/minimist": "1.2.2",
34
- "@remotion/eslint-config-internal": "4.0.447",
34
+ "@remotion/eslint-config-internal": "4.0.448",
35
35
  "eslint": "9.19.0",
36
36
  "@types/node": "20.12.14",
37
37
  "@typescript/native-preview": "7.0.0-dev.20260217.1"