Release v0.3.0-rc1 #6
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/moar"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Cuts v0.3.0-rc1 (release candidate). Merging this triggers tagging → the pipeline builds + publishes all artifacts incl. the NVIDIA
-nvencbinary, marked as a pre-release.Added
soundy-bits render …, native-only). The same binary renders aclip to an MP4 (H.264 video + Opus audio, in sync) or a PNG frame sequence with no window or
display — deterministic and reproducible, runnable on a headless server. Reuses the real
visualization/post-process plugins via an offscreen
RenderTarget::Image+gpu_readback, afixed-step clock, and a frame-indexed offline audio pump. Encoding is a pluggable
VideoSink/VideoEncoderseam (src/headless/) so AV1 can drop in. Requireslibopus-devatbuild time and
libopus.soat runtime.--features nvenc, NVIDIA) — auto-selected by default with thesoftware encoder as fallback; capped-VBR with a configurable
--bitrate. The crate vendors itsheaders and dlopens the driver at runtime, so it builds with no CUDA toolkit (but hard-links the
NVIDIA encode lib, so the
nvencbinary only runs on NVIDIA hosts — hence an opt-in feature, notdefault). Reuses a pooled, pipelined set of NVENC buffers, so a full song renders at ~7× real
time at 1080p60 (≈420 fps on a 4090) and exits cleanly.
rendering, constant-QP + multi-slice so it parallelizes across cores, parallel RGBA→I420.
--encoder auto|hw|sw,--bitrate <Mbps>(NVENC),--quality <QP>(software CQP,default 22),
--speed(faster software),--software(render on Mesa lavapipe for GPU-less hosts).Changed
Vector SDF/filters) and the
ColoredMesh2dpipeline were ported from the removed render-graphnode API to the new schedule-based renderer (passes are render-world systems on the
Core2dschedule, ordered after tonemapping in
Core2dSystems::PostProcess). UI scaling moved fromEguiContextSettings::scale_factorto theEguiZoomFactorcomponent, and egui/Bevy deprecationswere cleared.
cpalis intentionally held at0.17 to stay aligned with
rodio0.22 (which pinscpal0.17), avoiding a duplicate native audiobackend in the tree; it will follow once rodio bumps.
unstabletest-release recipe e1d17544d0-nvenc(NVIDIA hardware H.264) artifact 1a7b7fa853cc, notgcc; trigger ci.yml on scripts/ d8ed4ce0c7The release runner builds OpenH264's vendored C with whatever `cc` resolves to (gcc or clang), but the stub generator hard-coded `gcc`, which isn't present on a clang-only runner — so the nvenc clippy/build step failed. Use `${CC:-cc}` (both compilers accept the flags) and fail loudly if absent. Also add scripts/** to ci.yml's path filter so changes to the stub generator actually get exercised. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>