スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« ダイアログを二つ作成 | トップページ | 録画機能も一応は実装完了 »

後は録画機能

今は、Ubuntu版Mirror-DTCの開発フェーズで、サーバーの変更は終わったので、クライアントの変更を行っているのだが、今日は、音声出力の設定機能の実装を完了した。なので、後は録画機能になるのだが、AGM形式用のコードは追加した。

数日前に書いた様に、Ubuntu版クライアントに実装する録画機能の出力形式はAGM形式に限定する。
 
その理由は、特許等の絡みもあって、Ubuntu上で利用可能なエンコード用の一般動画形式はWebMのみなのだが、これを使用した場合、追加ライブラリの導入が必要になるからだ。
 
更に、もし、それを追加したとしても、フルHD30FPSの録画ですら、余程の高性能PCでもない限り、リアルタイムで行う事は出来ないからだ。
 
と、言う事で、Ubuntu版の録画機能で利用するエンコード形式は、作者製の処理コードをソースコードに追加するだけで利用でき、少なくとも、普通のデスクトップ PC程度の性能があれば、フルHD30FPSでのエンコードはリアルタイムで行えるAGM形式にする事にしている訳だ。
 
で、Mirror-DTCには、圧縮形式として、「デスクトップ圧縮」/「映像圧縮」/「ストリーミング圧縮」があるのだが、判っている人は判っている筈なのだが、それらは、AGM形式のAGM-RGB・AGM-YV12 / AGM-DCT / AGM-DCT+に対応している。
 
つまり、簡単に説明すると、デスクトップ圧縮は、キャプチャー画像を最高画質ではRGBのまま、それ以外の画質ではYV12に変換し、その差分をハフマン圧縮して転送しているし、映像圧縮では、最高画質ではYUV変換し、それ以外ではYV12に変換し、その差分をDCT変換して転送しているし、ストリーミング圧縮では、映像圧縮の差分部分を動き補償によるフレーム間予測に置き換えている。
 
と、言う事なので、Mirror-DTCの圧縮形式というのは、AGM形式のRGB/YV12/DCT/DCT+に対応しているのだが、実際の所としては、Mirror-DTCでは、扱う映像がデスクトップ映像になる事から、エンコード方式の詳細部分については、デスクトップ映像用に最適化している。
 
なので、Mirror-DTCのソースコードの中には、AGM形式動画用のソースコードと同名の関数があったりするのだが、その中身は少し異なったりしている場合も多々ある。
 
と、言う事なので、それらの関数を使ってAGM形式動画を扱ってしまうと、互換性に問題が出る事になるので、今日は、AGM形式動画用の処理関数については、全てクラスで構築してあるので、そのクラス名を変更して、Mirror-DTCのソースコードに追加した。
 
なので、少し重複している関数なんかも出てきているのだが、AGM形式動画用のエンコードには、確実に、それ用の関数を使える格好にはできたので、録画機能の追加も、安心して行える様になった。
 
ちなみに、AGM形式でのエンコードが行える準備はできているので、多分、録画機能の実装は、明日には終わるのだが、Mirror-DTC Ver1.4.0 for Ubuntuの公開は、来年になってからにする事にする。
 
これは何故なのか、というと、リリースを来年に持ち越すと、バージョン情報ダイアログだとか、ホームページ等にあるCopyright表記をCopyright 2019、と、書けるからだ。
 
つまり、Mirror-DTCは2019年にも更新されたのだなあ、という格好にしておくと、最終更新は2018年、という事にするよりも、世間体が良さそうなので、そうする事にする訳だ。

« ダイアログを二つ作成 | トップページ | 録画機能も一応は実装完了 »

トラックバック


この記事へのトラックバック一覧です: 後は録画機能:

« ダイアログを二つ作成 | トップページ | 録画機能も一応は実装完了 »

2019年9月
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          

広告

プライバシーポリシー

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

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

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

    ポリシーと規約 - Google