コンテンツにスキップ

VideoOverlay

VideoOverlay クラスは、MPEG I や WMV、H.264、theora などを表示するため表示領域を作成するクラスです。吉里吉里のレイヤに表示を行うこともできます。

1.3.0以前は WMV/MPEG I を再生するときは、吉里吉里実行可能ファイルと同じ場所に、krmovie.dll が必要になります。

1.3.0以降は krmovie.dll が本体に統合されたため、別途添付する必要はなくなりました。theora を再生するには krdstheora.dll が必要になります。

レイヤでの再生を除き、オーバーレイによる再生では、VideoOverlay クラスの表示領域は、すべてのレイヤよりも手前に表示され、透過することはできません。

レイヤでの再生は、オーバーレイでの再生に比べ、再生時のプロセッサの負荷は高くなる傾向にあります。

メンバー一覧

コンストラクタ

プロパティ

メソッド

イベント


VideoOverlay

コンストラクタ

引数

引数 既定値 説明
window   このレイヤを保有することになるウィンドウ ( Window クラスの
オブジェクト ) を指定します。

解説

VideoOverlay オブジェクトの構築

VideoOverlay クラスのオブジェクトを構築します。


position

プロパティ \ アクセス: r/w

解説

再生位置

メディアの再生位置を ms 単位で表します。値を設定することもできます。

関連: VideoOverlay.frame / VideoOverlay.totalTime


frame

プロパティ \ アクセス: r/w

解説

現在のフレーム

メディアの再生位置をフレーム単位で表します。値を設定することもできます。

関連: VideoOverlay.position / VideoOverlay.numberOfFrame


loop

プロパティ \ アクセス: r/w

解説

ループ再生をするかどうか

ループ再生の有効無効を表します。値を設定することもできます。

真ならばループ、偽ならば非ループです。


width

プロパティ \ アクセス: r/w

解説

再生矩形の横幅

再生矩形の横幅を表します。値を設定することもできます。

このプロパティは、現バージョンではレイヤ再生時は使用できません(常にサイズはビデオのサイズと同じになります)。

関連: VideoOverlay.height / VideoOverlay.setSize


height

プロパティ \ アクセス: r/w

解説

再生矩形の縦幅

再生矩形の縦幅を表します。値を設定することもできます。

このプロパティは、現バージョンではレイヤ再生時は使用できません(常にサイズはビデオのサイズと同じになります)。

関連: VideoOverlay.width / VideoOverlay.setSize


left

プロパティ \ アクセス: r/w

解説

再生矩形の左端位置

再生矩形の左端位置を表します。値を設定することもできます。

関連: VideoOverlay.top / VideoOverlay.setPos


top

プロパティ \ アクセス: r/w

解説

再生矩形の上端位置

再生矩形の上端位置を表します。値を設定することもできます。

関連: VideoOverlay.left / VideoOverlay.setPos


visible

プロパティ \ アクセス: r/w

解説

可視かどうか

再生領域が可視かどうかを指定します。値を設定することもできます。

真ならば可視、偽ならば不可視です。


fps

プロパティ \ アクセス: r

解説

フレームレート

フレームレート(フレーム/秒)を表します。


numberOfFrame

プロパティ \ アクセス: r

解説

全フレーム数

全フレーム数を表します。


totalTime

プロパティ \ アクセス: r

解説

合計時間

合計時間をms単位で表します。


layer1

プロパティ \ アクセス: r/w

解説

描画レイヤ指定1

レイヤ描画モード時、描画するレイヤを表します。値を設定することもできます。

layer1 プロパティと layer2 プロパティを異なるレイヤに設定することにより、同時に2つのレイヤに同じ動画を表示させることができます。


layer2

プロパティ \ アクセス: r/w

解説

描画レイヤ指定2

レイヤ描画モード時、描画するレイヤを表します。値を設定することもできます。


mode

プロパティ \ アクセス: r/w

解説

オーバーレイorレイヤ描画の指定

オーバーレイモードであるか、レイヤ描画モードであるか、ミキサーモードであるかを表します。値を設定することもできます。

オーバーレイモードの場合は vomOverlay、レイヤ描画モードの場合は vomLayer 、ミキサーモードの場合は vomMixer、Media Foundation モードの場合は vomMFEVR となります。

vomMFEVR モードは 1.2.0 以降でのみ使用できます。


playRate

プロパティ \ アクセス: r/w

解説

再生速度

メディアの再生速度を設定します。

1.0 を指定すると通常の再生速度、0.5 では半分の再生速度、2では2倍の再生速度となります。

設定可能値はDirectShowのフィルタによって決まります。

参考 : 音声付のMPEGファイルの場合、0.0より大きい値から2.0までの値が設定可能です。音声なしのMPEGファイルの場合、0.0より大きい値からdoubleの範囲内(たぶん)で設定可能ですが、実際の再生速度は処理速度によって上限が決まります。


segmentLoopStartFrame

プロパティ \ アクセス: r

解説

セグメントループの開始フレーム

セグメントループの始端フレームです。

関連: VideoOverlay.setSegmentLoop / VideoOverlay.cancelSegmentLoop


segmentLoopEndFrame

プロパティ \ アクセス: r

解説

セグメントループの開始フレーム

セグメントループの始端フレームです。

関連: VideoOverlay.setSegmentLoop


periodEventFrame

プロパティ \ アクセス: r/w

解説

ピリオドイベントフレーム

periodイベントを発生させるフレームです。

未設定の場合は負の値となります。


audioBalance

プロパティ \ アクセス: r/w

解説

音声バランス(パニング)

パン (音像位置) を表します。値を設定することもできます。

音の聞こえる左右の位置を指定することができます。

-100000 ~ 0 ~ 100000 の数値で指定し、 -100000 が 完全に左、0 が中央、100000 が完全に右になります。

ステレオのソースを再生する場合は、パンは、左右どちらかのチャンネルを減衰させることで実現されます(0を指定すると両チャンネルが出力され、-100000を指定すると左チャンネルのみが出力される)。


audioVolume

プロパティ \ アクセス: r/w

解説

音声ボリューム

再生する音量を表します。値を設定することもできます。

0 ~ 100000 の数値で指定し、 0 が完全ミュート、100000 が 100% の音量となります。


numberOfAudioStream

プロパティ \ アクセス: r

解説

音声ストリーム数

MPEGファイルのみで利用可能です。 オーディオストリーム数を取得できます。

関連: VideoOverlay.selectAudioStream / VideoOverlay.enabledAudioStream


enabledAudioStream

プロパティ \ アクセス: r

解説

再生対象音声ストリーム番号

MPEGファイルのみで利用可能です。 再生対象のオーディオストリーム番号を取得できます。 オーディオストリームが見付からない場合は-1を返します。

関連: VideoOverlay.selectAudioStream / VideoOverlay.numberOfAudioStream


mixingMovieAlpha

プロパティ \ アクセス: r/w

解説

ビデオの透明度

0.0(完全に透明)~1.0(完全に不透明)の範囲でビデオの透明度を表します。

ミキサーモードでのみ利用可能です。


mixingMovieBGColor

プロパティ \ アクセス: r/w

解説

ビデオの背景色

ビデオの背景色を表します。

ミキサーモードでのみ利用可能です。


contrastRangeMin

プロパティ \ アクセス: r

解説

ビデオのコントラストレンジ最小値

コントラストの幅の最小値を表します。

ミキサーモードでのみ利用可能です。


contrastRangeMax

プロパティ \ アクセス: r

解説

ビデオのコントラストレンジ最大値

コントラストの幅の最大値を表します。

ミキサーモードでのみ利用可能です。


contrastDefaultValue

プロパティ \ アクセス: r

解説

ビデオのコントラスト既定値

コントラストの既定値を表します。

ミキサーモードでのみ利用可能です。


contrastStepSize

プロパティ \ アクセス: r

解説

ビデオのコントラスト増減ステップ値

contrastRangeMin から contrastRangeMax への有効な増分を表します。

この値の単位でコントラストを変更できます。

ミキサーモードでのみ利用可能です。


contrast

プロパティ \ アクセス: r/w

解説

ビデオのコントラスト

ビデオのコントラストを表します。

ミキサーモードでのみ利用可能です。


brightnessRangeMin

プロパティ \ アクセス: r

解説

ビデオの輝度レンジ最小値

輝度の幅の最小値を表します。

ミキサーモードでのみ利用可能です。


brightnessRangeMax

プロパティ \ アクセス: r

解説

ビデオの輝度レンジ最大値

輝度の幅の最大値を表します。

ミキサーモードでのみ利用可能です。


brightnessDefaultValue

プロパティ \ アクセス: r

解説

ビデオの輝度既定値

輝度の既定値を表します。

ミキサーモードでのみ利用可能です。


brightnessStepSize

プロパティ \ アクセス: r

解説

ビデオの輝度増減ステップ値

brightnessRangeMin から brightnessRangeMax への有効な増分を表します。

この値の単位で輝度を変更できます。

ミキサーモードでのみ利用可能です。


brightness

プロパティ \ アクセス: r/w

解説

ビデオの輝度

ビデオの輝度を表します。

ミキサーモードでのみ利用可能です。


hueRangeMin

プロパティ \ アクセス: r

解説

ビデオの色相レンジ最小値

色相の幅の最小値を表します。

ミキサーモードでのみ利用可能です。


hueRangeMax

プロパティ \ アクセス: r

解説

ビデオの色相レンジ最大値

色相の幅の最大値を表します。

ミキサーモードでのみ利用可能です。


hueDefaultValue

プロパティ \ アクセス: r

解説

ビデオの色相既定値

色相の既定値を表します。

ミキサーモードでのみ利用可能です。


hueStepSize

プロパティ \ アクセス: r

解説

ビデオの色相増減ステップ値

hueRangeMin から hueRangeMax への有効な増分を表します。

この値の単位で色相を変更できます。

ミキサーモードでのみ利用可能です。


hue

プロパティ \ アクセス: r/w

解説

ビデオの色相

ビデオの色相を表します。

ミキサーモードでのみ利用可能です。


saturationRangeMin

プロパティ \ アクセス: r

解説

ビデオの彩度レンジ最小値

彩度の幅の最小値を表します。

ミキサーモードでのみ利用可能です。


saturationRangeMax

プロパティ \ アクセス: r

解説

ビデオの彩度レンジ最大値

彩度の幅の最大値を表します。

ミキサーモードでのみ利用可能です。


saturationDefaultValue

プロパティ \ アクセス: r

解説

ビデオの彩度既定値

彩度の既定値を表します。

ミキサーモードでのみ利用可能です。


saturationStepSize

プロパティ \ アクセス: r

解説

ビデオの彩度増減ステップ値

saturationRangeMin から saturationRangeMax への有効な増分を表します。

この値の単位で彩度を変更できます。

ミキサーモードでのみ利用可能です。


saturation

プロパティ \ アクセス: r/w

解説

ビデオの彩度

ビデオの彩度を表します。

ミキサーモードでのみ利用可能です。


originalWidth

プロパティ \ アクセス: r

解説

ビデオの実際の幅

格納されているビデオの幅です。


originalHeight

プロパティ \ アクセス: r

解説

ビデオの実際の高さ

格納されているビデオの高さです。


enabledVideoStream

プロパティ \ アクセス: r/w

: Integer

解説

有効化中のビデオストリーム番号

現在再生に使用しているビデオストリームのインデックスを取得 / 設定します。 設定すると SelectVideoStream が呼ばれ、対応するストリームに切り替わります。

関連: VideoOverlay.numberOfVideoStream


numberOfVideoStream

プロパティ \ アクセス: r/w

: Integer

解説

ビデオストリーム数

開いている動画に含まれるビデオストリームの本数を返します。読み出し専用。

関連: VideoOverlay.enabledVideoStream


open

メソッド

引数

引数 既定値 説明
storage   指定されたメディアを開きます。

解説

メディアを開く

指定されたメディアを開きます。

現バージョンで再生可能なのは MPEG I (拡張子 .mpeg または .mpg または .mpv)、WMVです。

ビデオのみの (オーディオとマルチプレクシングされていない) MPEG I ストリームの拡張子は .mpv にしてください。


play

メソッド

解説

再生開始

メディアの再生を開始します。


stop

メソッド

解説

再生停止

メディアの再生を停止します。


pause

メソッド

解説

一時停止

メディアの再生を一時停止します。


rewind

メソッド

解説

巻き戻し

メディアの再生位置を先頭に移動します。


prepare

メソッド

解説

再生準備

メディアの1フレーム目を指定されているレイヤーに描画し、描画終了時にonPeriodイベントを発生させます。 prepareメソッド コール後の再生は、onPeriodイベントを待機してから行ってください。

関連: VideoOverlay.onPeriod


setSegmentLoop

メソッド

引数

引数 既定値 説明
comeFrame   ループ移動先フレーム(ループの始端フレーム)。再生がgoFrameに達したとき、再生ヘッドはこのフレームに移動します。
goFrame   ループ終点フレーム(ループの終端フレーム)。このフレームの1つ前のフレームの表示が終了した時、再生ヘッドはcomeFrameへ移動します。

解説

フレーム間ループの設定

指定されたフレーム間でループ処理を行います。

ループ終端(goFrame)では、onPeriodイベントが発生します。

comeFrameのフレームにはムービーファイルにキーフレームを設定しておく必要があります。

設定されていない場合は、 ループ終点から始点へ移動時に指定されたフレームに最も近いキーフレームへ再生位置が移動することになります。

関連: VideoOverlay.cancelSegmentLoop / VideoOverlay.onPeriod / VideoOverlay.segmentLoopStartFrame / VideoOverlay.segmentLoopEndFrame


cancelSegmentLoop

メソッド

解説

フレーム間ループの解除

setSegmentLoopメソッドで指定したセグメント間ループを解除します。

関連: VideoOverlay.setSegmentLoop


close

メソッド

解説

メディアを閉じる

メディアを閉じます。

メディアを再生するために確保されていたリソースなどもすべて解放します。

関連: VideoOverlay.setSegmentLoop


setPeriodEvent

メソッド

引数

引数 既定値 説明
eventFrame   onPeriodイベントを発生させるフレームを指定します。

解説

指定フレームでのイベント発生の指定

指定したフレームでonPeriodイベントを発生させます。

onPeriodイベントは、一度発生すると解除されます。再び発生させたい場合は再度このメソッドで設定してください。

関連: VideoOverlay.cancelPeriodEvent / VideoOverlay.onPeriod


cancelPeriodEvent

メソッド

解説

指定フレームでのイベント発生の解除

setPeriodEventメソッドで設定したイベント発生を解除します。

関連: VideoOverlay.setPeriodEvent


setPos

メソッド

引数

引数 既定値 説明
left   メディアを再生するための矩形領域の左端位置を指定します。
top   メディアを再生するための矩形領域の上端位置を指定します。

解説

再生矩形の左上位置を指定

メディアを再生するための矩形領域の左上位置を指定します。

座標は、ウィンドウのクライアント ( レイヤを表示可能な領域 ) 内での座標で、ピクセル単位で 指定します。


setSize

メソッド

引数

引数 既定値 説明
width   メディアを再生するための矩形領域の横幅を指定します。
height   メディアを再生するための矩形領域の縦幅を指定します。

解説

再生矩形のサイズを指定

メディアを再生するための矩形領域のサイズをピクセル単位で指定します。

現バージョンでは、レイヤ再生時にはこのメソッドを使用することはできません。


setBounds

メソッド

引数

引数 既定値 説明
left   メディアを再生するための矩形領域の左端位置を指定します。
top   メディアを再生するための矩形領域の上端位置を指定します。
width   メディアを再生するための矩形領域の横幅を指定します。
height   メディアを再生するための矩形領域の縦幅を指定します。

解説

再生矩形の位置とサイズを指定

メディアを再生するための矩形領域の位置とサイズを指定します。

座標は、ウィンドウのクライアント ( レイヤを表示可能な領域 ) 内での座標で、ピクセル単位で 指定します。

現バージョンでは、レイヤ再生時にはこのメソッドで指定できるのは位置だけで、サイズは無視されます。


selectAudioStream

メソッド

引数

引数 既定値 説明
streamNumber   音声ストリーム番号を指定します。

解説

音声ストリームの選択

指定した音声ストリーム番号を有効にします。

音声ストリームを複数含まないビデオでは使用できません。

関連: VideoOverlay.numberOfAudioStream / VideoOverlay.enabledAudioStream


setMixingLayer

メソッド

引数

引数 既定値 説明
layer   レイヤー

解説

ミキシング対象レイヤの設定

指定したレイヤーとビデオのミキシングを行います。

ミキシングはこのメソッドが呼び出された時のレイヤー画像と行われます。

レイヤー画像の更新を反映するには、再度このメソッドを呼び出す必要があります。

VideOverlay.OnFrameUpdate を使用して、 レイヤー画像が更新されたことを調べてこのメソッドを呼び出すようにすれば、自動的に更新が反映されるようになります。 onFrameUpdateで毎フレームこのメソッドを呼び出した場合、かなり負荷がかかりますのでそれは避けた方が良いです。

ミキサーモードでのみ利用可能です。


resetMixingLayer

メソッド

解説

ミキシング対象レイヤの設定解除

ビデオとレイヤーのミキシングを解除します。

ミキサーモードでのみ利用可能です。


onStatusChanged

イベント

引数

引数 既定値 説明
status   ステータス文字列を表します。
以下のいずれかです。
"**unload**" : メディアが開かれてない
"**ready**" : メディアの準備が完了している
"**play**" : メディアは再生中である
"**stop**" : メディアは停止中である
"**pause**" : メディアは一時停止中である

解説

ステータスが変更された

このオブジェクトのステータスが変更されたときに発生します。

ready は、vomMFEVR モードの時のみ発生します。


onPeriod

イベント

引数

引数 既定値 説明
type   Periodイベントのタイプを表します。
以下のいずれかです。
**perLoop** : (通常の)ループの終端に達した
**perSegLoop** : セグメントループの終端に達した
**perPeriod** : setPeriodEvent メソッドで指定されたフレームに達した
**perPrepare** : prepare メソッドによる再生準備が完了した

解説

Periodイベントが発生した

ループの終端や、 setPeriodEventによって指定されたフレームに達した場合、または prepare メソッドにより再生準備が完了した場合に呼び出されるメソッドです。

ループの終端や、 setPeriodEvent によって指定されたフレームに達した場合にこのイベントが呼ばれる時点では、再生状況によっては、すでに再生位置が指定された位置を超えている場合があります。現在の実際の再生位置を取得するには frame プロパティを参照してください。

関連: VideoOverlay.setPeriodEvent / VideoOverlay.prepare / VideoOverlay.frame


onFrameUpdate

イベント

引数

引数 既定値 説明
frame   ビデオのフレーム番号

解説

ビデオフレームが更新された

ビデオフレームが更新された後に呼び出されるメソッドです。

引数であるframeは現在表示されているビデオフレームと完全に一致しているとは限りません。

レイヤ描画モード、ミキサーモード時のみ利用可能です。


onCallbackCommand

イベント

引数

引数 既定値 説明
command   コマンド名を指定します。
arg   コマンドに付随する引数を指定します。

解説

カスタムコマンドコールバック ( イベント )

動画プレーヤーから任意のコマンド通知を受け取った際に発火するイベントです。