mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
chore(video): rename stray remotion-renderer refs in sidecar + py docstrings (controller cleanup)
This commit is contained in:
@@ -579,7 +579,7 @@ X_FEATURE_SOURCE = "x_feature"
|
|||||||
X_SOURCES = (X_POST_SOURCE, X_REPLY_SOURCE, X_FEATURE_SOURCE)
|
X_SOURCES = (X_POST_SOURCE, X_REPLY_SOURCE, X_FEATURE_SOURCE)
|
||||||
|
|
||||||
# Source tag for a video-authoring task: the VideoEngine assigns this to a
|
# Source tag for a video-authoring task: the VideoEngine assigns this to a
|
||||||
# UX/UI dev to build a Remotion composition. Unlike X_SOURCES above it IS
|
# UX/UI dev to build a HyperFrames composition. Unlike X_SOURCES above it IS
|
||||||
# dispatched — a normal, pre-assigned delivery task like any other cell code
|
# dispatched — a normal, pre-assigned delivery task like any other cell code
|
||||||
# task — so it stays out of every held-source skip bucket.
|
# task — so it stays out of every held-source skip bucket.
|
||||||
VIDEO_SOURCE = "video"
|
VIDEO_SOURCE = "video"
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ CEO-scoped artifact" shape, but split across the real delivery lifecycle:
|
|||||||
|
|
||||||
* **Authoring task** (``source="video"``) — a normal, ASSIGNED delivery task
|
* **Authoring task** (``source="video"``) — a normal, ASSIGNED delivery task
|
||||||
(``confirmed_by_human=True``): the engine hands it straight to a ux-dev, who
|
(``confirmed_by_human=True``): the engine hands it straight to a ux-dev, who
|
||||||
authors a Remotion composition on a real branch through the standard
|
authors a HyperFrames composition on a real branch through the standard
|
||||||
claim -> code -> PR -> merge path. NOT held and NOT in any dispatcher's
|
claim -> code -> PR -> merge path. NOT held and NOT in any dispatcher's
|
||||||
skip bucket — it is a pre-assigned code task like any other.
|
skip bucket — it is a pre-assigned code task like any other.
|
||||||
* **Held draft** (``source="video_post"``) — materialized once a render pass
|
* **Held draft** (``source="video_post"``) — materialized once a render pass
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
// Build-time only: verify Chrome Headless Shell is installed so a
|
// Build-time only: verify Chrome Headless Shell is installed so a
|
||||||
// container's first real render isn't also the first time it fetches a
|
// container's first real render isn't also the first time it fetches a
|
||||||
// browser. Run once as a Docker RUN step after `pnpm install` (see
|
// browser. Run once as a Docker RUN step after `pnpm install` (see
|
||||||
// docker/remotion.Dockerfile).
|
// docker/video-renderer.Dockerfile).
|
||||||
//
|
//
|
||||||
// The actual download is performed by puppeteer's postinstall (approved in
|
// The actual download is performed by puppeteer's postinstall (approved in
|
||||||
// pnpm-workspace.yaml), which lands chrome-headless-shell in
|
// pnpm-workspace.yaml), which lands chrome-headless-shell in
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
// untar -> write per-render props.js -> HyperFrames createRenderJob +
|
// untar -> write per-render props.js -> HyperFrames createRenderJob +
|
||||||
// executeRenderJob. HyperFrames has no webpack bundling step (it loads the
|
// executeRenderJob. HyperFrames has no webpack bundling step (it loads the
|
||||||
// HTML directly in headless Chrome and captures frames via the beginFrame
|
// HTML directly in headless Chrome and captures frames via the beginFrame
|
||||||
// API), so the bundle-cache machinery the old Remotion path carried is gone
|
// API), so the bundle-cache machinery the old path carried is gone
|
||||||
// — every /render call extracts its own temp dir, renders, and cleans up.
|
// — every /render call extracts its own temp dir, renders, and cleans up.
|
||||||
//
|
//
|
||||||
// The per-request render OUTPUT (the rendered mp4) is never cached — every
|
// The per-request render OUTPUT (the rendered mp4) is never cached — every
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
// remotion-renderer — HTTP sidecar for the RoboCo video engine.
|
// video-renderer — HTTP sidecar for the RoboCo video engine.
|
||||||
//
|
//
|
||||||
// POST /render accepts a gzipped tar of a motion/ composition source (arcname
|
// POST /render accepts a gzipped tar of a motion/ composition source (arcname
|
||||||
// "motion") plus {composition_id, orientation, input_props} form fields, and
|
// "motion") plus {composition_id, orientation, input_props} form fields, and
|
||||||
@@ -86,7 +86,7 @@ app.post("/render", renderLimiter, upload.single("source"), async (req, res) =>
|
|||||||
res.setHeader("Content-Type", "video/mp4");
|
res.setHeader("Content-Type", "video/mp4");
|
||||||
const stream = createReadStream(outputLocation);
|
const stream = createReadStream(outputLocation);
|
||||||
stream.on("error", (err) => {
|
stream.on("error", (err) => {
|
||||||
console.error("remotion-renderer: stream error", err);
|
console.error("video-renderer: stream error", err);
|
||||||
if (!res.headersSent) {
|
if (!res.headersSent) {
|
||||||
res.status(500);
|
res.status(500);
|
||||||
}
|
}
|
||||||
@@ -114,7 +114,7 @@ app.post("/render", renderLimiter, upload.single("source"), async (req, res) =>
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const message = err instanceof Error ? err.message : String(err);
|
const message = err instanceof Error ? err.message : String(err);
|
||||||
console.error("remotion-renderer: render failed", message);
|
console.error("video-renderer: render failed", message);
|
||||||
res.status(500).json({ error: `render failed: ${message}` });
|
res.status(500).json({ error: `render failed: ${message}` });
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -131,10 +131,10 @@ app.use((err, req, res, _next) => {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const message = err instanceof Error ? err.message : String(err);
|
const message = err instanceof Error ? err.message : String(err);
|
||||||
console.error("remotion-renderer: unhandled error", message);
|
console.error("video-renderer: unhandled error", message);
|
||||||
res.status(500).json({ error: "internal error" });
|
res.status(500).json({ error: "internal error" });
|
||||||
});
|
});
|
||||||
|
|
||||||
app.listen(PORT, () => {
|
app.listen(PORT, () => {
|
||||||
console.log(`remotion-renderer listening on :${PORT}`);
|
console.log(`video-renderer listening on :${PORT}`);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user