VisioForge .NET SDKでUnityに動画を追加
ファイルやネットワークストリームを再生し、WebカメラやIPカメラをキャプチャし、タイムラインを編集し、そのままUnityテクスチャへレンダリング。WPF・MAUI・Avaloniaですでにお使いのVisioForge .NET SDKで実現します。1つの累積的な.unitypackageがWindows・Android・macOS・iOSを対象とします。
VisioForge SDKが支えるUnityネイティブ動画
VisioForgeは、WPF・MAUI・Avaloniaアプリで実証済みの同じ.NETメディアエンジンをUnityにもたらします。フレームはUnity専用のOnVideoFrameUnityイベント経由でシーンに届けられ、同梱のVisioForgeVideoViewヘルパーによってTexture2Dへアップロードされます。RawImageに動画を表示したり、任意の3Dサーフェスにマッピングしたりできます。GStreamerネイティブランタイムはプラットフォームごとに同梱されるため、システムへのインストール作業は不要です。
Unity対応はCoreXエンジン(MediaBlocksPipeline、MediaPlayerCoreX、VideoCaptureCoreX、VideoEditCoreX)を通じて提供されます。
Unityのシナリオに最適な製品を選ぶ
すべての製品が同じ累積的な.unitypackageで提供されます。構築したい内容に合ったエンジンをお選びください。
Media Player SDK .NET
MediaPlayerCoreXによる高レベルな再生。ローカルファイル、URL、HLS、RTSPストリームを開き、シーク・一時停止・音量・再生速度を制御できます。ゲーム内動画、カットシーン、デジタルサイネージに最適です。
Media Player + Unity →Video Capture SDK .NET
VideoCaptureCoreXによるライブWebカメラ・マイクキャプチャ、IP / RTSP / ONVIFカメラ、MP4録画。ARカメラアプリ、IPカメラダッシュボード、監視ビューを構築できます。
Video Capture + Unity →Video Edit SDK .NET
VideoEditCoreXによるタイムライン編集。クリップを結合し、エフェクトやトランジションを適用し、ライブプレビューし、MP4へレンダリングします。アプリ内動画エディターやテンプレートベースの動画生成を実現します。
Video Edit + Unity →Media Blocks SDK .NET
完全なパイプラインフレームワーク。キャプチャ、デコードとエンコード、エフェクト、ミキシング、録画、ストリーミングに対応。高レベルエンジンでは足りない場合に、カスタムメディアパイプラインを組み立て、その結果をUnityへレンダリングできます。
Media Blocks + Unity →Unity動画にVisioForgeを選ぶ理由
1つの累積パッケージ
Windows・Android・macOS・iOSのネイティブランタイムが単一の.unitypackageに同梱されています。一度インポートし、ビルドターゲットを切り替えてビルドするだけ。プラットフォームごとのダウンロードは不要です。
Texture2Dへレンダリング
フレームはゼロアロケーションのダブルバッファ経路でUnityのTexture2Dへアップロードされます。RawImageに動画を表示したり、シーン内の任意の3Dオブジェクトにマッピングしたりできます。
ハードウェアアクセラレーション
デコードとエンコードはプラットフォームのハードウェアコーデックを使用します。WindowsではNVENCとQuick Sync、AndroidではMediaCodec、macOSとiOSではVideoToolboxを利用し、滑らかなライブ動画を実現します。
完全なSDK API
Unityスクリプトは、WPF・MAUI・Avaloniaで使うのと同じ.NETメディアAPIを利用できます。再生専用のラッパーではありません。すぐに使えるサンプルシーンで数分で動かせます。
開発者がUnityで作るもの
同じエンジンが、まったく異なるUnityプロジェクトを支えます。
VR・360°動画
高解像度や360°の映像をスカイボックス、曲面スクリーン、ヘッドセットディスプレイへ流し込み、没入感のある再生を実現します。
ゲーム内動画・カットシーン
イントロ、シネマティック、ゲーム内スクリーンを、ローカルファイルやネットワークストリームから再生し、シーク・一時停止・音量を制御します。
監視・IPカメラ
RTSPやONVIFカメラの映像をUnityダッシュボードやデジタルツインに取り込み、1つのシーンで複数のライブストリームを表示します。
デジタルサイネージ・キオスク
WindowsやAndroid上のUnityアプリから、ビデオウォール、インタラクティブキオスク、情報ディスプレイを動かします。
ゲームからのライブ配信
ゲームプレイを録画し、RTMP、HLS、またはRTSPサーバー経由でC#から直接ライブ配信します。
トレーニング・シミュレーション
教育用動画やライブカメラ映像を、AR/VRのトレーニングやシミュレーション環境にオーバーレイします。
プラットフォームと要件
Unity 6 (6000.x)で検証済み。
- ✔Unity 6 (6000.x)
- ✔.NET Standard 2.1 API互換性レベル
- ✔Enter Play Mode: Disable Domain Reload
- ✔AndroidとiOSではIL2CPPスクリプティングバックエンド
ローカルWebカメラキャプチャはWindowsとmacOSが対象です。RTSP / IPカメラとファイル再生 / 編集は4つのプラットフォームすべてで動作します。
ソース、フォーマット、プロトコル
対応状況はエンジンと対象プラットフォームによって異なります。完全なマトリックスはドキュメントをご覧ください。
| カテゴリ | 対応 |
|---|---|
| ビデオコーデック | H.264 / AVC, HEVC / H.265, AV1, VP9, VP8, MJPEG, MPEG-2 |
| コンテナ | MP4, MKV, WebM, MOV, AVI, MPEG-TS |
| オーディオコーデック | AAC, MP3, Opus, Vorbis, FLAC, PCM / WAV |
| ネットワーク入力 | RTSP, RTMP, HLS, HTTP / HTTPS, SRT, UDP / MPEG-TS |
| カメラとデバイス | USB Webカメラ、RTSP経由のONVIF / IPカメラ、マイク |
| 録画出力 | MP4, MKV, WebM, MPEG-TS — ハードウェアエンコード |
| ライブ配信出力 | RTMP, HLS, SRT, 内蔵RTSPサーバー |
| ハードウェアコーデック | NVIDIA NVENC・Intel Quick Sync (Windows)、MediaCodec (Android)、VideoToolbox (macOS / iOS) |
Unity動画 — よくある質問
Unity標準のVideoPlayerと何が違いますか?
Unityの VideoPlayer はローカルおよびHTTPの動画ファイルしか再生できません。VisioForgeはそれが対応できない領域、つまりRTSPとONVIFのIPカメラ、ライブWebカメラキャプチャ、録画、RTMP/HLS/SRT配信を追加します。さらに、より幅広いコーデックとハードウェアアクセラレーションによるデコードを、デスクトップで使うのと同じC# APIを通じて提供します。
UnityでRTSPやIPカメラのストリームを再生できますか?
はい。MediaPlayerCoreXとVideoCaptureCoreXがRTSP、ONVIF、HLSのソースを開き、デコードされたフレームをシーンへ届けます。RTSP、IPカメラ、ファイル再生は4つのプラットフォームすべて(Windows、Android、macOS、iOS)で動作します。
Unity内でWebカメラをキャプチャできますか?
はい、VideoCaptureCoreXで可能です。USB Webカメラとマイクを列挙します。ローカルWebカメラキャプチャはWindowsとmacOSが対象です。RTSP/ONVIF経由のネットワークカメラは、対応するすべてのプラットフォームで動作します。
Unityゲームから録画やライブ配信ができますか?
はい。Media Blocks SDK .NETまたはVideoCaptureCoreXを使って、ソースをキャプチャまたは合成してMP4/MKVに録画したり、RTMP、HLS、SRT、内蔵RTSPサーバー経由でライブ配信したりできます。
Opusオーディオコーデックに対応していますか?
はい。OpusはAAC、MP3、Vorbis、FLAC、PCM/WAVと並んで直接デコード・エンコードされます。Unity自体のオーディオ制限に左右されません。
GStreamerやその他のシステム依存関係をインストールする必要がありますか?
いいえ。ネイティブランタイムは.unitypackage内にプラットフォームごとに同梱されているため、あなたやユーザーが別途インストールするものはありません。
必要なUnityバージョン、スクリプティングバックエンド、APIレベルは何ですか?
Unity 6 (6000.x)、.NET Standard 2.1 API互換性レベル、そして「Enter Play Mode: Disable Domain Reload」です。AndroidとiOSのビルドはIL2CPPスクリプティングバックエンドを使用します。
これは別製品ですか、それとも同じVisioForge .NET SDKですか?
WPF・MAUI・Avaloniaで使うのと同じ実証済みの.NET SDKが、Unityで動作しているものです。学んだりライセンスを取得したりする別の「Unity SDK」はありません。シナリオに合ったSDK(Media Player、Video Capture、Video Edit、Media Blocks)を選ぶだけです。
