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

Dave2d rgb565a8 image support #5200

Merged
merged 4 commits into from
Jan 8, 2024

Conversation

jeremy-baker
Copy link
Contributor

Help us review this PR! Anyone can approve it or request changes.

Description of the feature or fix

[FEAT] Add support for Dave2D to draw RGB565A8 images

A clear and concise description of what the bug or new feature is.

Checkpoints

@@ -100,6 100,7 @@ d2_u32 lv_draw_dave2d_lv_colour_fmt_to_d2_fmt(lv_color_format_t colour_format)

switch(colour_format) {
case(8):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

8 means LV_COLOR_FORMAT_I2 . I think it's incorrect.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have updated the pull request, removing the case(8)

#if defined(RENESAS_CORTEX_M85)
#if (BSP_CFG_DCACHE_ENABLED)
d1_cacheblockflush(u->d2_handle, 0, src_buf,
img_stride * decoder_dsc->header.h); //Stride is in bytes, not pixels/texels
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we use decoded->data_size directly?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I look at the value of decoded->data_size for an RGB656A8 image, it's value is 0, so I cannot use it.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi,
Can you debug into it to see why it's zero?
Is a C-array image used for test? I know current C-array images in examples, and demos are lack of data_size field. Those images needs to be regenerated.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am using the Widgets demo to test this, one of the demos is the first thing a customer will run when thry try LVGL on the RA8D1 using the Dave2D

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have created #5205 to track the issue. We should update the image resources.


lv_point_t p1[4] = { //Points in clockwise order
{0, 0},
{decoder_dsc->header.w - 1, 0},
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should use decoded->header instead. Same for below. The decoded image may differ with original image. For example, software renderer doesn't support I1/2/4/8, thus decoder will convert to ARGB8888.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have update the pull request, to use decoded->header

Copy link
Member

@kisvegabor kisvegabor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I merge it now.
We can have follow up PRs when #5205 is resolved.

@kisvegabor kisvegabor merged commit ed3e303 into lvgl:master Jan 8, 2024
15 checks passed
@jeremy-baker jeremy-baker deleted the dave2d_rgb565A8_images branch January 17, 2024 17:34
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.

3 participants