T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« とりあえず走り出す | トップページ | 機能ブロックは揃った? »

雑務を積み上げる

今は、AmuseGraphics Ver1.4.4の開発フェーズで、AGMPlayerを更新中だ。今回の目玉は簡易Webサーバーを利用したリモコン機能なのだが、中々、イメージが湧かないので、必要そうな環境から作り始めている。

リモコン機能で実現したいかなあ、と、何と無く、考えている機能は二つある。

その一つは、視聴中動画に対するシーク機能、もう一つは、視聴中動画から別動画に切り替えられる機能だ。

少し前に更新したAGMServerのWeb視聴機能では、最初にライブラリ内の動画を選択すると、その動画の視聴用ページが表示される。

その視聴用ページには、視聴中動画に対するシーク機能は搭載されているのだが、視聴中に別動画に切り替える機能は搭載されていない。

もっとも、視聴用ページを抜けると、また、ライブラリ内の動画を選択できるページに戻れるので、異なる動画を選択する事は可能だ。

と、言う事で、今回、AGMPlayerに追加しようとしているリモコン機能というのは、基本的には、AGMServerのWeb視聴機能のサブセットで良い筈で、そのサブセットに、動画の視聴中に別動画を選択できる機能を追加すれば良い! という感じではある。

にも関わらず、詳細仕様を決めかねているのは、リモコン機能を動作させる環境が、Webブラウザで表示されるページ内だからだ。

具体的には、PCやMacで動作させるソフトの場合、例えば、1366x768くらいの解像度の画面がある事は想定できるので、その縦横比で画面に収まる様なUIを前提にすれば良いのだが、今回追加しようとしているリモコン機能の動作環境としては、スマホ/タブレットを想定しているので、その解像度や縦横比は想定できないからだ。

つまり、PCやMacのUIでは、普通は、縦長画面を想定する必要はないのだが、スマホ/タブレットの場合、縦長になる事もあれば横長になる事もある。

更に嫌らしいのは、スマホは画面が小さく、タブレットは大きいので、表示できる情報量が大幅に異なる、という事だ。

なので、例えば、横長のタブレット画面を想定してUIを作るのであれば、PC/Mac並みの高機能UIも実現可能なのだが、そんな画面をスマホの縦画面に表示しようとしたら、強引に縮小するしかなくなるのだが、そうすると、画面内のテキストを視認する事も難しくなるし、指での操作なんて絶望的になる訳だ。

と、言う事なので、高機能なリモコン機能を実現しようとすると、タブレットの横置き使用を想定する必要があるのだが、そういうUIを前提にすると、スマホの縦持ち時なんかでは、その環境でも利用できる、よりシンプルな異なるUIを別に提供しなければならない。

逆に、スマホの縦持ち時に利用可能なUIをベースに考えると、そのUIは、タブレットの横持ち時にも、普通は使えるので、複数のUIを構築する必要がなくなる分、開発は楽になるのだが、スマホで表示可能な情報量なんて高が知れているので、そんなUIにしてしまうと、大した機能は実装できなくなる訳だ。

上記の様な事を考えると、クライアントの解像度/縦横比に応じて異なるUIを使える様にするのが望ましいのだが、今回追加しようとしているリモコン機能というのは、そこまでしなければならない機能でもない訳だ。

何故なら、数日前に書いた様に、このリモコン機能はオプション扱いなので、ユーザー的には必ずしも使う必要はないし、あったら便利かも? 程度の代物だからだ。

にも関わらず、作者的には、色々と悩んでしまうのは、AmuseGraphics Ver1.4.4では、AG-デスクトップレコーダーとAG-Webカメラレコーダーについては、タブレットを使えば、快適に操作して使えるレベルのリモコン機能を搭載しようか、と、思ったりもしているからだ。

これは、AG-デスクトップレコーダーについては、画面に表示されている映像を録画するツールになるので、録画中に画面上にコントロール用の部品なんかを表示する訳には行かない! という本質的な問題を初版の頃から抱えてきているからだ。

なので、AG-デスクトップレコーダーは、初版の頃から、既に、タスクバーに常駐する格好にして、普通のソフトが持つメインウインドウなんかは表示する必要を無くし、録画の開始/終了の操作についても、キーボードショートカットで行える様にした。

しかし、専用のウインドウなんかを持たない関係で、録画状況のフィードバックが行えないので、録画を開始した後、本当に録画できているんだろうか? という不安は常に付き纏う事になった。

なので、現行版では、拡張Webページを利用可能にし、これを使えば、録画中に、その状況をスマホだとかタブレットで表示できる様にした。

その結果として、とりあえず、録画を開始した後、各種設定やフレーム落ちなく録画できている、みたいな情報をテキストで確認できる様になっているのだが、次バージョンでは、テキストだけではなく、録画中映像も確認可能にしようとしている。

つまり、TiMediaServerの収録モニター機能と同様の機能も追加する予定なのだが、AGM形式での録画時には、録画中に再生も可能にできるので、追いかけ再生機能も搭載しようと考えている。

追いかけ再生機能は、現状、AG-デスクトップレコーダーをモニターモードで動作させ、AGMPlayerのストリーム録画機能を利用すれば、実現可能なのだが、この場合には、ウインドウ録画を使うか、デュアルモニター構成で、録画していない領域でAGMPlayerを表示する必要がある。

また、AGMPlayerから音声を出力したい場合には、録音中の再生デバイスとは異なるデバイスに音声出力する必要があるので、それなりに気合を入れて準備しておかないと、追いかけ再生を実現する事はできない訳だ。

これに対して、拡張Webページの延長線上で、同様のことをやろうとすると、録画画面にスマホやタブレットが映り込む事はないし、音声出力についても、スマホやタブレットで行われるので、録画中の動画に入り込む事がない。

つまり、より、すっきりと、簡単に、追いかけ再生可能な録画機能を実現できる。

AG-Webカメラレコーダーについては、PCに接続したカメラを監視カメラ扱いにして録画する! という利用方法も想定されているので、録画や確認がリモート環境で行える! というのは、AG-デスクトップレコーダー以上に、必要性が高い機能になるかもしれない。

と、言う事なので、今回の更新では、AG-デスクトップレコーダー/AG-Webカメラレコーダーの双方に、録画映像の追いかけ再生も可能なリモート操作機能を、それなりに真面目に追加する予定なのだが、この機能を実装するにあたっても、今回のAGMPlayerと同様の問題は発生する。

なので、その準備として、まず、AGMPlayerで、クライアント環境に応じたUIの変更が行える様な機能をテスト実装しようかなあ、と、思ったりもしているのだが、前述の様に、AGMPlayerでは、そこまでやる必要性はないかもしれない訳だ。

と、言う事で、悩ましいのだが、いずれにしても、最低限必要になる実装というのは、存在しているので、今は、まず、そういった実装を行なっている。

ある意味、雑務をやっている感じなのだが、そういう雑務を積み上げていくと、開発環境が整備されていくので、より複雑な機能を実装しようとした場合にも、より簡単に行えたりする様になる訳だ。

なので、雑務をやっていても時間の無駄、という事にはなっていないので、今週中には、AGMPlayerの更新も終わりにできないかなあ、と、思ったり思わなかったりしている今日この頃だ。

« とりあえず走り出す | トップページ | 機能ブロックは揃った? »

2025年2月
            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  

広告

プライバシーポリシー

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

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

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

    ポリシーと規約 - Google