BerriAI/litellm · error · ValueError
Video URL not found in response. Video may not be ready yet.
Error message
Video URL not found in response. Video may not be ready yet.
What it means
Fallback guard while extracting a video URL: output was empty and the status is neither a known processing state nor FAILED, so the code cannot tell whether the video will appear; raised to avoid silently returning nothing.
Source
Thrown at litellm/llms/runwayml/videos/transformation.py:378
Helper method to extract video URL from RunwayML response.
Shared between sync and async transforms.
"""
# Extract video URL from the output field
video_url = None
if "output" in response_data and response_data["output"]:
output: Final = response_data["output"]
video_url = output[0] if isinstance(output, list) else output
if not video_url:
# Check if the video generation failed or is still processing
status: Final = response_data.get("status", "UNKNOWN")
if status in ["PENDING", "RUNNING", "THROTTLED"]:
raise ValueError(f"Video is still processing (status: {status}). Please wait and try again.")
elif status == "FAILED":
failure_reason: Final = response_data.get("failure", "Unknown error")
raise ValueError(f"Video generation failed: {failure_reason}")
else:
raise ValueError("Video URL not found in response. Video may not be ready yet.")
return video_url
def transform_video_content_response(
self,
raw_response: httpx.Response,
logging_obj: LiteLLMLoggingObj,
) -> bytes:
"""
Transform the RunwayML video content download response (synchronous).
RunwayML's task endpoint returns JSON with a video URL in the output field.
We need to extract the URL and download the video.
Example response:
{
"id":"63fd0f13-f29d-4e58-99d3-1cb9efa14a5b",
"createdAt":"2025-11-11T21:48:50.448Z",View on GitHub (pinned to 77b7c6c40c)
Solutions
- The video may not be ready; poll the task again later.
- If the task is complete, inspect the response payload for the output URL field.
Example fix
# retry retrieval after the task reaches SUCCEEDED status.
Defensive patterns
Strategy: type-guard
When it happens
Trigger: Triggered when the RunwayML video response contains no video URL, typically because the video is not ready.
Common situations: See trigger scenarios.
AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18).
Data as JSON: /api/errors/620c52a55ce6ee4b.
Report an issue: GitHub.