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

Replace LVGL SJPG with real JPEG images and JPEGDEC libarary #10

Merged
merged 10 commits into from
Nov 30, 2022

Conversation

finger563
Copy link
Contributor

@finger563 finger563 commented Nov 29, 2022

Description

  • Remove the reliance on the use of LVGL SJPG format (smaller jpg image) and their built-in decoder.
  • Add jpegdec submodule
  • Add jpeg component which provides a simple wrapper combining some file operations and jpegdec for a simple decode api to load an image path (on file system) and decode it into ram.
  • Change the metadata to use jpg files and not use LVGL file system prefix

Motivation and Context

  • Scrolling through the rom list is slow because the SJPG decoding is slow and must be done not only every time the rom changes but also every time the frame needs to be updated
  • Similarly, moving between settings and the rom list is slow
  • JPEGDEC is a very fast library, for instance these images can be fully decoded in 30ms or less

How has this been tested?

Running it on the ESP32-S3-BOX (see video below)

Screenshots (if appropriate, e.g. schematic, board, console logs, lab pictures):

fast_jpeg_memory_heavy.mp4

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation Update
  • Hardware (schematic, board, system design) change
  • Software change

Checklist:

  • My change requires a change to the documentation.
  • I have added / updated the documentation related to this change via either README or WIKI

Software

  • I have added tests to cover my changes.
  • I have updated the .github/workflows/build.yml file to add my new test to the automated cloud build github action.
  • All new and existing tests passed.
  • My code follows the code style of this project.

@finger563 finger563 merged commit 4502548 into main Nov 30, 2022
@finger563 finger563 deleted the feature/fast-jpeg-decoding branch November 30, 2022 04:37
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.

1 participant