Repository navigation
Conversation
Resolve and stage music assets, translate fade settings, reject missing local files, preserve existing audio layers, and handle zero-duration fades. Add offline regression coverage and opt-in browser render tests. Adapted from upstream OpenMontageInc#938 without its FFmpeg audio replacement behavior.
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.
Documented
edit_decisions.audio.music.asset_idconfigurations could render without background music because asset resolution, staging, and the composition prop shapes did not connect. This change resolves the track against the manifest and sends a playable source and translated fade settings to the existing CinematicRenderer and Explainer compositions.Changes
audio.music, legacy top-levelmusic, and existing direct source formats through the Remotion adapter.Adapted from upstream OpenMontageInc#938 (issue OpenMontageInc#937). The upstream FFmpeg music-to-
audio_pathchange is intentionally excluded: that path replaces existing dialogue/SFX and bypasses music volume/fades. FFmpeg, HyperFrames, atelier routing, and existing complete-mix behavior are unchanged.Independently verified
make lint, changed Python compilation, Node helper syntax, and patch whitespace/application checks passed.Required before merge
A full Remotion video render is not verified. The first local browser test aborted because Chromium could not create a required local socket:
socket() failed: Operation not permitted (1)(SIGABRT). The remaining browser tests were not run; the six opt-in cases are skipped in the normal suite. The FFmpeg diagnostics are intermediate-contract evidence, not end-to-end Remotion renders.On a host with existing dependencies and working Chromium, run:
Keep this PR in draft until those tests pass. No generation APIs, publishing, paid credits, or dependency installations were used for the local verification.