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

Need a way to disable Adam7 interleaving #11

Open
codewitch-honey-crisis opened this issue Aug 19, 2024 · 1 comment
Open

Need a way to disable Adam7 interleaving #11

codewitch-honey-crisis opened this issue Aug 19, 2024 · 1 comment

Comments

@codewitch-honey-crisis
Copy link

Hi,

Presently I have to fork your code in order to remove the Adam 7 interleaving as it makes performance much slower than it otherwise needs to be depending on the situation.

The problem with the interleaving is twofold, from a performance perspective:

  1. You cannot cluster points onto a small bitmap region and then send that to the display using DMA, slowing down draws.
  2. You cannot early out if the bottom of the image lies outside the display area.

I'll consider submitting a PR with a #define to disable this feature but I don't even know how you would feel about it, and I don't want to waste time with it if you're not interested in incorporating the change.

@kikuchan
Copy link
Owner

Thank you for choosing Pngle!

Unfortunately, it's by design.
Optimization methods and performance requirements can vary based on specific use cases, so customizing Pngle to fit your needs is often recommended.

Here’s an example of one of the most heavily customized versions I know:
https://github.com/lovyan03/LovyanGFX/blob/master/src/lgfx/utility/lgfx_pngle.c

Let me know if your version is published, and I'll be happy to add it to the README.

Thanks.

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

No branches or pull requests

2 participants