fc2ブログ
 

アマレコVR ベータ版 公開

おまたせしました。アマレコVRのベータ版を公開します。
Windows10 64bit用のフリーウエアとなります。
今回のバージョンはSteamVR用で、Oculus Rift および WindowsMRでの動作を確認しています。
SteamVRが一通り使える環境をそろえてから「AmaRecVR.exe」を実行してください。
各種動画の再生にはDirectShow 64bit版のフィルターが必要です。

アマレコVR その2 DirectShow準備編

ドキュメントが揃っていないので、しばらくは推理しながらご利用頂くことになります。
なお、操作はマウス専用です。モーションコントローラーは使えません。


1.マウス操作について
アマレコVRはマウスの操作を独占する(マウスフックする)ようになっています。
アマレコVRの動作中は他のアプリケーションやOSのマウス操作ができなくなります。
他のアプリケーションを操作する場合はアマレコVRを終了してください。

アマレコVRの終了は左ダブルクリックしてファイル選択画面を表示し「アプリ終了」を選択します。
何らかの理由によりアマレコVRの画面を見ることができなかったり「アプリ終了」が画面からはみ出して選択できないときは、左ボタンと右ボタンを10秒間押し続けてアマレコVRを終了してください。

ユーティリティソフトの設定でマウスフックを無効にできますが、その場合はアマレコVRを操作しているつもりが、デスクトップ上の他のアプリをクリックしてしまう事故のリスクがありますのでご注意ください。


■基本操作
機能操作
コンソール画面を表示左クリック
ファイル選択画面を表示左ダブルクリック
操作画面を消す
右クリックまたは何もないところで左クリック
操作画面の位置を調整右ボタンを押しながら左クリック
アマレコVR終了左ボタンと右ボタンを10秒以上押し続ける


■動画視聴中の操作
アマレコVR その3 機能・操作編

■コンソール画面の操作
アマレコVR その4 コンソール画面


2.初期設定
初期状態ではOSのビデオフォルダ内にあるmp4ファイルのみが選択できます。
他のフォルダやmp4以外のファイルを扱う場合はユーティリティソフトで設定してください。

utl.png 

2.1.フォルダ設定
チャンネル設定のコンボボックスから「フォルダ」を選択して、右にある「・・・」ボタンから目的のフォルダを選択します。
また、プレイリストを使うと一つのチャンネルに複数のフォルダを設定することができますが、プレイリストの説明は後日になります。

2.2.オーディオデバイスの設定
WindowsMRの場合はアマレコVR上は「既定のデバイス」を選択し、WindowsMR側の設定でオーディオデバイスを切り替えるようにしてください。
Oculus Riftの場合はアマレコVR上で「Rift Audio」を選択すると、Oculus Riftのヘッドフォンから音を出すことができます。


3.対応できないビデオファイル
場合によってはアマレコVRがエラー落ちしたり、フリーズする可能性があります。
ヘッドマウントディスプレイを装着したままこの状態に陥るととても困りますので、事前にアマレコVRユーティリティに再生したいビデオファイルをドラッグ&ドロップして簡易再生できるか確認することをお勧めします。


4.未実装等
・ファイル選択画面の下部にある画像サイズ等の情報は今回のバージョンでは表示されません。
・検索リストおよびお気に入りリストが100件を超えると、並べ替え等の処理に時間がかかります。
当面は100件程度を目安に使ってください。
・動画ファイルの再生開始時や検索中にアマレコVRの画面が消えてSteamVR?の画面が見えてしまいます。
・アマレコVR実行中はデスクトップにもアマレコVRの画面が表示されます。非表示にはできません。


5.ダウンロード
アマレコVR Ver1.00ベータ版


何かありましたらこの記事のコメント欄へご連絡ください。


アマレコVR その4 コンソール画面

視聴中に左クリックすると表示されるコンソール画面について説明します。


【コンソール画面】
console.png


■共通操作
右クリックで画面を非表示にします。
右ボタンを押しながら左クリックで、今向いている方向にGUIを移動します。
余白を左ダブルクリックでファイル選択画面を表示します。

■File
ファイル選択画面を表示します。
余白を左ダブルクリックしてもファイル選択画面を表示することができます。

■Seekbar
再生位置を移動します。
ホイール操作で指定秒送り、戻しができます。

■Console
左から、「前のファイルを再生」、「再生停止」、「再生開始」、「一時停止」、「次のファイルを再生」。
右ボタンを押しながらホイール操作でも前のファイル、次のファイルを再生することができます。

■Screen
VR動画にとって重要なスクリーン形状とレイアウト(サイドバイサイドなど)の設定です。
ここではスクリーン形状とレイアウトをセットにした「プリセットアイコン」から選択します。
また、この設定は動画ファイルごとに保存されます。
プリセット説明
2D通常の動画用の設定です。フラットなスクリーンに左目と右目で同じ映像を投影します。
3D
SbS
3D動画用の設定です。フラットなスクリーンに左目用と右目用の映像を投影します。レイアウトはサイドバイサイドです。
OU(Top and Bottom)については拡張コンソール画面で設定します。
180
SbS
180度VR動画用の設定です。180度の半球スクリーンに左目用と右目用の映像を投影します。レイアウトはサイドバイサイドです。
180
OU
180度、OU(Top and Bottom)レイアウトです。
360
OU
360度VR動画用の設定です。360度の全球スクリーンに左目用と右目用の映像を投影します。レイアウトはOUです。
F-Eye魚眼(Fish Eye)用のスクリーンに左目用と右目用の映像を投影します。レイアウトはサイドバイサイドです。


■More
拡張コンソール画面を表示します。

■Volume
音量を設定します。

■Camera Reset
カメラ位置の設定(ズームおよびカメラ位置上下左右)をリセットし、カメラ位置を球体の中心にします。
視聴中に左ボタンを押しながらホイールボタンをクリックするのと同じ働きです。

【拡張コンソール画面】
console_more.png


■Player Information
スクリーン形状等、現在のプレイヤーの情報を表示します。
[スクリーン形状] - [レイアウト] / [ステレオモード] / [カラー] / [テロップ]

■Screen Type
スクリーン形状の設定です。
スクリーン
形状
説明
2Dフラットなスクリーンに映像を投影します。
180180度の半球スクリーンに映像を投影します。
360
360度の全球スクリーンに映像を投影します。
F-Eye魚眼スクリーンに映像を投影します。


■Image Layout
3D映像の分割レイアウトの設定です。
レイアウト説明
2D映像は一つで左目と右目で同じ映像を投影します。(VR動画でもパノラマ系は2Dとなります)
SbS左目用と右目用の映像が左右に配置されている場合に選択します。
OU 
左目用と右目用の映像が上下に配置されている場合に選択します。


■Stereo Mode
左目と右目に表示する映像を選択します。
通常は左目に左目用の映像、右目に右目用の映像を表示するので「L-R」を選択します。
左右が逆に配置されたコンテンツの場合は「R-L」を選択します。
3D映像の視差が合わず見難い場合や、人物が小さく見える場合は「L-L」または「R-R」を選択します。ただし、左目と右目で同じ映像を見ることになるので立体感は無くなります。

■Camera Pitch
通常は球体の中心に左目用と右目用のカメラを配置します(2台のカメラが同じ位置になります)が、3D映像の視差が合わない場合に意図的にカメラの位置をずらすのがカメラピッチです。
数値を大きくすると左目用のカメラが左へ、右目用のカメラは右へ移動します。
マイナスにすると左目用のカメラが右へ、右目用のカメラは左へ移動します。
四角をクリックすると初期値に戻ります。

■Color Conversion
YUVをRGBへ変換する方式の設定です。
通常は「BT.709 LM」を選択します。白飛びする場合は「BT.709 FL」にすると白飛びを軽減できます。
「LM」はリミテッド、「FL」はフルレンジとして処理します。

■Telop
ビデオファイルの再生開始時にファイル名等のテロップ画面を5秒間表示します。
OFFにすると何も表示しなくなります。
「Setting」をクリックするとテロップ画面の右端にGUI Positionが表示されますので、テロップ画面の表示調整ができます。

■GUI Position
コンソール画面の表示位置と大きさを調整します。

■Performance
HMD(ヘッドマウントディスプレイ)の処理の実リフレッシュレートと再生中の動画の実フレームレート、および表示処理が間に合わずに意図的に捨てた画像数を表示します。
HMDのリフレッシュレートは機種により変わる可能性がありますが、多くの場合90Hzのようです。
主に、ビデオカードの処理能力不足の場合にリフレッシュレートが低下します。
主に、CPUの処理能力不足の場合にフレームレートが低下します。
主に、シーク操作やビデオカードの処理能力不足の際にドロップが増えます。


アマレコVR その3 機能・操作編

アマレコVRにとって最も重要なのがVR動画を快適に視聴するための機能とその操作方法です。
なお、アマレコVRはマウスによる操作が基本となります。
これは、マウスのホイール機能やドラッグ操作がメディアプレイヤーの操作にマッチしている為です。
(最初のバージョンはマウス専用を予定、モーションコントローラーでは操作はできない)

機能と操作(マウス)
機能操作
指定秒送り、戻しホイール
シーク操作左ドラッグ
次のファイル、前のファイルを再生右ボタンを押しながらホイール
今向いている方向を正面にする右ボタンを押しながら左クリック
上下、左右にスクリーンを回転右ドラッグ
ズーム操作左ボタンを押しながらホイール
上下、左右にカメラを移動ホイールボタンを押しながらドラッグ
カメラ位置のリセットホイールボタンを押しながら左クリック
または、左ボタンを押しながらホイールをクリック
コンソール画面を表示左クリック
ファイル選択画面を表示左ダブルクリック


【メディアプレイヤーとしての基本機能】
VR動画に限らず一般的なメディアプレイヤーとして重要な基本操作です。

■指定秒送り、戻し
初期状態で10秒送り、3秒戻しとなっています。環境設定用のユーティリティソフトで変更可能です。

■シーク操作
左ボタンを押したまま左右にマウスを一定量動かすとシークバーが表示されるので
目的の位置まで移動させて左ボタンを離すとシークします。
左ボタンを押している最中に右ボタンを押すとシーク操作をキャンセルします。

■次のファイルを再生
右ボタンを押しながらホイールで次のファイルや前のファイルを再生します。


【VRプレイヤーとしての基本機能】
VR動画を視聴するのに必須と思われる機能です。

■今向いている方向を正面にする(視点リセット)スクリーン回転
右ボタンを押しながら左クリックすると今、向いている方向(左右上下)を正面とします。
これがVRプレイヤーにとって最も重要な機能だと私は思います。
左右方向のみで上下の設定ができなかったり、コントローラーのボタンに機能が割り当てられてなく、GUI上のボタンを押す必要があるなどだと厳しいと感じました。
もっと言うと、その方向を向くことすら無理な体勢を強いられる場合がありますので、任意の方向へスクリーンを回転できると便利です。
アマレコVRでは右ボタンを押しながら左右上下にマウスをドラッグすることで、スクリーンをいつでも回転することができます。
ちょっと動かし過ぎて元に戻したくなったら、右ボタンを押したまま左クリックすればいつでも今向いている方向が正面になります。
これらにより、正面を向いたまま、真後ろや真上、真下の映像を無理な体勢をとらずに簡単に見ることができます。

■ズーム操作
カメラの位置を移動させてスクリーンに近づいたり、遠ざけることで、大きく迫力のある映像で視聴したり、引いて広い視野で見渡すことができます。
またVR(3D映像)固有の問題として視差が合わず二重に映像が見えてしまう場合にも、スクリーンから離れることで緩和することができます。


【VRプレイヤーとしての応用機能】
■カメラ移動
もうちょっと上とか、もうちょっと下を見たいけど角度は変えたくない場合にマウスのホイールを押しながらドラッグすることで
いつでもカメラを上下左右へ移動することができます。ただし、大きく移動すると画像が歪むため気休め程度の機能です。
動かしすぎて元に戻したいときは、ホイールを押したまま左クリックか、左ボタンを押しながらホイールをクリックします。



マウスに機能を詰め込んだため、操作は複雑ですが、簡単に言うと、右ボタンを押しながら〇〇でスクリーンの回転、左ボタンとホイールでカメラ位置の移動ができます。
使い方をマスターしてしまえば画面にGUIを表示せずVR映像を見ながらリアルタイムで操作できることから、快適性と没入感の両面で効果を発揮すると思います。

マウスを使ってアマレコVRを操作した瞬間、ほかのVRプレイヤーとは違うと感じて頂けるのではないでしょうか。
逆に、モーションコントローラーで操作したら、ほかのVRプレイヤーとあまり変わらないかもしれません。


アマレコVR その2 DirectShow準備編

アマレコVRではDirect Showを使って動画を再生しますので、対応する動画ファイル(コーデックやファイル形式)はシステムにインストールされているDirect Showフィルター次第となります。
そこで、今回はアマレコVRの開発で使ったフィルターとそのセットアップ方法を紹介します。
なお、アマレコVRは64bitアプリケーションとなるため、必要となるDirect Showフィルターも64bit版となります。

1.おすすめのフィルター
LAVFilters Ver 0.71
https://github.com/Nevcairiel/LAVFilters/releases

LAVFilters-0.71-Installer.exe をダウンロードしてインストールします。
lav_install.png

この中でアマレコVRが使うのは以下の2つです。
・LAV Video (x64)
・LAV Splitter (x64)


これらLAV Filtersをインストールすることでh.264やh.265と言った現在主流の動画ファイルを一通り再生できるようになると思います。


2.再生確認
アマレコVRには環境設定用のユーティリティソフトが同梱されています。
このユーティリティソフトに動画ファイルをドラッグ&ドロップすると、デスクトップ上で簡易再生が始まり、再生に使っているDirect Showフィルターの確認ができます。

もしLAV Filters以外のフィルターが使われていた場合はそのフィルターをそのまま使い続けてもいいですが、次の「デコードフィルタの優先権」の設定によりLAV Filtersにすることができます。

簡易再生
play_ffdshow.png

一番下のkrkr_60fps.mp4と表示されているのがLAV Splitterです。これは問題ありませんが、下から2番目のビデオデコーダーにFFDShowが使われています。
これをLAV Video Decoderになるように設定します。

なお、Graph Editで確認するとこうなっています。
graph_lav_splitter.png


3.デコードフィルタの優先権の設定
従来のDirect Showにおいて、どのフィルターを優先して使うかはDirectShowフィルターのメリット値で管理していましたが、
現在はOSの管理により特別に優先するフィルターを決められるようです。

なので、ここではPreferred Filter Tweaker v6.3を使ってLAV Filtersを優先的に使うように設定します。
https://www.codecguide.com/windows7_preferred_filter_tweaker.htm


「Preferred decoders」を選択します。
Preferred.png


64bit デコーダーのH.264等、利用したいビデオデコーダーを一通り「LAV Video」に設定します。
Preferred_h264.png

最後に下部にある「Apply」ボタンを押して確定します。
もし、今まで再生できていた動画が再生できなくなったり画質が低下したなど、不都合が生じた場合は、「Reset」ボタンを押すか、デコーダーを「Microsoft」に設定すればPCの初期状態に戻ると思います。


これでアマレコVRユーティリティでの簡易再生もLAV Video Decoderが使われるようになります。
play_lav.png

【注意】
lav_video_decoder.png
アマレコVRは画像フォーマットとしてYUY2およびNV12を使います。
なので、LAV Video Settingsの出力フォーマットの「NV12」と「YUY2」は必ずONにしてください(初期状態でONなのでいじらない)。





アマレコVR その1 概要


先日Twitterで発表したアマレコVRの概要を紹介します。

アマレコVRはVR動画を快適に視聴することを目的とし現在開発しているアプリケーションで、2D、3D、180度、360度、およびFish Eye方式の動画に対応しています。
開発の中心はUnityでメディアプレイヤー部分はDirect Showとなります。
最初に公開するバージョンはSteamVR版となりますのでWindowsMR、Oculus Rift等で利用できます。

当面は実験的意味合いの強い内容となり、公開はこのブログにて4月下旬を予定しています。


 
 
あまラボへようこそ
このブログでは自作ソフトの最新情報やtips、PC動画に関する話題を掲載していきます。各記事へは下にあるカテゴリからアクセスして下さい。

ファイルのダウンロードはホームページの方でお願い致します。

質問・要望・不具合報告はこちら
アマレコTV
アマミキ!
アマレココ
アマレコ・ライト
ファンタジーリモート
AMVコーデック



ホームページ
カテゴリ
最新コメント
カレンダー
03 | 2018/04 | 05
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 - - - - -
最新記事
最新トラックバック
ブログ内タグ

アマレコTV ビデオキャプチャ アマレコVR AMVコーデック Oculus アマレココ Quest アマミキ! コーデック gQuest SC500 動画配信 Pico GO ファンタジーリモート 4K アマレコライト Unity プラグイン G2 AMV4 oculus ライブ機能 SC512 パススルー機能 デスクトップキャプチャ Passthrough AVX2 リモートソフト FAQ 質問コーナー アセット機能 ニコニコ動画 HDキャプチャ DirectShow 背景透過 120Hz Asset レゴ 遅延 解説動画 組み換え 可変再生速度 Meta LEGO MetaQuest VR GV-USB2 XL2420T 2 Pico4 倍速液晶 液晶モニター デインターレース ベンチマーク アマステ Intensity VRonVR AMV2MT MonsterX3A Pro PS4 VideoKeeper2 designs インストール Alternate AVX XCAPTURE-1 RDT233WX-Z GV-USB SD-USB2CAP4 31024 32ZP2 31006 ffmpeg 画像処理 60fps Robust Matting RGBキャプチャ Rift Video Shadow Play WindowsMR RYZEN UtVideo T2 HDMI NVEnc HDCP QSV LameACM OBS 音遅延 MP3 Haswell 電源オプション 音ズレ 録画 オーバーレイ XCapture-1 MonsterXU3.0R フィギュア ハイパースレッディングテクノロジー HT 31021 MPC 液晶テレビ DirectShowFilter プレビュー 擬似NTSCキャプチャ SD-USB2CUP4 Livetube AtomでHDキャプチャ キャプチャーツール シンクライアント イベント IntensityPro DC-HD1 額縁遅延 REGZA ZP3 倍速補完処理 32ZP32 Kabelake リプレイ機能 モノステ 倍速駆動 ゲームスムーズモード LAVFilters SkyBox Hand Tracking 2.0 ファイルマネージャプラス pytorch APIパススルー機能 API python ハンドジェスチャー パカラーススルー機能 アルファ付き動画 アルファ付きVR動画 RVM クロマキー ダウンロード AssetBundle 物理処理 download passthrough 検証 Preferred Filter Tweaker SteamVR GPU使用率 可逆圧縮 SKnet GV-USB3 キャプチャカード VR動画 フレーム間圧縮 新プレイヤー機能 AMPlayer 60Hz 新アマレコVR 90Hz VRコントローラー MR Windows SSE 

ブログ内検索
月別アーカイブ
アマレココに関するリンク
お世話になっているソフトのリンク
RSSリンクの表示
管理画面
  • 管理画面