{"record":{"id":"51c55309534ed408","repo":"remotion-dev/remotion","slug":"quality-has-been-renamed-to-jpegquality-please-re","errorCode":null,"errorMessage":"quality has been renamed to jpegQuality. Please rename the option.","messagePattern":"quality has been renamed to jpegQuality\\. Please rename the option\\.","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/lambda-client/src/render-media-on-lambda.ts","lineNumber":242,"sourceCode":"\n/*\n * @description Kicks off a render process on Remotion Lambda. The progress can be tracked using getRenderProgress().\n * @see [Documentation](https://remotion.dev/docs/lambda/rendermediaonlambda)\n */\nexport const renderMediaOnLambda = (\n\toptions: RenderMediaOnLambdaInput,\n): Promise<RenderMediaOnLambdaOutput> => {\n\tif (\n\t\tArray.isArray(options.frameRange) &&\n\t\tArray.isArray(options.frameRange[0])\n\t) {\n\t\tthrow new Error(\n\t\t\t'Multiple frame ranges are not supported on Lambda. Use renderMedia() locally to render multiple ranges.',\n\t\t);\n\t}\n\n\tif (options.quality) {\n\t\tthrow new Error(\n\t\t\t'quality has been renamed to jpegQuality. Please rename the option.',\n\t\t);\n\t}\n\n\treturn wrapped(renderMediaOnLambdaOptionalToRequired(options));\n};\n\n/**\n * @deprecated Renamed to renderMediaOnLambda()\n */\nexport const renderVideoOnLambda = renderMediaOnLambda;\n","sourceCodeStart":224,"sourceCodeEnd":254,"githubUrl":"https://github.com/remotion-dev/remotion/blob/78fe4bb3fdb5a2cd68724393d63cb223db333fa7/packages/lambda-client/src/render-media-on-lambda.ts#L224-L254","documentation":"renderMediaOnLambda throws immediately if options.quality is truthy, because the option was renamed to jpegQuality. This is a hard guard at the API boundary to force callers to migrate, since passing quality would otherwise be silently ignored.","triggerScenarios":"Calling renderMediaOnLambda with a truthy options.quality value (any non-null/undefined/0/'' value).","commonSituations":"Upgrading @remotion/lambda across the version that renamed quality -> jpegQuality without updating call sites; copy-pasting an older example or tutorial; renaming only the type but not runtime usage.","solutions":["Rename the quality option to jpegQuality at every renderMediaOnLambda call site.","Run a repo-wide search for 'quality' to find any remaining occurrences in render calls.","Check the migration/release notes for the version you upgraded to."],"exampleFix":"// before\nawait renderMediaOnLambda({ composition: 'Main', quality: 80 });\n\n// after\nawait renderMediaOnLambda({ composition: 'Main', jpegQuality: 80 });","handlingStrategy":"type-guard","validationCode":"// Strip renamed option and warn early\nif ('quality' in opts) {\n  console.warn('quality is renamed to jpegQuality');\n  opts.jpegQuality = (opts as any).quality;\n  delete (opts as any).quality;\n}","typeGuard":"type HasRenamedQuality = { quality?: unknown };\nconst hasOldQuality = (o: unknown): o is HasRenamedQuality =>\n  typeof o === 'object' && o !== null && 'quality' in o && (o as any).quality != null;","tryCatchPattern":null,"preventionTips":["After upgrading @remotion/lambda, search the codebase for 'quality' and rename.","Lock the version range and read release notes for option renames.","Add a unit test asserting the new option name is used."],"tags":["api-rename","deprecation","input-validation","lambda","migration"],"backgroundTag":null,"analyzedSha":"78fe4bb3fdb5a2cd68724393d63cb223db333fa7","analyzedAt":"2026-08-12T17:18:50.444Z","schemaVersion":2},"datasetVersion":"2026-08-12T23:17:12.415Z"}