Support render texture for Vulkan+Impeller#129
Support render texture for Vulkan+Impeller#129xiaowei-guan merged 18 commits intoflutter-tizen:masterfrom
Conversation
* modify_code * Type conversion * code format
1.Add GetDevice method insted of device_ variable. 2.Refactor variable name for pixel buffer. 3.Add GetMemoryFDProperty method insted of variable.
|
@JSUYA Do you have time to review this PR? |
I'll start soon |
JSUYA
left a comment
There was a problem hiding this comment.
When I tested with video_player, app has crashed. please check it out.
plugins/packages/video_player/example (master) 17:52:58 $ flutter-tizen run --enable-impeller --dart-define=USE_FLUTTER_TIZEN_EXPERIMENTAL=true
Launching tizen/flutter/generated_main.dart on Tizen rpi4 in debug mode...
The platform profile is used for signing.
Building a Tizen application in debug mode... 12.2s
✓ Built build/tizen/tpk/org.tizen.video_player_tizen_example-1.0.0.tpk (40.1MB)
Installing build/tizen/tpk/org.tizen.video_player_tizen_example-1.0.0.tpk... 17.8s
[E] [WARNING:flutter/impeller/renderer/backend/vulkan/driver_info_vk.cc(263)] Unknown GPU Driver Vendor: 5348. This is not an error.
[E] [IMPORTANT:flutter/shell/platform/embedder/embedder_surface_vulkan_impeller.cc(80)] Using the Impeller rendering backend (Vulkan).
Syncing files to device Tizen rpi4... 55ms
Flutter run key commands.
r Hot reload. 🔥🔥🔥
R Hot restart.
h List all available interactive commands.
d Detach (terminate "flutter run" but leave application running).
c Clear the screen
q Quit (terminate the application on the device).
A Dart VM Service on Tizen rpi4 is available at: http://127.0.0.1:40659/g52b_wtUP5E=/
The Flutter DevTools debugger and profiler on Tizen rpi4 is available at: http://127.0.0.1:39049?uri=http://127.0.0.1:40659/g52b_wtUP5E=/
....
[E] globalapps/org.tizen.video_player_tizen_example/bin/Runner.dll: ../src/vulkan/runtime/vk_image.c:279: vk_image_expand_aspect_mask: Assertion `image->aspects & VK_IMAGE_ASPECT_ANY_COLOR_MASK_MESA' failed.
flutter/shell/platform/tizen/external_texture_surface_vulkan_buffer.cc
Outdated
Show resolved
Hide resolved
flutter/shell/platform/tizen/external_texture_surface_vulkan.cc
Outdated
Show resolved
Hide resolved
I will update the RPI4 image and check it |
1.rename texture callback parameter name. 2.add null check for vulkan texture. 3.rename PopulateOpenGLTexture to PopulateGLTexture. 4.change DRM_FORMAT to vulkan format.
…render-texture-002
…render-texture-002
|
I have verified the PR on RPI4 with latest version, there will be an out-of-memory issue: |
I have updated the RPI4 image(tizen-10.0-unified_20251209.112952), no such issue, but I found a memory issue, I will check it. |
…render-texture-002
|
@JSUYA |
|
@JSUYA |
thanks, I will check it out.
Has this issue been resolved? Is it something we can ignore at this PR? |
During the rendering process, the Flutter app process may be killed because the GPU memory is exhausted. |
|
I have fixed the gpu memory leak issue flutter-tizen/flutter#21 |
[E] globalapps/org.tizen.video_player_tizen_example/bin/Runner.dll: ../src/vulkan/runtime/vk_image.c:279: vk_image_expand_aspect_mask: Assertion `image->aspects & VK_IMAGE_ASPECT_ANY_COLOR_MASK_MESA' failed.for this issue, could you please share the image version ? I will try to reproduce this issue. |
…render-texture-002
Here is my rpi5(x64)'s binary info The issue occurred when running the example of video_player and playing the video. |
This is my image version: But I don't have RPI5, I just have RPI4. |
Does this issue not occur on RPI 4? If this is only an RPI5 issue, I think, it would be better to merge this PR and make this issue as a known issue. |
RPI4 and RPI5 use different kernel , I will try to update a aarch64 image to check this issue. |
I have updated image to aarch64 for RPI4, no such issue root:~> cat /etc/info.ini
[Version]
Model=Tizen10.0/Unified;
Build=tizen-10.0-unified_20251222.025338;
Release=20251222.025338;
[Build]
Type=eng;
Date=20251222_082957;
Time=08:29:57;
Variant=NONE;
ID=tizen-10.0-unified;
root:~> uname -m
aarch64run video plugin log: |
OK. Thank you for check. |
And I have checked with GPU team, they only support RPI4, don't support RPI5 now +) I just complated the RPI5 Vulkan setup and check that issue. I reported on the issue board. #138 |
If want to render texture with Vulakn + Impeller, you should apply this flutter-tizen/flutter#17