スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 本体は音声合成機能 | トップページ | ムービーカッターは良い感じ »

次はシークプレビュー?

今は、Windows用AmuseGraphicsの開発フェーズで、共通項目の実装は終わったので、個別項目の実装に移っているのだが、本体への音声合成機能の実装は終わった。なので、次はAG-ムービーカッターにシークプレビュー機能を実装してみる。

シークプレビュー機能というのは、 YouTubeなんかの動画プレイヤーで、シークバーにマウスカーソルを乗せると、その位置の動画映像が小さくウインドウ表示される「アレ」という事になる。

で、最近は、上記機能が実装された動画プレイヤーが増えたので、逆に、そういう機能が実装されていない動画プレイヤーを使っていると、不便に感じてしまう様になった訳だ。

と、言う事なので、作者的にも、自前の動画プレイヤーである所のAG-ムービーカッターとAGMPlayerに上記機能を実装しようか、と、思っている訳なのだが、上記機能を実現しようとすると、少し問題も出てくる。

具体的には、上記機能は動画の再生中にも有効でなければならないので、プレビュー画像を取得するためには、メインの動画オプジェクト以外に、プレビュー画像取得用のオブジェクトが必要になる訳だ。

つまり、例えば、再生中の動画オプジェクトのシーク位置が1分の所にある状況で、シーク位置が2分の位置にある画像を取得しようとすると、一つの動画オブジェクトしかないと、シーク動作が入る事になるので、再生中の動画の再生が途切れる可能性が高くなる。

なので、こういった問題を起こさない様にするためには、再生用のオブジェクトを流用せずに、プレビュー取得用には別のオブジェクトを作成する必要があるのだが、だとしても、物理的な動画ファイルは一つしかないので、物理的なシーク動作による再生の乱れが発生する可能性はある。

更に言えば、 AGMPlayerのネットワーク再生時には、プレビュー画像の取得により、ネットワーク帯域が消費される事で、再生が途切れる可能性もある。

と、言う事で、プレビュー機能というのは、下手な実装をすると本来の再生動作に支障を与えかねないのだが、上手く実装するためには、再生環境の構造改革まで必要になる訳だ。

何故なら、YouTubeなんかの動画プレイヤーでシークプレビューが可能になっているのは、再生用のバッファリングが十分に行われているからだ。

つまり、安定した動作を可能にするためには、再生用のバッファリングを強化する必要があるのだが、そういう事をやりだすと、再生開始が遅くなったり、シーク動作が重くなったりもする訳だ。

と、言う事で、シークプレビュー機能というのは、見た目的には豪華な機能になるのだが、実際のところ、そんなモノがなくても、現行のAG-ムービーカッターやAGMPlayerのシーク動作は高速なので、シークバーをドラッグすれば、その位置にある映像はリアルタイムに確認できるし、その時点で実際のシーク動作は終了しているので、引き続き次の動作も可能になる。

なので、シークバープレビュー機能には華があるのだが、ソフトの本質的な機能を阻害する可能性もあるので、作者的には、とりあえず、ネットワーク再生機能がないAG-ムービーカッターに実装してみて、使えそうならAGMPlayerにも実装する、という方針で作業に入る事にする。

« 本体は音声合成機能 | トップページ | ムービーカッターは良い感じ »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/66053122

この記事へのトラックバック一覧です: 次はシークプレビュー?:

« 本体は音声合成機能 | トップページ | ムービーカッターは良い感じ »

2017年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 のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google