Repository navigation
fix(producer): derive segmented capture container extension from output format - #6878
Open
DaKaufeeBoii wants to merge 1 commit into
Open
DaKaufeeBoii wants to merge 1 commit into
DaKaufeeBoii wants to merge 1 commit into
Conversation
…ut format Pass container extension to segmentOutputPath based on videoOnlyPath or outputFormat so segmented renders targeting MOV/ProRes do not fail due to hardcoded .mp4 segment filenames. Fixes heygen-com#6481
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #6481
When rendering with segmented capture (
HF_SEGMENTED_CAPTURE=trueor long durations) targeting--format mov(ProRes 4444 / alpha), the first segment encode fails becausesegmentOutputPathhardcoded.mp4, causing FFmpeg to reject ProRes in an MP4 container (Could not find tag for codec prores ... codec not currently supported in container).Changes
segmentOutputPathinpackages/producer/src/services/render/stages/captureSegmentedStage.tsto accept an optional container extension (defaulting to"mp4").input.videoOnlyPathorinput.outputFormat.segmentExtensionintoSegmentRunandSegmentCaptureContextso individual segment outputs and final concatenation maintain matching container extensions (.movfor MOV/ProRes,.mp4for MP4).packages/producer/src/services/render/stages/captureSegmentedStage.test.tsverifyingsegmentOutputPathwith custom extensions and asserting that--format movsegmented runs spawn encoders and concat with.movsegment paths.Verification
captureSegmentedStage.test.tspass cleanly.!non-null assertions, zeroany).