{"record":{"id":"a56387debbb28463","repo":"remotion-dev/remotion","slug":"color-correction-shader-link-failed-log-no","errorCode":null,"errorMessage":"Color correction shader link failed: ${log ?? '(no log)'}","messagePattern":"Color correction shader link failed: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/effects/src/color-correction.ts","lineNumber":344,"sourceCode":"\nconst createProgram = (gl: WebGL2RenderingContext): WebGLProgram => {\n\tconst vertexShader = compileShader(gl, gl.VERTEX_SHADER, VERTEX_SHADER);\n\tconst fragmentShader = compileShader(gl, gl.FRAGMENT_SHADER, FRAGMENT_SHADER);\n\tconst program = gl.createProgram();\n\tif (!program) {\n\t\tthrow new Error('Failed to create color correction shader program');\n\t}\n\n\tgl.attachShader(program, vertexShader);\n\tgl.attachShader(program, fragmentShader);\n\tgl.linkProgram(program);\n\tgl.deleteShader(vertexShader);\n\tgl.deleteShader(fragmentShader);\n\n\tif (!gl.getProgramParameter(program, gl.LINK_STATUS)) {\n\t\tconst log = gl.getProgramInfoLog(program);\n\t\tgl.deleteProgram(program);\n\t\tthrow new Error(\n\t\t\t`Color correction shader link failed: ${log ?? '(no log)'}`,\n\t\t);\n\t}\n\n\treturn program;\n};\n\nconst createTexture = (gl: WebGL2RenderingContext): WebGLTexture => {\n\tconst texture = gl.createTexture();\n\tif (!texture) {\n\t\tthrow new Error('Failed to create color correction texture');\n\t}\n\n\tgl.bindTexture(gl.TEXTURE_2D, texture);\n\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);\n\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\n\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n\tgl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);","sourceCodeStart":326,"sourceCodeEnd":362,"githubUrl":"https://github.com/remotion-dev/remotion/blob/78fe4bb3fdb5a2cd68724393d63cb223db333fa7/packages/effects/src/color-correction.ts#L326-L362","documentation":"Thrown by createProgram in the color correction effect when gl.getProgramParameter(program, LINK_STATUS) is false. Both shaders compiled, but linking them into a program failed; the driver's program info log is appended. For bundled, hand-written shaders this is normally a driver/version incompatibility rather than a parameter problem.","triggerScenarios":"At color-correction.ts:345 during setupColorCorrection after vertex and fragment shaders compiled and were attached. Linking failed and the info log (or '(no log)') is included in the message.","commonSituations":"A GL driver or Chromium version that compiles but cannot link the bundled shaders (e.g. varying/uniform mismatch exposed only by that driver), software GL with non-standard behavior, or a degraded context.","solutions":["Inspect the info log in the error for the exact link error (e.g. unresolved attribute/uniform).","Upgrade the GPU driver and Chromium/Chrome build used to render.","Move off software GL to a GPU-enabled environment.","File a Remotion issue with driver, Chrome version, and the log — shaders are library-controlled."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try {\n  await renderMedia({...});\n} catch (err) {\n  const msg = String(err);\n  if (/Color correction shader link failed/i.test(msg)) {\n    // link failure is driver/version-specific; report and switch environment\n    throw new Error(`Color-correction program link failed. Log: ${msg}`);\n  }\n  throw err;\n}","preventionTips":["Pin a known-good Chromium version and keep GPU drivers updated.","Avoid software GL for renders that use color correction.","Capture the linker log on failure and report it to Remotion with environment details.","Validate renders in the same environment used in production (not just local macOS)."],"tags":["webgl","shader","glsl","color-correction","driver-compatibility","linker","rendering"],"backgroundTag":null,"analyzedSha":"78fe4bb3fdb5a2cd68724393d63cb223db333fa7","analyzedAt":"2026-08-12T17:18:50.444Z","schemaVersion":2},"datasetVersion":"2026-08-12T23:17:12.415Z"}