update flutter texture rgba renderer plugin, remove switch rgba (#10070)

Signed-off-by: 21pages <sunboeasy@gmail.com>
This commit is contained in:
21pages 2024-11-30 12:19:42 +08:00 committed by GitHub
parent d60b5a6ca0
commit 9d9b67aca5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
4 changed files with 19 additions and 7 deletions

View File

@ -1268,7 +1268,9 @@ class ImageModel with ChangeNotifier {
rgba, rgba,
rect?.width.toInt() ?? 0, rect?.width.toInt() ?? 0,
rect?.height.toInt() ?? 0, rect?.height.toInt() ?? 0,
isWeb ? ui.PixelFormat.rgba8888 : ui.PixelFormat.bgra8888, isWeb | isWindows | isLinux
? ui.PixelFormat.rgba8888
: ui.PixelFormat.bgra8888,
); );
if (parent.target?.id != pid) return; if (parent.target?.id != pid) return;
await update(image); await update(image);

View File

@ -1277,10 +1277,11 @@ packages:
texture_rgba_renderer: texture_rgba_renderer:
dependency: "direct main" dependency: "direct main"
description: description:
name: texture_rgba_renderer path: "."
sha256: cb048abdd800468ca40749ca10d1db9d1e6a055d1cde6234c05191293f0c7d61 ref: "42797e0f03141dc2b585f76c64a13974508058b4"
url: "https://pub.dev" resolved-ref: "42797e0f03141dc2b585f76c64a13974508058b4"
source: hosted url: "https://github.com/rustdesk-org/flutter_texture_rgba_renderer"
source: git
version: "0.0.16" version: "0.0.16"
timing: timing:
dependency: transitive dependency: transitive

View File

@ -91,7 +91,10 @@ dependencies:
password_strength: ^0.2.0 password_strength: ^0.2.0
flutter_launcher_icons: ^0.13.1 flutter_launcher_icons: ^0.13.1
flutter_keyboard_visibility: ^5.4.0 flutter_keyboard_visibility: ^5.4.0
texture_rgba_renderer: ^0.0.16 texture_rgba_renderer:
git:
url: https://github.com/rustdesk-org/flutter_texture_rgba_renderer
ref: 42797e0f03141dc2b585f76c64a13974508058b4
percent_indicator: ^4.2.2 percent_indicator: ^4.2.2
dropdown_button2: ^2.0.0 dropdown_button2: ^2.0.0
flutter_gpu_texture_renderer: flutter_gpu_texture_renderer:

View File

@ -1188,9 +1188,15 @@ impl VideoHandler {
pub fn new(format: CodecFormat, _display: usize) -> Self { pub fn new(format: CodecFormat, _display: usize) -> Self {
let luid = Self::get_adapter_luid(); let luid = Self::get_adapter_luid();
log::info!("new video handler for display #{_display}, format: {format:?}, luid: {luid:?}"); log::info!("new video handler for display #{_display}, format: {format:?}, luid: {luid:?}");
let rgba_format =
if cfg!(feature = "flutter") && (cfg!(windows) || cfg!(target_os = "linux")) {
ImageFormat::ABGR
} else {
ImageFormat::ARGB
};
VideoHandler { VideoHandler {
decoder: Decoder::new(format, luid), decoder: Decoder::new(format, luid),
rgb: ImageRgb::new(ImageFormat::ARGB, crate::get_dst_align_rgba()), rgb: ImageRgb::new(rgba_format, crate::get_dst_align_rgba()),
texture: Default::default(), texture: Default::default(),
recorder: Default::default(), recorder: Default::default(),
record: false, record: false,