Python SDK: Rename ImageEncoded to ImageEncodedHelper#6882
Merged
Conversation
This is to make room for a new `archetypes.ImageEncoded`. `ImageEncodedHelper` handles both image files (JPEG, PNG, …) and chroma sub-sampled data (NV12, YUY2). In the new design, the former will be handled by `ImageEncoded`, but chroma-subsampled images will be stored directly as `Image`s, with a special `PixelFormat`. This means that once 0.18 is done, only users using chroma subsampling will have to update their code. I'll make sure the new `ImageEncoded` archetype ctor supports all of the same parameters as the old helper, so that there are helpful runtime error messages for our users.
6 tasks
Contributor
Deployed docs
|
Member
Author
|
@rerun-bot full-check |
Contributor
|
Started a full build: https://github.com/rerun-io/rerun/actions/runs/9926192825 |
This was referenced Jul 14, 2024
ImageEncoded to ImageEncodedHelperImageEncoded to ImageEncodedHelper
teh-cmc
approved these changes
Jul 15, 2024
emilk
added a commit
that referenced
this pull request
Jul 15, 2024
) ### What * Part of #6844 * Part of #3803 Has `do-no-merge` because of current merge-target. ### PR train * Prev: #6882 * Next: #6883 * Next: #6884 ### Coming in follow-up PRs: * Fix image picking, hovering, and visualization in spatial view * Switch to using `ImageEncoded` in all examples * Remove old code for storing JPEGs in tensors ### Fixes * Fixes #6520 ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [x] I have tested the web demo (if applicable): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6874?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6874?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! * [x] If have noted any breaking changes to the log API in `CHANGELOG.md` and the migration guide - [PR Build Summary](https://build.rerun.io/pr/6874) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`. --------- Co-authored-by: Andreas Reich <andreas@rerun.io>
emilk
added a commit
that referenced
this pull request
Jul 15, 2024
### What * Part of #6844 * Closes #3803 This switches us to use the new `archetype.ImageEncoded` in all examples. Logging chroma-downsampled images (NV12/YUY2) is now done with the new `ImageChromaDownsampled` helper (which will probably go away before 0.18). ### PR train * Prev: #6882 * Prev: #6874 * Next: #6884 ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [ ] I have tested the web demo (if applicable): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6883?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6883?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! * [x] If have noted any breaking changes to the log API in `CHANGELOG.md` and the migration guide - [PR Build Summary](https://build.rerun.io/pr/6883) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
emilk
added a commit
that referenced
this pull request
Jul 15, 2024
…e` (#6884) * Part of #6844 * Closes #3803⚠️ This breaks any existing `JPEG`-encoded RRDs ### Rust API * Removed `TensorBuffer::JPEG` * Removed `TensorData::from_jpeg_bytes` * Deprecated `Image::from_file_path` and `from_file_contents` For all of these, use `ImageEncoded` instead. ### PR train * Prev: #6882 * Prev: #6874 * Prev: #6883 ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [x] I have tested the web demo (if applicable): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6884?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6884?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! * [x] If have noted any breaking changes to the log API in `CHANGELOG.md` and the migration guide - [PR Build Summary](https://build.rerun.io/pr/6884) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
ImageEncoded to ImageEncodedHelperImageEncoded to ImageEncodedHelper
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.
What
archetypes.ImageEncodedwith PNG and JPEG support #6874ImageChromaDownsampled#6883 (where we rename it toImageChromaDownsampled)TensorBuffer::JPEG,DecodedTensor,TensorDecodeCache#6884This is a temporary measure to make room for a new
archetypes.ImageEncodedwithout name collision.I plan to remove
ImageEncodedHelperfully before 0.18.ImageEncodedHelperhandles both image files (JPEG, PNG, …) and chroma sub-sampled data (NV12, YUY2).In the new design, the former will be handled by
ImageEncoded, but chroma-subsampled images will be stored directly asImages, with a specialPixelFormat.This means that once 0.18 is done, only users using chroma subsampling will have to update their code. I'll make sure the new
ImageEncodedarchetype ctor supports all of the same parameters as the old helper, so that there are helpful runtime error messages for our users.Checklist
mainbuild: rerun.io/viewernightlybuild: rerun.io/viewerCHANGELOG.mdand the migration guideTo run all checks from
main, comment on the PR with@rerun-bot full-check.