2010/07/16

AK-Cam バージョン1.0.4 リリース

マイナーアップデートです。
  • 速度向上
  • FPS可変
  • スムージングアルゴリズム変更

2010/07/09

Ustreamの16:9アスペクトレシオについて

Ustreamには16:9の画面比率にする機能がありますが、このときもAK-Camでは4:3の比率で使用してください。なぜならUstreamの16:9は「単にビデオ領域を16:9」にするだけのようだからです。なので特にAK-Camでも16:9にしなくても、レイアウトを調整してやればきれいに放送できるようです。

AK-Cam - UstreamにおけるAdobeFlashMediaLiveEncoderとの兼ね合いについて

現在確認できている現象として(開発者の環境でのみですが)、UstreamにおいてLiveEncoderを使用すると、UstreamデフォルトのBroadcasterを使ったときよりフレームレートががた落ちします。理由はわかっていませんが、Ustreamを使う際にはFlashプレイヤーのインスタンスをいくつか立ち上げることになる場合があり、LiveEncoderと併用するとAK-Camのモジュールがその数だけ読み込まれます。それが原因となっているかどうかはわかりませんが、ニコニコ生放送ではクオリティがあがります。
なので一応現在UstreamではデフォルトのBroadcasterかUstreamが発行している高画質配信用プラグインの使用を推奨します。
Ustreamのライブ再生画面のFlashはなぜだか放送主用でなくても仮想カメラモジュールをリロードするようです。

追記:ニコ生でも放送者用プレイヤーを複数立ち上げた場合には同様のことが起こります。

AK-Cam version 1.0.3 リリース

マイナーアップデートです。
キャプチャーモード時のスクリーンに「Press [ESC] key to exit」という表記を追加。
ダウンロードサイト

2010/07/08

AK-Cam バージョン1.0.2リリース

マイナーアップデートです。
ライブ配信時に、ライブサイトとAK-Camの起動はされているがキャプチャーが何も存在しないという場合の待機画像を「砂嵐画面」から新規画像へ変更いたしました。

このアップデートでは以上です。
ダウンロードサイト

2010/07/04

高速・高画質・高柔軟性を持つライブ配信用キャプチャーソフト(仮想カメラ)

ダウンロードサイト

最新版DirectXラインタイムをインストールしてください

■特徴
・簡単、高速、高画質
Flash Media Live Encoderや配信サイトの設定に自動的にあわせるので、面倒な配信設定は必要ありません。
・Windows(R)7世代のハードウェアアクセラレーションが施された描画機構を使用(Direct2D)
・デスクトップ領域複数同時キャプチャ
・マルチモニター対応
・マルチシーン管理機能
・ダイナミックワイプ編集
移動、拡大縮小、回転、透かし効果(半透明効果)、リアルタイム編集(ライブに即反映)
・ゲームキャプチャー機能(Direct3D 9,10,11対応)
マルチモニター環境において、フルスクリーンゲームをキャプチャーしながらの配信がしやすい操作になっています。
・コメントフロー機能(β)。SkypeAPIとの連携により、Skypeでやりとりされるチャットが描画結果へ流れるコメントとして反映されます。
・クロマキー処理(sRGB、HSV色空間)
よくTVとかで青の背景で撮影してたりするあれ。色は好きに選べます。また、抜き色とその他の部分の境界部分に抜き色との中間色が残ってしまい汚い時などにはワイプ詳細設定からクロマキー閾値を調整することでこれを解消できます。
・ドラッグアンドドロップで画像データをリアルタイムにライブ配信へ追加
画像ファイルをドラッグ&ドロップしてライブ配信中の好きなときに追加できます。
・AdobeFlashMediaLiveEncoder(R)対応
FMLEでライブ配信をすることにより高品質配信ができます。
FMLEでの入力解像度変更を動的に監視し、AK-Camで使用する解像度などを動的に調整します。低解像度のほうが処理が軽くなりますが、コンピュータービジョン機能などを使う際に精度が落ちる他、当然のことながら画質が低下します。
・有名ライブ配信サイトで使用可能
・省スペースUI
・Ustream、Stickam、justin.tv、ニコニコ生放送などでお使いいただけます。

■とりあえず使うには
1.放送サイトの放送画面を表示。FlashMediaLiveEncoder(FMLE)などを配信に用いるときはそれも起動。
2.AK-Camを起動。
2.1.カメラ機能を用いるFlashや FMLEなどはAK-Camをカメラと認識して、AK-Camの仮想カメラモジュールを起動時やサイト表示時に読み込みます。AK-Camを起動しているときにその読み込みが行われると配信画像が乱れたり、初期画像に戻る場合がありますが、その時はAK-Camの「ドライバ再読込」ボタンを押したり、FMLEの再起動やサイトのF5再表示などで対応できます。
3.カメラリストでAK-Camを選択。 画像が乱れていたり、表示されない場合は、簡易コントロール上にある「仮想カメラ再読込」ボタンを押してみてください。 リストに出ない場合はAK-Camモジュールがホストプログラム(FMLEやブラウザ)に読み込まれていません。 AK-Camを起動した状態でホストプログラムを再起動することで再読み込みされます。
4.なんらかのキャプチャーを試してみて、キャプチャ内容が表示されれば成功です。
5.コンピュータビジョン機能についてはこちらをご参照ください。
6.比率設定は、ライブ配信サイトなどで出力画像を単純に16:9などに加工している場合向けのものです。ライブ配信時のアスペクト比が4:3などの場合に16:9などの比率をAK-Camで用いると引き伸ばされた画像が出力されたりしてしまいます。
7.画像ファイルをAK-Camビュー上へドラッグ&ドロップすることでワイプとして追加できます。
8.「カメラワイプ追加」ボタンを押すとカメラデバイス選択ダイアログが表示され、接続されているカメラと登録されている仮想カメラがリストアップされますので、その中から使用するカメラを選択してOKボタンをおすことで、ビュー上にカメラワイプが追加されます。

■Tips
▶ワイプ詳細設定ダイアログ(ワイプ右クックで表示)で出来ること

                          ※ワイプ詳細設定ダイアログは若干半透明で表示されます。

・ワイプ名編集

・配置設定
・スケール設定 
・角度設定
・移動 
・透明度設定

・顔認識設定
「顔認識対象にする」にチェックを入れるとそのワイプに表示されている画像から顔と認識される部分を選び出し、マーカーを表示します。「認識された顔パーツのマスクにする」にチェックを入れると、顔認識対象ワイプが存在する場合、認識されたマーカー部分にマスクワイプを追従させます。

・クロマキー処理設定
AK-Camのビュー横に配置されているワイプ属性でクロマキー処理にチェックが入っているワイプで有効です。クロマキー(抜き色)にはR(赤)G(緑)B(青)要素がありますが、内部的にこれらの要素の値に範囲が設けられており、ワイプ詳細設定ダイアログ上のクロマキー設定でその範囲を調整できます。クロマキーとその他の部分の境界で、望まない色が混じっている場合などに、この範囲を調整することできれいにできる場合があります。 また、透過にする色の範囲をHSV色空間で指定できます。 「-」「+」の枠内のスライダーは、選択されている基本クロマキーからの「広がり」を指定するためのものです、-なら左に、+なら右にスライダーを動かすことで範囲が広がります。スライダー横のエディットボックスに数値を直接入力することでも指定できます。エディットボックス横の矢印ボタンは微調整用に少しずつ値を変える際に用います。
「処理部不透明度」は0から255までの値で、クロマキー範囲に該当するピクセルが透過処理を施される際に、完全な透明ではなく、半透明にする度合いを指定できます。
「閾値範囲内ピクセル描画」にチェックを入れると、透過処理を行う部分を反転させます。 逆クロマキー処理と言ってもいいでしょう。

▶メニュー→コメント→Skypeチャットをコメントとして流す(β)
このメニュー項目を選択すると、AK-Camが起動中でかつログイン済みのSkypeに接続を試みます。正常に接続ができると以下のような通知がSkypeに表示されますので、接続を許可してください(一度許可後に、再度行うとこのメッセージがSkype側で出ないことがありますが、AK-Cam側で特に通知が出ない場合、接続されている場合がほとんどですので、チャットなどを入力してご確認いただけます)。


許可後から、「Skypeのコンタクトリストで現在選択している」コンタクトまたは会議チャットに送られてきたチャットメッセージが、AK-Camのビューと出力画像に流れます。 
流れるコメントの文字の大きさや色、表示時間、フォントなどは メニュー→設定→コメント設定 から設定を行っていただけます。 

チャットの文章には「オプション」を含めることができ、チャットメッセージに以下のようにオプションを付け加えることで、いくつかの効果をコメント描画結果に与えることができます。

(例)
\n \c ff0000 \o 125 hello (Skype名付き、赤色、不透明度125 でhelloというコメントを流す)
\top \c ff00ff \o 255 hello (紫色、不透明度255=不透明 でhelloというコメントを画像上部に表示)
\bottom \c 00ff00 hello    (緑色、不透明 でhelloというコメントを画像下部に表示)

\n : Skype表示名をメッセージの跡に「@name」のように付加する。
\c [rrggbb]  : 色値指定(RGB) 
RGBは各色2桁の16進数表記で10進数にすると0-255の範囲で、 RGBの順で6桁の16進数表記です。
\o [0-255]  : 不透明度指定
\top : 上文字オプション
\bottom : 下文字オプション

通話用(プライマリー)とチャット受信用(セカンダリー、AK-Camコメント機能連携用)でSkypeを多重起動すると使いやすいかと思われます。 多重起動を用いる場合には、プライマリーを以下のように設定して、Skype Accessを無効にしてください。 プライマリーとセカンダリー側でコンタクトがつながっており、チャットのやり取りなどをしない場合は大丈夫ですが、そうでないばあい現行バージョンのAK-Camが落ちます。 過去のバージョンのSkypeではプライバシー設定から「Skype APIアクセスの許可」を設定する項目を変更してください。


Skypeを多重起動するにはDOSやスタートメニューの「プログラムとファイルの検索」欄に以下のコマンドを入力することで行えます。 Skype.exeのパスは環境によって適宜変更してください。

コマンド:"C:\Program Files (x86)\Skype\Phone\Skype.exe" /secondary


2つのPCを用いることが出来る場合や、仮想PC環境でSkypeが動作可能なOS(Windows、Linux等)を動かせる環境では、これらを用いるという手段もあります。

▶ゲームキャプチャー(32bit版Direct3Dキャプチャー)
Direct3Dを用いているゲームのキャプチャーが行えます。 フルスクリーンとウィンドウモードの両方で行っていただけます。 簡易コントロール上のゲームキャプチャーボタンから行えます。

・対応ライブラリ
-Direct3D 9 x86(32bit)
-Direct3D 10 x86(32bit)
-Direct3D 11 x86(32bit)

ゲームキャプチャーボタンを押すとダイアログが表示されるので、「プロセス名」「描画ライブラリ」を指定してください。 プロセス名には「.exe」拡張子をつける必要はありません。 描画ライブラリは、キャプチャー対象ゲームが使用しているライブラリのバージョンを、ゲームの配布元サイトなどの推奨環境欄などで調べられますので、そこに記載されているものを指定してください。 仮に調べられなくても、すべて試せば対応しているバージョンは確認できます。

ゲームのプロセス名を調べる際にはタスクマネージャーの使用をお奨めいたします。(タスクマネージャーの開き方) タスクマネージャー上のプロセスタブでゲームのプロセス名を探してください。

プロセス名と描画ライブラリを指定してOKを押すと、ビュー上に空のワイプが表示されるかと思いますが、この状態のときはまだキャプチャーが開始されていません。 キャプチャーを開始するには、ゲームウィンドウをクリックまたはフルスクリーン化して「アクティブ化」してください。
キャプチャーしている最中にゲームのプロセスを終了すると、そのワイプは使えなくなるため、新たにゲームキャプチャーワイプを上記手順で作成してください。 同じプロセス名で行うと、空ではなく、前回の画像が残ったワイプが表示されている場合がありますが、これは「アクティブ化」されていない状態なので、上記手順のように「アクティブ化」してキャプチャーを開始してください。

要約すると、ゲームキャプチャーワイプを追加→ゲームウィンドウをクリックorフルスクリーン化 という手順を毎回行ってください。

マルチモニター環境であれば、キャプチャー状態を別モニターで確認しつつプレイ配信できます。かなり変わった実装をしてあるDirect3Dアプリケーションでなければ問題なく上記操作が行えます。

フルスクリーンモードのDirect3Dアプリケーションをキャプチャーした場合、フルスクリーン化した後画面に収まるようにできています。
ウィンドウモードのDirect3Dアプリケーションをキャプチャーしている場合、ウィンドウサイズの変化に伴ってワイプサイズが自動的に変更されます。

▶メニュー→設定→ビジョンマウス
ビジョンマウスマスターが存在し、ビジョンマウス処理が行われる際に影響する設定を行うダイアログが表示されます。
ビジョンマウスマスターを用意するには、ワイプ属性でビジョンマウスマスタにチェックを入れます。その後編集モードを「VisionMouse」に変更し、ビジョンマウスマスターワイプでマーカー部分を囲むようにドラッグ&ドロップで選択します。その部分の色情報が解析され、マーカー以外の画素からきわだつ色成分を持つ場合、マーカーとしてうまく認識されます。認識されたマーカーはマウスのポインタのような役割をします。マーカーを認識した時点の姿勢から横や縦に傾けることでクリック状態になります。クリック状態のまま移動させることでドラッグ処理になります。ドラッグ処理中にマーカーが別のワイプ上にある場合、そのワイプが移動します。ビジョンマウスのクリック感度などもここから設定できます。
ビジョンマウス使用時の画像解析情報をビューに表示するかどうかの設定もここで行います。解析情報は編集モードが「VisionMouse」で、マーカー領域が選択されていないと表示されません。ビジョンマウス認識があまりうまくいかない場合、解析情報を表示しながら 「vmin」「vmax」「smin」の値を変え、その変化を見ることである程度ビジョンマウス使用に適した設定を判断できますが、初心者の方には難しいので規定値をお使いいただいてもよろしいかと思われます。最初はsminを変更し、解析情報のマスク(白黒画像)を観察し、マーカー部分がマスクでできるだけ目立つような設定をお探しになられるとよろしいかと思われます。

▶メニュー→設定→顔認識
顔認識対象が存在し、顔認識処理が行われる際に、認識される最小ピクセルサイズ(四方)が変更できます。値を小さくするほど精度の高い認識が行われますが処理が重くなります。

▶画像ファイルをワイプとして追加するには
画像ファイルをAK-Camのビュー上にドラッグ&ドロップしてください。BMP、JPG、PNGなどには対応しております。

▶AK-Camを起動しているのに出力画像が乱れる場合
・仮想カメラデバイスのホストプログラム(FlashMediaLiveEncoderや放送サイトの放送者画面など)を再起動してください。 
・簡易コントロール上の「仮想カメラ再読み込み」ボタンを押し、仮想カメラのリロードを試みてください。

■フリー版における制限
・出力画像右上に透かしが入る