Editable Jianying drafts are the reason to accept the constraints
Jianying Headless does more than render a video from a script. Its main macOS path builds a draft that can be opened and edited in Jianying Pro, supports multiple tracks, local media, text, basic keyframes, and a limited set of native effects, then exports through the installed Jianying engine. It can also inspect an existing project and modify an isolated copy rather than overwriting the source.
That editable handoff is the project's strongest reason to exist. MoviePy or FFmpeg can produce an MP4 with fewer moving parts, but they do not give an editor a Jianying timeline afterward. The cost is dependence on private application structures and native components that can change across builds. This repository is not an official SDK, and the README repeats that a version number alone does not establish compatibility.
The native path accepts specific Macs and Jianying builds
The getting-started guide calls for Apple Silicon, macOS 26.0 or newer, domestic Jianying Pro 11.5.0, or a compatible 11.4.2 profile. CapCut International is excluded. The documented environment also uses Python 3.9 or newer, FFmpeg, FFprobe, Xcode Command Line Tools, Apple clang 21.0.0, and the macOS 26.5 SDK. Native library hashes and signing identities are checked.
These checks are protective because silently accepting an unknown binary could create a corrupt draft or invoke the wrong component. They also make setup brittle. Issue 3 reports an exact native library hash mismatch on 11.5.0, while issue 27 requests support for 11.5.3. The README says clean-machine installation acceptance is still unfinished. A doctor pass proves only that the environment matches its rules, not that a particular edit looks or sounds correct.
What happened when we ran it
Our sandbox installed commit 42b3d75 in 11 seconds, adding 35 packages and occupying 37 MB. The build succeeded in 2 seconds. Pytest then failed after 119 seconds. The reported run ended with 134 passed, 165 failed, 7 skipped, and 1 collection/setup error out of 300, plus 403 passed subtests. The container had 3 CPUs, 8 GB of RAM, Python 3.12 on Debian, no secrets, and no elevated privileges.
The log tail repeatedly shows ValueError: Unstaged/unsupported export resource path: font_path in position-staging cases. It names audio, effect, filter, and text subtests, as well as checks for tampering, sidecar copies, wrapper fields, and zero-position behavior. Two text subtests show an empty resource path after the same message. That is what the log establishes. It does not tell us whether one defect, fixture state, or environment mismatch explains all 165 failures.
Pip-audit reported 0 known vulnerabilities. The checkout contained 99 files, about 12,269 lines of source, and occupied 11.5 MB. Our scan found 1 CI workflow, no Dockerfile, and a tests directory. A clean dependency audit and successful build are useful, but they do not outweigh a suite where more tests failed than passed.
The Windows route produces an MP4, not a Jianying project
Windows users get a separate FFmpeg backend with an English guide. It validates a render snapshot and can output H.264/AAC video with the documented video, audio, and basic text support. It does not install or call Jianying, and it does not create an editable Jianying draft. Treating it as platform parity would erase the feature that distinguishes this project.
The split can still be practical. A Windows worker can render a constrained plan, while a matching Mac handles the native draft path. Yet those outputs have different capabilities and acceptance criteria. The README notes an intermittent missing-frame problem for image and GIF samples, and issue 20 records 59 of 60 or 1506 of 1507 frames in affected exports. Strict checking rejects such output rather than hiding the mismatch.
The Hypit example proves one handoff, not a general converter
The published collaboration example lasts about 50.23 seconds and contains 23 tracks with 154 clips. The project says it built, opened, saved, cold-reopened, and exported that case in Jianying 11.5.0, with all 1507 frames present in its native export check. It also lists differences in fonts, word-level color animation, cropping, shadows, and one supplemental shot. Subjective audiovisual acceptance remains unfinished.
That honesty sets the right buying expectation. The converter is one-way and implemented per project. Manual edits in Jianying do not flow back to the original plan, and the repository does not promise lossless conversion of arbitrary Hypit work. Use the example as evidence that a specific structured handoff can work on the author's setup, not as a compatibility guarantee for your template library.
Noncommercial licensing changes the adoption decision
The original code uses a personal-learning and noncommercial license, with commercial use requiring written permission. The repository explicitly says it is not an MIT or Apache-2.0 package, and source licensing does not include Jianying integration rights, account entitlements, or media licenses. A company cannot treat the public GitHub checkout as approval for a production editing service.
GitHub showed 2,969 stars and 13 open issues and pull requests, split into 7 issues and 6 pull requests. The branch was pushed on September 27, 2026, and issue activity continued through October 4. There is no tagged release. This is active source-preview work around a moving proprietary application. Pair that status with the 165 failures we saw: evaluate it in a dedicated Mac lab before letting it touch an editor's only project copy.

