Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.0.1-dev.7

fast_blurhash

Ein leistungsstarker Dart-FFI-Paket zum Decodieren von BlurHash, das Rust für schnellere Verarbeitung nutzt.

AndroidiOSmacOSWindowsLinux
30-Tage-Downloads
53
Likes
34
Pub-Punkte
150

Paket installieren

flutter pub add fast_blurhash

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

fast_blurhash ist ein leistungsstarkes Dart-FFI-Paket, das die Decodierung von BlurHash beschleunigt, indem es Rust für effiziente Berechnungen nutzt. Es ermöglicht eine schnelle Erzeugung und Darstellung von Low-Resolution-Platzhalterbildern, was ideal ist, um die wahrgenommene Leistung bei Bildladevorgängen zu verbessern. Durch die Auslagerung intensiver Operationen in native Rust-Code wird der CPU-Aufwand im Vergleich zu reinen Dart-Implementierungen erheblich reduziert. Das Paket unterstützt mehrere Plattformen wie Android, iOS, macOS, Windows und Linux und eignet sich daher für plattformübergreifende Anwendungen, die während des Bildladens eine reibungslose visuelle Rückmeldung benötigen.

Anwendungsfälle

  • Schnelle Rendern von Bildplätzen
  • Verbesserte App-Wahrnehmungsleistung
  • Effizientes Laden von Remote-Bildern
  • Echtzeit-Vorschauerzeugung
  • Hintergrundbildverarbeitung
  • Plattformübergreifende Kompatibilität

Hauptmerkmale

  • Leistungsstark durch Rust
  • Dart FFI-Integration
  • Multiplattformunterstützung
  • Geringer Speicherverbrauch
  • Hochgeschwindigkeits-Decodierung
  • Nahtlose Flutter-Integration

Geeignet für

  • Apps mit starkem Bild-Ladeaufwand
  • leistungs-kritische Benutzeroberflächen
  • bildschwere Dashboards
  • Prototyping mit Platzhaltern
  • Entwickler, die native Geschwindigkeit suchen

Hinweise

  • Benötigt Rust-Toolchain für lokale Builds
  • Beschränkt auf die Decodierung von BlurHash (nicht Encoding)
  • plattformspezifische native Abhängigkeiten
  • Mögliche Baufehlerkomplexität im CI/CD
  • Kann die App-Binary-Größe leicht erhöhen

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

fast_blurhash

A Dart FFI package project that uses Rust to decode the blurhash and encode the final image, utilizing FFI to call these functions. This package exists because it works +20x faster on average than the common Dart implementation and can be tested in release mode by running the benchmarks.dart demo.

It only works with the latest version of Flutter on the main branch and requires the following feature to be enabled: flutter config --enable-native-assets. For more details, refer to this issue.

Status

  • Uses experimental APIs which might change in the future.
  • The first time call takes longer than the average time so I have added a setup function to do a warmup call.
  • Tested only on iOS and MacOs in release mode.
  • Significant performance difference between release mode and debug mode; do not rely on debug mode results.

Project structure

This template uses the following structure:

  • rust: Contains the rust source code.

  • lib: Contains the Dart code that defines the API of the plugin, and which calls into the native code using dart:ffi.

Benchmarks

To test the performance of the package in release mode, run the benchmarks.dart demo.

So far I have tried this one iOS and macos release mode, don't run the benchmarks on debug mode.

Run the benchmark using : flutter run -t lib/benchmarks.dart --release

iPhone 15 pro:
screenshot from the benchmarks demo on iPhone 15 pro
M1 Macbook Pro:
screenshot from the benchmarks demo on macbook pro

Kategorien

Abhängigkeiten

Abhängigkeiten 5 Einträge

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.