import 'package:flutter/services.dart';
/// Camera2 API を使用してフル解像度の YUV 画像をキャプチャするサービス.
class RawCaptureService {
static const _channel = MethodChannel('com.example.mini_tias/raw_capture');
/// フロントカメラからフル解像度の YUV データをキャプチャする.
///
/// 返り値は YUV データを含む Map:
/// - width, height: 画像サイズ
/// - yPlane, uPlane, vPlane: YUV プレーンのバイトデータ
/// - yRowStride, uvRowStride, uvPixelStride: ストライド情報
Future<Map<String, dynamic>> captureFullResolutionYuv() async {
final result = await _channel.invokeMethod('captureFullResolutionYuv');
return Map<String, dynamic>.from(result as Map);
}
/// MediaStore にファイルを登録し,PC から MTP で見えるようにする.
Future<void> scanFile(String path) async {
await _channel.invokeMethod('scanFile', {'path': path});
}
}