# Qt / PySide6 Library Replacement

Karuiya 0.9.1はPyInstallerのonedir形式で配布します。Qt/PySide6の共有ライブラリを
Karuiya本体へ静的結合せず、`_internal`内に独立したファイルとして配置します。

## 配置の確認

公開ZIP展開後、少なくとも次を確認してください。PyInstallerまたはPySide6の正式な
配置が変わった場合は、配布前にこの文書を実物へ合わせて更新します。

- `_internal/PySide6/Qt6*.dll`
- `_internal/PySide6/plugins/`
- `_internal/PySide6/qml/`
- `_internal/PySide6/*.pyd`

## 差し替え手順

1. Karuiyaを終了します。
2. 元の`_internal`を別フォルダーへバックアップします。
3. 同じABIと必要モジュールを備えた互換Qt/PySide6ライブラリを準備します。
4. 対応するDLL、plugin、QMLモジュールを同じ相対位置へ配置します。
5. `Karuiya.exe`を起動し、起動、プレビュー、音声、終了を確認します。

一部のDLLだけを異なるQt版へ混在させないでください。差し替え後に起動できない場合は、
Karuiyaを終了してバックアップした`_internal`全体を戻すか、元の公開ZIPを再展開します。

## デバッグと外部FFmpeg

LGPL対象ライブラリの改変をデバッグする目的で必要な解析や差し替えを禁止しません。
`program/ffmpeg-lgpl`と任意の`program/ffmpeg-gpl`は、Qt Multimediaとは別の外部
CLIです。Qtライブラリ差し替え時にこれらをQtのDLL配置へ移動したり、LGPL/GPL/Qtの
各DLLを相互に交換したりしないでください。
