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

相关推荐
Hello__77777 小时前
开源鸿蒙 Flutter 实战|页面加载进度条全流程实现
flutter·开源·harmonyos
hamber8 小时前
用 Flutter 造一台掌机
flutter·ai编程·全栈
程序员老刘·12 小时前
Flutter版本选择指南:3.41.7进入稳态,生产环境升级窗口开启 | 2026年4月
flutter·跨平台开发·客户端开发
IntMainJhy14 小时前
Flutter 三方库 shimmer 的鸿蒙化适配与实战指南
flutter·华为·harmonyos
IntMainJhy15 小时前
Flutter 三方库 flutter_slidable 的鸿蒙化适配与实战指南
flutter·华为·harmonyos
IntMainJhy15 小时前
【Flutter for openharmony 】三方库 socket_io_client 的鸿蒙化适配与实战指南
flutter
IntMainJhy16 小时前
Flutter 三方库 image_cropper + flutter_image_compress 的鸿蒙化适配与实战指南
flutter·华为·harmonyos
liulian091616 小时前
Flutter for OpenHarmony跨平台技术
flutter
IntMainJhy17 小时前
Flutter 三方库 flutter_local_notifications 的鸿蒙化适配与实战指南
flutter·华为·harmonyos