# Windows での利用方法

## 概要

Sora Flutter SDK で Windows アプリケーションを実装する際の動作環境、ネイティブ依存、ビルド方法について説明します。
対応バージョンは Windows 10 20H2 以上 (x86_64) です。
Sora への接続やメディアデバイスの操作といったプラットフォーム共通の Dart API については、他ページをご確認ください。

## 動作環境

- Windows 10 20H2 以上 (x86_64)
- Flutter 3.44.0 以上
- Sora 2025.2.0 以降
- Visual Studio 2022 (MSVC v143) または Build Tools for Visual Studio 2022
- Windows SDK 10.0.26100 以上

Visual Studio 2022 または Build Tools for Visual Studio 2022 では、「C++ によるデスクトップ開発」ワークロードが必要です。

## 依存関係

Sora Flutter SDK はネイティブ依存として次のライブラリを必要とします。

- `libwebrtc-c` (WebRTC の C API ラッパー)
- `webrtc` (WebRTC ネイティブライブラリ)

依存取得の設定は `scripts/native_deps.json` で管理しています。
これらの依存は CMake ビルド時に自動でダウンロード・展開されるため、利用者が手動で用意する必要はありません。

CMake を経由せずに手動で取得する場合のみ、`sora-flutter-sdk` のルートで次を実行します。

```bash
dart pub get
dart run scripts/fetch_native_deps.dart windows_x86_64
```

## ビルド

アプリケーションのディレクトリで依存関係を取得し、アプリケーションをビルドします。

```bash
flutter pub get
flutter build windows --debug
flutter build windows --release
```

## 備考

- 音声デバイスは WASAPI 経由で入出力を処理します
- カメラキャプチャは Media Foundation 経由で動作します
- リモート映像は libyuv で I420 から RGBA に変換し、ピクセルバッファ経由で Flutter Texture に描画します
