Video Endpoints
This package owns OpenAI-compatible video endpoint families.
video_api_utils.py vs video/generation/helpers.py (no overlap)
openai/video_api_utils.py |
openai/video/generation/helpers.py |
|
|---|---|---|
| Layer | Shared video media utils | /v1/videos* endpoint helpers |
| Longevity | Temporary. TODO(#5227, P1.3): move/tidy into family media.py |
Longer home for generation resource logic through P0.2/P0.3; P1.3 may split further |
| PUT HERE | Decode/encode URLs and bytes, frame/audio coercion, streaming encoders | Multipart form parsing, MiniMax upload limits, job runner/cleanup, VideoResponse factory, runtime context from app state |
| DO NOT PUT HERE | Form/job/store orchestration | Reimplemented encode/decode |
| Typical importers | serving_video.py, streaming output, generation helpers |
api_server.py video routes (later generation/api_router.py) |
| May import the other? | No — must not import video.generation.helpers |
Yes — may call video_api_utils |
Prefer growing generation/helpers.py. Do not grow root video_api_utils.py unless the symbol is clearly shared media.
Put Here
- Video generation/resource endpoint code under
generation/. - Generated video streaming-output code under a dedicated subpackage when that route moves.
- Video-specific request parsing, response formatting, and storage/job helpers for the owning subpackage.
Do Not Put Here
- Live streaming-input chat sessions such as
/v1/video/chat/stream; those should get their own route-owner package in the router split rather than living under video generation. - Generic server utilities.
- Shared media encode/decode that already lives in root
video_api_utils.py. - Image or audio endpoint behavior.