Skip to content

Interpolation and complete refactor of image render pipeline, leading to version 2#58

Merged
balparda merged 25 commits into
mainfrom
more-interpolation
Jun 19, 2026
Merged

Interpolation and complete refactor of image render pipeline, leading to version 2#58
balparda merged 25 commits into
mainfrom
more-interpolation

Conversation

@balparda

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings June 19, 2026 11:48
@balparda balparda requested a review from BellaKeri as a code owner June 19, 2026 11:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Refactors the rendering pipeline by introducing a dedicated pixels layer and updating the image/zoom flows to use it, while adding spatial (--i-pixels) and temporal (--i-frames) interpolation features and bumping the project to v2.0.0.

Changes:

  • Split/rewired rendering responsibilities to use tranzoom.core.pixels objects/APIs across CLI, core, DB, and tests.
  • Added pixel upscaling (--i-pixels) and animation frame interpolation (--i-frames) and updated fixtures/hashes accordingly.
  • Updated docs, scripts, and dependency pins for the v2 release.

Reviewed changes

Copilot reviewed 24 out of 35 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
tests/core/zoom_test.py Updates zoom hash/JSON stability tests to use pixels.RenderAnimationParameters.
tests/core/pixels_test.py Adds coverage for pixels JSON/hash stability and Pixels round-trip behavior.
tests/core/image_test.py Removes old image.RenderParameters stability tests (moved to pixels_test.py).
tests/core/frame_test.py Updates expected string formats and adds parametrization IDs.
tests/cli/base_test.py Switches basic image inspection to pixels.GetBasicData() and updates expected dimensions.
tests_integration/test_installed_cli.py Updates installed-CLI integration checks to use pixels.ObjInfo and new metadata/hashes.
src/tranzoom/core/zoom.py Refactors interpolation/render path to operate on pixels.Pixels and adds interpolated frame hashing.
src/tranzoom/core/queries.py Minor docstring tightening.
src/tranzoom/core/image.py Narrows image.py to computation + metadata generation; rendering now returns pixels.Pixels.
src/tranzoom/core/frdb.py Updates DB render pipeline to produce/overlay/resize pixels.Pixels and stores final hashes.
src/tranzoom/core/frame.py Updates string formatting and docstrings; supports size calculations with i_pixels.
src/tranzoom/core/ai.py Updates AI loop to embed evaluation metadata via Pixels.meta then emit PNG bytes.
src/tranzoom/cli/zoomcommand.py Updates CLI wiring to use pixels.AnimationEncoding and render animation params.
src/tranzoom/cli/imagecommand.py Updates image read/clean flows to use pixels.GetBasicData() and Pixels encoders.
src/tranzoom/cli/base.py Wires CLI config/options through pixels types; updates animation pipeline and output logging.
src/tranzoom/init.py Bumps version to 2.0.0.
scripts/make_test_images.sh Updates fixture generation commands for interpolation and new defaults.
scripts/make_demo_images.sh Updates demo commands for new interpolation behavior/options.
requirements.txt Updates pinned runtime dependencies.
README.md Documents interpolation modes and updates CLI examples/output snippets.
pyproject.toml Bumps version to 2.0.0 and updates dev tooling pin(s).
poetry.lock Updates locked dependency versions/hashes.
CHANGELOG.md Adds 2.0.0 release notes describing the refactor + interpolation features.
.vscode/settings.json Updates spelling/word list entries for new symbols/terms.

Comment thread src/tranzoom/cli/base.py
Comment thread src/tranzoom/core/frdb.py Outdated
Comment thread src/tranzoom/core/frdb.py
Comment thread src/tranzoom/core/image.py Outdated
Comment thread src/tranzoom/core/zoom.py Outdated
Comment thread src/tranzoom/core/zoom.py
Comment thread README.md Outdated

@BellaKeri BellaKeri left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, great job

@balparda balparda merged commit 0502d22 into main Jun 19, 2026
7 of 10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants