Flutter yuv 转 rgb

1、引用yuv_converter库

复制代码
yuv_converter: ^0.0.1

2、导入头文件:

复制代码
import 'package:yuv_converter/yuv_converter.dart';

3、yuv转rgb

复制代码
YuvConverter.yuv420NV21ToRgba8888(yuvRawData, 512, 512)

根据yuv格式选择不同的api。

举个例子:

复制代码
void initState() {
    super.initState() ;
    loadAssetAsUint8List("assets/yuv/1_uyvy.yuv").then((yuvRawData){
      rgbga1 = YuvConverter.yuv422uyvyToRgba8888(yuvRawData, 512, 512) ;
      setState(() {

      });
    }) ;

    loadAssetAsUint8List("assets/yuv/1_nv21.yuv").then((yuvRawData){
      rgbga2 = YuvConverter.yuv420NV21ToRgba8888(yuvRawData, 512, 512) ;
      setState(() {

      });
    }) ;
  }

  Future<Uint8List> loadAssetAsUint8List(String assetPath) async {
    // 使用rootBundle加载assets中的文件
    final ByteData data = await rootBundle.load(assetPath);

    // 将ByteData转换为Uint8List
    final Uint8List uint8List = data.buffer.asUint8List();

    return uint8List;
  }

github:

https://github.com/menshen/flutter_yuv_converter

相关推荐
liulian091612 小时前
Flutter for OpenHarmony 跨平台技术实战:flutter_animate 与 pull_to_refresh 库的鸿蒙化适配总结
flutter·华为·学习方法·harmonyos
IntMainJhy13 小时前
【flutter for open harmony】第三方库 Flutter 二维码生成的鸿蒙化适配与实战指南
数据库·flutter·华为·sqlite·harmonyos
jiejiejiejie_14 小时前
Flutter for OpenHarmony 底部选项卡与多语言适配小记:让 App 更贴心的两次小升级✨
flutter·华为·harmonyos
jiejiejiejie_15 小时前
Flutter for OpenHarmony 应用更新检测与萌系搜索功能实战小记✨
flutter·华为·harmonyos
IntMainJhy15 小时前
Flutter 三方库 Firebase Messaging 鸿蒙化适配与实战指南(权限检查+设备Token获取全覆盖)
flutter·华为·harmonyos
liulian091616 小时前
Flutter 依赖注入与设备信息库:get_it 与 device_info_plus 的 OpenHarmony 适配指南总结
flutter·华为·学习方法·harmonyos
里欧跑得慢17 小时前
微交互设计模式:提升用户体验的细节之美
前端·css·flutter·web
stringwu17 小时前
Flutter GetX 核心坑及架构选型与可替换性方案
前端·flutter
IntMainJhy17 小时前
【flutter for open harmony】第三方库Flutter 国际化多语言的鸿蒙化适配与实战指南
数据库·flutter·华为·sqlite·harmonyos
liulian091617 小时前
【Flutter for OpenHarmony 】地图功能适配与位置显示实现指南
flutter·华为·学习方法·harmonyos