remotion-dev/remotion · error · Exception

REMOTION_APP_FUNCTION_NAME is not set

Error message

REMOTION_APP_FUNCTION_NAME is not set

What it means

Raised by testclient_render_still.py when REMOTION_APP_FUNCTION_NAME is unset. Still rendering invokes the same deployed Lambda renderer function, so its name must be configured.

Source

Thrown at packages/lambda-python/testclient_render_still.py:17

import os

from remotion_lambda import RenderStillParams, Privacy, ValidStillImageFormats
from remotion_lambda import RemotionClient
from dotenv import load_dotenv


load_dotenv()

# Load env variables
REMOTION_APP_REGION = os.getenv('REMOTION_APP_REGION')
if not REMOTION_APP_REGION:
    raise Exception("REMOTION_APP_REGION is not set")

REMOTION_APP_FUNCTION_NAME = os.getenv('REMOTION_APP_FUNCTION_NAME')
if not REMOTION_APP_FUNCTION_NAME:
    raise Exception("REMOTION_APP_FUNCTION_NAME is not set")

REMOTION_APP_SERVE_URL = os.getenv('REMOTION_APP_SERVE_URL')
if not REMOTION_APP_SERVE_URL:
    raise Exception("REMOTION_APP_SERVE_URL is not set")

# Construct client
client = RemotionClient(region=REMOTION_APP_REGION,
                        serve_url=REMOTION_APP_SERVE_URL,
                        function_name=REMOTION_APP_FUNCTION_NAME)

# Set render still request
render_params = RenderStillParams(
    composition="still-helloworld",
    privacy=Privacy.PUBLIC,
    image_format=ValidStillImageFormats.JPEG,
    input_props={
        'message': 'Hello from props!'
    },

View on GitHub (pinned to 78fe4bb3fd)

Solutions

  1. Deploy a renderer function: `npx remotion lambda functions deploy`.
  2. Add `REMOTION_APP_FUNCTION_NAME=<name>` to .env.
  3. Verify with `npx remotion lambda functions ls` in REMOTION_APP_REGION.
  4. Run from packages/lambda-python so .env loads.

Example fix

// before
REMOTION_APP_FUNCTION_NAME=
// after
REMOTION_APP_FUNCTION_NAME=remotion-render-3-3-123-memo64
Defensive patterns

Strategy: validation

Validate before calling

import os
if not os.getenv('REMOTION_APP_FUNCTION_NAME'):
    raise SystemExit('REMOTION_APP_FUNCTION_NAME is not set. Deploy a function first.')

Type guard

def is_non_empty_str(v): return isinstance(v, str) and len(v) > 0

Try / catch

try:
    assert os.getenv('REMOTION_APP_FUNCTION_NAME')
except AssertionError:
    sys.exit(2)

Prevention

When it happens

Trigger: Running the still example before `npx remotion lambda functions deploy`, or with the function-name env var blank.

Common situations: No function deployed in the target region; env var name typo; deploying site without deploying the function.

Related errors


AI-assisted analysis of remotion-dev/remotion@78fe4bb3fd (2026-08-12). Data as JSON: /api/errors/89061d05484bc8d8. Report an issue: GitHub.