Skip to content

feat: Add FFmpeg movie from job output sample job bundle#204

Draft
rickrams wants to merge 1 commit intoaws-deadline:mainlinefrom
rickrams:feat/ffmpeg-movie-from-job-output
Draft

feat: Add FFmpeg movie from job output sample job bundle#204
rickrams wants to merge 1 commit intoaws-deadline:mainlinefrom
rickrams:feat/ffmpeg-movie-from-job-output

Conversation

@rickrams
Copy link
Copy Markdown
Contributor

Add a new job bundle that downloads the output of a completed render job in the same queue and encodes the image sequence into an MP4 video using FFmpeg. Configurable parameters include frame rate, encoding preset, quality (CRF), pixel format, and resolution.

The job uses the deadline.job_attachments Python API to download outputs and FFmpeg from conda-forge for video encoding. A pre-submission hook injects the queue's S3 bucket settings so no additional IAM permissions are needed on the queue role. Image format is auto-detected from the downloaded files.

Given it uses hooks that is merged but not release will leave this in draft for now.

What was the problem/requirement? (What/Why)

Wanted to be able to turn frames created in one jobo on the farm into a movie without having to download and re-upload the frames.

How was this change tested?

Submitted using a variety of test jobs with different frame formats and extensions

Was this change documented?

Sample has a readme.


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Add a new job bundle that downloads the output of a completed render job
in the same queue and encodes the image sequence into an MP4 video using
FFmpeg. Configurable parameters include frame rate, encoding preset,
quality (CRF), pixel format, and resolution.

The job uses the deadline.job_attachments Python API to download outputs
and FFmpeg from conda-forge for video encoding. A pre-submission hook
injects the queue's S3 bucket settings so no additional IAM permissions
are needed on the queue role. Image format is auto-detected from the
downloaded files.

Signed-off-by: Rick Ramsay <49293857+rickrams@users.noreply.github.com>
@rickrams rickrams requested a review from a team as a code owner April 20, 2026 18:08
@rickrams rickrams marked this pull request as draft April 20, 2026 18:09
@github-actions github-actions Bot added the waiting-on-maintainers Waiting on the maintainers to review. label Apr 20, 2026
@@ -0,0 +1,5 @@
version: "1.0"
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we mean to check this in?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes! based on feedback on the hooks PR hooks files have a version - https://github.com/aws-deadline/deadline-cloud/blob/mainline/docs/submission-hooks.md

type: TEXT
runnable: true
data: |
#!/bin/env bash
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use only 1 programming language? EG all in python? A mixed shell + Python template is a bit odd.

And can we move the inline code to a file and we run the file? (Readability question)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

waiting-on-maintainers Waiting on the maintainers to review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants