-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add new archetypes.ImageEncoded
with PNG and JPEG support
#6874
Conversation
Deployed docs
|
0fce767
to
c755415
Compare
c755415
to
462492a
Compare
462492a
to
4d46773
Compare
archetypes.ImageEncoded
archetypes.ImageEncoded
with PNG and JPEG support
44d57f6
to
5b2880b
Compare
@rerun-bot full-check |
Started a full build: https://github.com/rerun-io/rerun/actions/runs/9928457630 |
archetypes.ImageEncoded
with PNG and JPEG supportarchetypes.ImageEncoded
with PNG and JPEG support
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so good to fiiiiiinnaly have ImageEncoded in C++ and Rust!
// Unknown is currently interpreted as "Some Color" in most cases. | ||
// TODO(jleibs): Make this more explicit | ||
let meaning = TensorDataMeaning::Unknown; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
crossing my fingers here that by the end of the train we don't have to deal with TensorDataMeaning anymore 😄
(or can clean this up as a follow-up)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not the end of this train, but at the end of #6844 for sure
crates/viewer/re_viewer_context/src/tensor/image_decode_cache.rs
Outdated
Show resolved
Hide resolved
crates/viewer/re_viewer_context/src/tensor/image_decode_cache.rs
Outdated
Show resolved
Hide resolved
### What * Part of #6844 * Next PR: #6874 * Next +1: #6883 (where we rename it to `ImageChromaDownsampled`) * Next +2: #6884 This is a temporary measure to make room for a new `archetypes.ImageEncoded` without name collision. I plan to remove `ImageEncodedHelper` fully before 0.18. `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. ### 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/6882?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/6882?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/6882) - [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`.
9cd1305
to
34efa0d
Compare
Co-authored-by: Andreas Reich <andreas@rerun.io>
Co-authored-by: Andreas Reich <andreas@rerun.io>
### 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`.
…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`.
archetypes.ImageEncoded
with PNG and JPEG supportarchetypes.ImageEncoded
with PNG and JPEG support
What
TensorBuffer::JPEG
withImageEncoded
archetype #3803Has
do-no-merge
because of current merge-target.PR train
ImageEncoded
toImageEncodedHelper
#6882ImageChromaDownsampled
#6883TensorBuffer::JPEG
,DecodedTensor
,TensorDecodeCache
#6884Coming in follow-up PRs:
ImageEncoded
in all examplesFixes
Checklist
main
build: rerun.io/viewernightly
build: rerun.io/viewerCHANGELOG.md
and the migration guideTo run all checks from
main
, comment on the PR with@rerun-bot full-check
.