Dubbing: add lipsync, defaulting to on - #37
Merged
Merged
Conversation
Lightsage docs evalsWaiting for the staging docs URL before running evals. Lightsage will start the selected PR evals automatically when GitHub reports a successful docs deployment for this PR. This usually happens within 15 minutes. Commit: |
`lipsync=False` (`--no-lipsync` on the CLI) asks the backend to translate the audio without re-rendering the speaker's mouth. The video comes back at its original resolution and frame rate rather than re-rendered, and only the audio is replaced — so the mouths keep moving to the original language. Omitted from the form body when unset, like every other optional field here, so the server keeps owning the default and this package does not need republishing if that default ever moves. The CLI gets the negative flag only. Unlike `--ducking`, which is default-off server-side and so only useful in the positive direction, lipsync is default-on and the only direction worth spelling is turning it off. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014Y2tCTSPesvLbw3hcnQ5ct
steven-panxd
force-pushed
the
feat/dubbing-lipsync
branch
from
September 5, 2026 00:23
d92c022 to
115842b
Compare
steven-panxd
added a commit
that referenced
this pull request
Sep 5, 2026
Both packages gained the dubbing `lipsync` parameter in #37, so both get a minor bump. _version.py moves with pyproject.toml, which the guard added in #39 now enforces: `__version__` ships as the x-sonilo-client-version header, so a release that bumped only pyproject would have every client on 0.16.0 identifying itself as 0.15.4. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014Y2tCTSPesvLbw3hcnQ5ct
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.
lipsync=False(--no-lipsyncon the CLI) asks the backend to translate theaudio without re-rendering the speaker's mouth. The video comes back at its
original resolution and frame rate rather than re-rendered, and only the audio
is replaced — so the mouths keep moving to the original language.
Backend side: sonilo-ai/sonilo-api-dashboard#329, which in turn needs
sonilo-ai/sonilo-dubbing-pipeline#26 deployed first. Until then the parameter
is accepted and has no effect, so this is safe to merge but not worth
releasing ahead of them.
Omitted from the form body when unset, like every other optional field here,
so the server keeps owning the default and this package does not need
republishing if that default ever moves.
The CLI gets the negative flag only. Unlike
--ducking, which is default-offserver-side and so only useful in the positive direction, lipsync is
default-on and the only direction worth spelling is turning it off.
Threaded through both
submit()andgenerate()onDubbingandAsyncDubbing. Tests cover all three states at the form-body level; 290 SDKtests and 154 CLI tests pass.
🤖 Generated with Claude Code
https://claude.ai/code/session_014Y2tCTSPesvLbw3hcnQ5ct