スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« ズーム・パンはどうするか | トップページ | 後は、UIを完成させるのみ »

逆再生/速度変更出力も

今は、AmuseGraphics Ver1.4.1の開発フェーズで、macOS版AGMPlayerに続き、macOS版AG-ムービーカッターの変更作業中で、昨日書いたズーム・パン機能については、内部処理は容易に実装出来たので、逆再生/速度変更出力も追加する方向だ。

逆再生機能というのは、AmuseGraphicsが想定している主な動画制作用途である所のソフトの操作説明用動画の制作なんかでは、普通は使われない機能になる筈だ。

しかし、iMovieには「早戻し」機能という、再生速度変更機能付きの逆再生出力機能があるし、YouTuberの動画なんかを見ていても、たまに、使われている機能ではある。

そして、その実現方法は、動画ファイルの最後のフレームから逆順にエンコードしていけば良いだけなので、普通に鑑みれば、実現は容易だ。

なので、この際なので、AG-ムービーカッターにも、次バージョンで、逆再生出力機能を追加しようかと思っているのだが、実用性を鑑みて、逆再生出力が可能なのはAGM形式動画に限定する事にする。

これは何故なのかというと、何度も書いてきた様に、AGM形式動画は正確なシーク処理が可能なのだが、OSが提供しているデコード環境を利用しなければならない、その他の一般的な動画形式では、正確なシーク動作が行えないからだ。

つまり、逆再生出力を実現しようとすると、動画ファイルの全フレームを逆向きに取得する必要があるのだが、OSが提供しているデコード環境では、普通は、そういった用途向けに逆向き再生機能は提供されないので、逆向きのフレーム取得は、各フレーム毎に、シークを行って取得する必要があるのだが、前述の様に、OSが提供しているAPIでは、普通は、フレーム単位での正確なシークは行えないし、行えたとしても、処理に時間がかかるので、こういったAPIを使用しつつ、全フレームを逆順に取得するのは現実的ではない訳だ。

これに対して、AGM形式動画の場合、デコーダーの内部処理的には、シーク処理の最終的なパラメータはフレーム番号になっているので、正確に、全フレームを逆順に取得していく事は可能だし、その場合のデコード負荷も、大した事はない。

と、いう事で、AGM形式動画については、逆再生出力機能の実現に必要な全フレームを逆順に取得する機能の実現は容易、かつ、現実的なので、逆再生出力の対象はAGM形式動画のみにする事にする。

じゃあ、mp4動画なんかの逆再生出力はできないの? みたいな声も聞こえてきそうなのだが、AG-ムービーカッターには、mp4動画をAGM形式動画に再エンコードする機能もある訳なので、逆再生出力したいmp4動画がある場合には、まず、それをAGM形式動画に再エンコードしてしまえば良いだけの話になる訳だ。

で、速度変更出力機能については、内部処理的には、もっと簡単に実現可能で、かつ、こちらについてはAGM形式動画に限定する必要もない筈なのだが、AGMPlayerに実装してある様な、音声のピッチ変更付き速度変更を実現しようとすると、少し大変になるので、AG-ムービーカッターの速度変更機能では、ピッチ変更は行わない事にする予定だ。

これは何故なのかというと、速度変更機能はiMovieにもあるのだが、iMovieでも、ピッチ変更は行なっていないし、YouTuberが速度変更を行っているケースでも、その殆どは、敢えて、ピッチ変更をしない事で、早送りである事を判る様にしているからだ。

つまり、普通の早送りではピッチ変更は行われておらず、ピッチ変更付きに速度変更出力機能の実装は大変なので、やらない事にしているのだが、更に言えば、AG-ムービーカッターでは、現行版でも、「音声ファイルの加工」機能を使えば、ピッチ変更付きの音声速度変更出力は行えるので、ピッチ変更付きの音声を使いたければ、この機能を使って作成した音声を「音声トラックの別指定」で、後から指定してやれば済む話でもある訳だ。

と、いう事で、次バージョンのAG-ムービーカッターである所のVer1.4.1では、トランジション効果の追加機能に加えて、ズーム・パン機能、更には、逆再生/速度変更出力機能を追加する事になるのだが、最初に書いていた様に、合成映像の追加機能については、テキストファイルでの指定も可能にしたいのだが、トランジション効果の追加機能の件もあるので、これらは、「ファイルリストの読み込み」/「ファイルリストの保存」機能を強化する格好で実現する事になる様な気がする。

つまり、現行版では、「ファイルリストの読み込み」機能では、ベース動画だけが、一括で読み込めるのだが、次バージョンでは、同時に、合成ファイルの設定も読み込まれ、かつ、音声トラックの別指定だとか、トランジション効果、更には、ズーム/パン指定についても、ファイルリストを読み込むだけで、読み込まれる格好にしようか、と、考えている。

つまり、ファイルリストは次バージョンでは、一般の動画編集ソフトのプロジェクトファイル見なしにしつつ、かつ、そのファイルはテキストエディタで編集可能とする事で、一々、GUIを使って使用するファイルだとか合成設定なんかを指定しなくても良くしようと考えている訳だ。

と、いう事で、まだまだ、やる事は色々とあるので、今週末のリリースはないのだが、既に書いてきた様に、既に、難しい変更は終わっているので、来週末くらいには、macOS版については、リリースできている様な気がする。

で、同様の変更を行って、Windows / Ubuntu版についても、リリースする予定なのだが、それらを先に開発していると、macOSの次バージョンがリリースされてしまうので、その前に、TiExtenderのバージョンアップ版をリリースする格好になる筈だ。

 

« ズーム・パンはどうするか | トップページ | 後は、UIを完成させるのみ »

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