今年2月にredditでCubaLibre1982氏が以下の投稿をしていました。
[AMD][MOONSHELL][OPENSTREAM] Stream PC games to PSVITA for AMD gpu
NVIDIAのGPUを搭載していないPCであってもOpen-Streamというホストソフトをインストールする事で、vita-moonlightでPCのストリーミングが楽しめるという内容の投稿で、手順等を紹介されています。
vita-moonlightはNVIDIA GameStreamのオープンソース実装であるMoonlightをVitaに移植したHomebrewで、その説明から分かるようにNVIDIAのGPUを搭載したPCを持つ人向けでした。そんなPCストリーミング界隈に昨年登場したのがOpen-Streamというソフトです。MoonlightのホストとなるSunshineのフォークという形でオープンソースで開発されており、公式サイトが存在します。
https://open-stream.net/
https://github.com/LS3solutions/openstream-server/
ホストソフトはNVIDIAのGPUに依存せずに使用出来、記事執筆時点ではWindows用のみリリースされています。 クライアントソフトも開発されているようですが、そちらは記事執筆時点ではリリースされていません。
この記事ではvita-moonlightに限定して紹介していますが、他のプラットフォームでもMoonlightのクライアントがあるならOpen-Streamでストリーミングが楽しめるんじゃないかなと思います。(私は試してないです)
ここ最近のハックシーンのリリース情報等を遡ってる時にこれを見つけて、AMDのGPUを使用している私としてはかなりテンションの上がる情報でした。とりあえずVitaで試してみたので手順等を書いておきます。
[AMD][MOONSHELL][OPENSTREAM] Stream PC games to PSVITA for AMD gpu
NVIDIAのGPUを搭載していないPCであってもOpen-Streamというホストソフトをインストールする事で、vita-moonlightでPCのストリーミングが楽しめるという内容の投稿で、手順等を紹介されています。
vita-moonlightはNVIDIA GameStreamのオープンソース実装であるMoonlightをVitaに移植したHomebrewで、その説明から分かるようにNVIDIAのGPUを搭載したPCを持つ人向けでした。そんなPCストリーミング界隈に昨年登場したのがOpen-Streamというソフトです。MoonlightのホストとなるSunshineのフォークという形でオープンソースで開発されており、公式サイトが存在します。
https://open-stream.net/
https://github.com/LS3solutions/openstream-server/
ホストソフトはNVIDIAのGPUに依存せずに使用出来、記事執筆時点ではWindows用のみリリースされています。 クライアントソフトも開発されているようですが、そちらは記事執筆時点ではリリースされていません。
この記事ではvita-moonlightに限定して紹介していますが、他のプラットフォームでもMoonlightのクライアントがあるならOpen-Streamでストリーミングが楽しめるんじゃないかなと思います。(私は試してないです)
ここ最近のハックシーンのリリース情報等を遡ってる時にこれを見つけて、AMDのGPUを使用している私としてはかなりテンションの上がる情報でした。とりあえずVitaで試してみたので手順等を書いておきます。
●目次
こういうエラー出たんですけどどうしたら良いですかとか、どういう設定が最適なんですかとか、
こういう事は出来ないんですかとか、そういう質問には回答出来ません。ご了承ください。
●Open-Streamとvita-moonlightを接続するまでの手順
●用意するもの
vita-moonlightはオリジナルとGraphene氏のフォーク(Vita Moonlight HD)が存在します。
https://github.com/xyzz/vita-moonlight/releases
https://github.com/GrapheneCt/vita-moonlight/releases
https://forum.devchroma.nl/index.php/topic,284.0.html
記事執筆時点で最新バージョンはオリジナルが0.9.1、HDが0.9.2です。
HDはネイティブ解像度1920x1080及び1280x720のサポート(VitaTV以外はSharpscaleが必要)、
オンスクリーンキーボードのサポート、Bluetoothキーボードのサポート、タッチ操作関連の作り直し、
いくつかのバグの修正、等が行われています。詳細はCBPS Forumsのトピックを確認してください。
タイトルIDが違うのでオリジナルとHD両方を使用する事が可能です。
●手順
とりあえずノベルゲーは普通に遊べるので満足 :)
画像はふと起動したくなったD.C.II DMです。

●用意するもの
- PSVita (HENkaku導入済み)
- PC (Windows)
- moonlight.vpk
- openstream_alpha_2312.1.exe
vita-moonlightはオリジナルとGraphene氏のフォーク(Vita Moonlight HD)が存在します。
https://github.com/xyzz/vita-moonlight/releases
https://github.com/GrapheneCt/vita-moonlight/releases
https://forum.devchroma.nl/index.php/topic,284.0.html
記事執筆時点で最新バージョンはオリジナルが0.9.1、HDが0.9.2です。
HDはネイティブ解像度1920x1080及び1280x720のサポート(VitaTV以外はSharpscaleが必要)、
オンスクリーンキーボードのサポート、Bluetoothキーボードのサポート、タッチ操作関連の作り直し、
いくつかのバグの修正、等が行われています。詳細はCBPS Forumsのトピックを確認してください。
タイトルIDが違うのでオリジナルとHD両方を使用する事が可能です。
●手順
- openstream_alpha_2312.1.exe をインストールする。
インストールの途中でVirtual Gamepad Emulation Bus Driverのインストールウィンドウが開くので
それもインストールしてください。 - Openstream を起動する。
- "Configure" をクリックする。
- お好きなエンコーダーを選択する。
個人的には "h.264 CPU Encoder" が一番無難かなあと思います。
エンコーダーの各種設定は、Vitaと接続出来る事を確認してから好きに弄れば良いです。 - "Go Back" でメイン画面に戻る。
- "Start" でサーバーを起動する。
ウィンドウ下に "Server Up" と表示されたら起動成功。"Server Down" と表示されたら起動失敗。
以下のようなメッセージが出た場合はトラブルシューティングにある方法を試してみてください。
>"Fatal: Couldn't bind RTSP server to port [48010]" - PCのホスト名とIPアドレスを確認しておく。
把握していない場合はコマンドプロンプトで ipconfig /all と打ったりして確認してください。
以降、PINの入力以外はVitaでの作業になります。 - vita-moonlight をインストールし、起動する。
- "Settings" を選択する。
- "Enable local audio" を "yes" に変更する。
とりあえずこの手順では音声の設定のみ変更します。他は好きにしてください。 - vita-moonlight のメイン画面に戻る。
- "Add manually" を選択する。
- キーボードが表示されるので、ホスト名を入力する。
- 続けてIPアドレスの入力を求められるので、IPアドレスを入力する。
- 接続に成功するとvita-moonlight側にPINが表示されるので、Openstream側でPINを入力する。
完了するとvita-moonlightの "Paired computers" にホスト名が表示されるようになります。 - "Paired computers" にあるホスト名を選択する。
- "Desktop" を選択してPCのストリーミング開始。
マウスカーソルはタッチパネルで操作可能です。
各ボタンはゲームパッドのボタンとして認識されるはずです。
とりあえずノベルゲーは普通に遊べるので満足 :)
画像はふと起動したくなったD.C.II DMです。

●トラブルシューティング
"Fatal: Couldn't bind RTSP server to port [48010]" のようなメッセージが出てサーバーが起動出来ない場合。
Openstreamでコーデック関連のエラーが発生する場合。
コーデックパックをインストールする必要があるかもしれません。
K-Lite Codec Pack Megaをインストールしてみてください。
https://codecguide.com/download_k-lite_codec_pack_mega.htm
サーバーが起動しているのにvita-moonlightで接続に失敗する場合。
vita-moonlightから音が聞こえない場合。
接続が不安定な場合。
キーマッピング
vita.confという設定ファイルを作成/配置する事でキーマッピングが可能です。
https://github.com/xyzz/vita-moonlight/blob/vita/mappings/vita.conf
キーコードについては以下を確認してください。
https://github.com/xyzz/vita-moonlight/wiki/Keycode
配置場所は、オリジナルが "ux0:data/moonlight/mappings/vita.conf" 、
HDが "ux0:user/00/savedata/mappings/vita.conf" となります。
オリジナル/HDどちらの場合もSettings内の"Enable mapping file"を"yes"に変更する必要があります。
※私の目的にはvita.confよりもJoyToKeyの方が合っていたので、私はJoyToKeyを使用しています。
Steam BigPictureを直接起動するとボタンが反応しない場合。
私の環境でもそうです。Desktopを選択してください。
ボタンを反応させるために何をすれば良いのか私には分かりません。
Steam BigPicture以外を直接起動したい場合。
以下のjsonを編集してください。
C:\Program Files\Openstream\assets\apps_windows.json
(編集する場合、読み取り専用属性を外してください)
以下の例のように項目の追加が可能です。
https://blog-imgs-145.fc2.com/c/m/d/cmd0725/openstream_20210416_1.jpg
nameで名前、cmdでパスを指定します。パス中で \ は2回使用してください。
私の場合、直接起動しても尽くボタンが反応しないのでDesktopしか使ってません…
マルチモニター環境で1番ではない特定のモニターがvita-moonlightに映し出される場合。
Openstreamのissuesを確認する限りだとマルチモニターのサポートに問題があるようです。
私の環境でも同様の問題が発生しています。モニターの切り替えがサポートされていないようなので、
PC側で "1のみに表示する" のような特定のモニターにのみ表示する設定にしてください。
OpenstreamがPC起動時に起動してしまう件。
デフォでスタートアップのアプリになっており、alpha_2312.1では切り替えられないそうです。
https://github.com/LS3solutions/openstream-server/issues/7#issuecomment-773716366
どこでスタートアップに設定されているのか分からなかったので、私はopenstreamapp.exeをリネームする事で対処しました。(拡張子は弄らないでください)
"Fatal: Couldn't bind RTSP server to port [48010]" のようなメッセージが出てサーバーが起動出来ない場合。
- コマンドプロンプトを管理者として実行する。
- netstat -ano | findstr *****
のように打って原因のプロセスのプロセスIDを調べる。
*****部分はOpenstreamのメッセージにあるポート番号で置き換えてください。 - taskkill /f /pid *****
のように打って原因のプロセスを強制終了させる。
*****部分は先程調べたプロセスIDで置き換えてください。
("プロセス ***** が見つかりませんでした。" のようなエラーが出た場合はPCを再起動。) - Openstream で "Start" をクリックしてサーバーを起動する。
Openstreamでコーデック関連のエラーが発生する場合。
コーデックパックをインストールする必要があるかもしれません。
K-Lite Codec Pack Megaをインストールしてみてください。
https://codecguide.com/download_k-lite_codec_pack_mega.htm
サーバーが起動しているのにvita-moonlightで接続に失敗する場合。
- 何度も接続に挑戦する。
- PCを再起動する。
vita-moonlightから音が聞こえない場合。
- Windowsのサウンドコントロールパネルを開く。
- 既定のデバイスのプロパティで既定の形式を "16ビット、48000Hz" にする。
少なくとも私の環境では "16ビット、48000Hz" にする必要がありました。
接続が不安定な場合。
- Vitaの省電力設定にある "Wi-Fiを省電力モードで使う" を無効にする。
- vita-moonlightのSettingsのStreamカテゴリを調整する。
- Openstreamのエンコーダーの各種設定を調整する。
キーマッピング
vita.confという設定ファイルを作成/配置する事でキーマッピングが可能です。
https://github.com/xyzz/vita-moonlight/blob/vita/mappings/vita.conf
キーコードについては以下を確認してください。
https://github.com/xyzz/vita-moonlight/wiki/Keycode
配置場所は、オリジナルが "ux0:data/moonlight/mappings/vita.conf" 、
HDが "ux0:user/00/savedata/mappings/vita.conf" となります。
オリジナル/HDどちらの場合もSettings内の"Enable mapping file"を"yes"に変更する必要があります。
※私の目的にはvita.confよりもJoyToKeyの方が合っていたので、私はJoyToKeyを使用しています。
Steam BigPictureを直接起動するとボタンが反応しない場合。
私の環境でもそうです。Desktopを選択してください。
ボタンを反応させるために何をすれば良いのか私には分かりません。
Steam BigPicture以外を直接起動したい場合。
以下のjsonを編集してください。
C:\Program Files\Openstream\assets\apps_windows.json
(編集する場合、読み取り専用属性を外してください)
以下の例のように項目の追加が可能です。
https://blog-imgs-145.fc2.com/c/m/d/cmd0725/openstream_20210416_1.jpg
nameで名前、cmdでパスを指定します。パス中で \ は2回使用してください。
私の場合、直接起動しても尽くボタンが反応しないのでDesktopしか使ってません…
マルチモニター環境で1番ではない特定のモニターがvita-moonlightに映し出される場合。
Openstreamのissuesを確認する限りだとマルチモニターのサポートに問題があるようです。
私の環境でも同様の問題が発生しています。モニターの切り替えがサポートされていないようなので、
PC側で "1のみに表示する" のような特定のモニターにのみ表示する設定にしてください。
OpenstreamがPC起動時に起動してしまう件。
デフォでスタートアップのアプリになっており、alpha_2312.1では切り替えられないそうです。
https://github.com/LS3solutions/openstream-server/issues/7#issuecomment-773716366
どこでスタートアップに設定されているのか分からなかったので、私はopenstreamapp.exeをリネームする事で対処しました。(拡張子は弄らないでください)
何か問題が発生した場合はreddit、issues、公式サイトのcommunityを確認してください。
この記事はとりあえず試してみたってだけの記事なので…
あと私の場合目的がノベルゲーなので…
VitaでPCのストリーミングは素晴らしいですが、人によってはスマホでSteam Link使えば良くね?ってなるかも…
私もその一人です。私としてはVitaでこれが出来るって事自体が嬉しいんですが、それでも手軽さとかの観点で見ると
やっぱりスマホでSteam Link使う方が良いかなあって…。
vita-moonlight触ってたらどうしてもPC Linkの事思い出してしまいますね。
PC Linkの開発が続いていたらなあって今でも思う。