Skip to content
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

Native AV1 decoding via rav1d/dav1d #7605

Closed
6 of 7 tasks
emilk opened this issue Oct 7, 2024 · 0 comments
Closed
6 of 7 tasks

Native AV1 decoding via rav1d/dav1d #7605

emilk opened this issue Oct 7, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request 📺 re_viewer affects re_viewer itself 🎞️ video

Comments

@emilk emilk added enhancement New feature or request 👀 needs triage This issue needs to be triaged by the Rerun team labels Oct 7, 2024
@emilk emilk added 📺 re_viewer affects re_viewer itself 🎞️ video and removed 👀 needs triage This issue needs to be triaged by the Rerun team labels Oct 7, 2024
@emilk emilk self-assigned this Oct 7, 2024
@emilk emilk changed the title Native AV1 decoding Native AV1 decoding via rav1d/dav1d Oct 7, 2024
@emilk emilk mentioned this issue Oct 7, 2024
12 tasks
@Wumpf Wumpf self-assigned this Oct 10, 2024
Wumpf added a commit that referenced this issue Oct 11, 2024
### What

Related to
* #7671
* #7605
* #7588

Biting the bullet and split the feature on our rav1d fork:

rerun-io/re_rav1d@emilk/dav1d-interface...rerun-io:rav1d:andreas/disable-asm-linux

Testing done:
* wsl linux release build works now (didn't before)
* windows build still works
    * shows no-asm warning if compiled with out nasm
    * works otherwise
* added a `panic` under `cfg(asm)` in one of the interface functions
(now removed again) .. then:
    * linux still worked
    * windows hit that panic when compiled with nasm feature 

### Checklist
* [x] main ci passes
* [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/7694?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/7694?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/7694)
- [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: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Wumpf added a commit that referenced this issue Oct 11, 2024
…put (#7682)

### What

* Important chunk of #7605
* Related to #7608
   * todo: create a new ticket for bgr shenanigans and close this one

---

Fixes performance issues with our previous inefficient cpu based chroma
conversion:


![image](https://github.com/user-attachments/assets/fed67eb9-902b-43d8-bbd6-8574a5f3b18d)

... and fixes color space issues:

Top left: now
Top right: before
Bottom: VLC

![image](https://github.com/user-attachments/assets/f5b797bd-e12d-46b0-96dd-32176d43e78c)

---

There was an oversight in the conversion pipeline that if fixed now: It
only allowed for creating new textures.
Now it can also update existing textures! This means that it takes a
target texture from the outside. Naturally, there's some constraints on
what the target texture looks like and as a consequence I added some
validation for that. Could be more, but I think this is solid enough for
our purposes :)


### 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/7682?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/7682?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/7682)
- [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 emilk closed this as completed Oct 14, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request 📺 re_viewer affects re_viewer itself 🎞️ video
Projects
None yet
Development

No branches or pull requests

2 participants