スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« フリー版とは明確な性能差 | トップページ | ウインドウ録画の変更点 »

意外と頼もしい感じ

今はAmuseGraphics Ver1.4.1の開発フェーズで、既に、AGMPlayerとAG-ムービーカッターに引き続き、AG-デスクトップレコーダーの開発に移っているのだが、当初の予想に反し、今回の更新は意外と頼もしい感じになったかもしれない。

Ver1.4.1では、AG-ムービーカッターの変更量が多いのだが、AGMPlayerについても、操作性の向上効果は高いので、こちらについても、十分、価値のある更新になっているかもしれない。

これらに対して、AG-デスクトップレコーダーについては、既に、ユーザー数がかなり多い、という事もあり、あまり劇的な変更は行えない、という事もあり、今回の更新は地味になるかなあ、と、思っていたのだが、イザ、開発を始めてみると、色々な改良ネタが出てきた。

そのメインとしては、既に書いてきた様に、画面変化が少ない場合には、エンコード負荷を減らす、という処理の追加があって、この処理の効果は、少なくとも、普通のデスクトップ操作の状況をキャプチャーする場合には、かなりのモノになる。

また、今日は、YouTubeでやっていた日本アニメの再生状況を録画してみたりもしていたのだが、Ver1.4.0とVer1.4.1では、処理負荷がかなり異なった。

これは、日本のアニメの場合、ディズニーアニメなんかとは違って、30FPSの動画でも、実質、15FPS程度でしか映像が動いていなかったりするので、実質的なフレームレートに合わせてエンコードしていれば、処理負荷を低減できる訳だ。

更に、YouTubeを窓表示している場合には、窓以外の領域では画像変化はないので、その分についても、処理負荷が軽減される。

ただし、動きがない領域についてはエンコードしない、というオプションは、AGM形式の中でも、デフォルト設定にしている、AGM-DCTについてのみ有効で、その他のYV12/RGBでは効力は発揮しない。

もっとも、DCT+については、少しは効果が出るかもしれないので、明日、チャレンジしてみるつもりではある。

で、今日は、画面変化がない場合の処理負荷の低減処理をバッファリングエンコードにも応用して適用してみた所、こちらでも、十分な効果が出た。

具体的には、何もしていない状況だと、バッファリング処理の負荷が大幅に低下する様になったのだが、バッファリング処理のエンコード形式は、AGM-YV12/RGB相当なので、AmuseGraphicsのレジストユーザー的には、何もバッファリングエンコードにしなくても、AGM-YV12/RGB形式でリアルタイムエンコードしても良いかもしれない。

何故なら、その方が、最終的にはmp4形式にしたい、という様な場合にも、エンコードは後から、必要な部分のみ、AG-ムービーカッターを使って行う事が可能だからだ。

しかしまあ、処理負荷については、やはり、バッファリングエンコードの方が、AVI形式でファイル保存する必要がない分、微妙に、バッファリング時の処理は軽いので、こちらについても、リアルタイムエンコード時と同様に、画面変化がない場合には処理負荷を減らせる、というのであれば、減らせる様にしておく事にした訳だ。

で、上記以外にも、既に書いた様に、デュアルモニター構成時には、現行版だと録画対象以外のモニターでの画面描画が録画状況に悪影響を与えるのだが、Ver1.4.1では、その悪影響を最小限に抑える様にもした。

具体的には、現行版だと、例えば、モニター1を録画している状況で、モニター2側でも同じ程度の画面変化があると、録画ファイルに記録されるモニター1の実質的なフレームレートは半分程度になってしまうのだが、Ver1.4.1では、CPU性能に余裕があれば、モニター1の全フレームを録画出来る様になる。

また、これは今日、始めて書くのだが、現行版では、画面変化とマウスカーソルのタイミングが微妙にずれているので、ウインドウをマウスでドラッグして高速に移動させると、録画ファイルでは、マウスカーソルだけが先に移動し、ウインドウはその後に少し遅れて追随する、みたいな感じになってしまっている。

これは、マウスカーソル画像はキャプチャー映像に、後から合成している格好になるので、マウスカーソルの位置情報等の取得タイミングが映像の取得タイミングよりも、微妙に後になるからだ。

なので、Ver1.4.1では、マウスカーソル関連の情報取得を、極力、映像の取得タイミングに合わせる格好にした。

その結果として、前述の様な、ウインドウのドラッグ時にも、マウスカーソルだけが先に移動する、という現象は、完全に無くなる事はないのだが、かなり緩和される格好になった。

と、いう事で、Ver1.4.1では、結構、本質的な部分に対する改良が入る事になったので、意外と、頼もしい感じの更新になりそうだ。

上記以外にも、Ver1.4.1では、最新のWindows10環境で、ウインドウ録画でウインドウを隠すオプションを使うと、隠されたウインドウで再生されている動画なんかの映像は停止してしまう問題があるので、Mirror-DTCのトランスポーター用に開発した別のウインドウを隠す処理を適用出来る様にする。

つまり、最新のWindows10環境でも、ウインドウ録画でウインドウを隠した状態で動画なんかの録画が可能になるのだが、それ以外にも、ある意味、隠し機能レベルの機能として、音声入力のレベル変更だとか遅延変更なんかも行える様にする予定だ。

予定、と、書いているのは音声入力のレベル設定については、AG-Webカメラレコーダーの様に、録画中にも、リアルタイムに変更可能にしようかなあ、と、思ったりもしているからなのだが、AG-デスクトップレコーダーの場合、通常は、ループバック録音を行う事になる筈なので、リアルタイムの音量調整は必要ないかもしれない。

なので、どうしようかなあ、と、今日の時点では思っているのだが、いずれにしても、既に、主要機能のテストは完了しているので、今週中には、実装を終わりたい今日この頃だ。

« フリー版とは明確な性能差 | トップページ | ウインドウ録画の変更点 »

2019年12月
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 31        

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google