ch.kuramo.javie.api.services
インタフェース IEffectContext

既知のサブインタフェースの一覧:
IAudioEffectContext, IVideoEffectContext

public interface IEffectContext

IEffectContext サービスは、エフェクトの実行に必要な情報 (エフェクトコンテキスト) とそれに関連したいくつかの処理を提供します。 エフェクトコンテキストには、現在時刻、品質スイッチの状態 (Quality)、 レンダリング解像度 (Resolution)、色深度 (ColorMode)、 AudioMode、オーディオのサンプルフレーム数が含まれます。


メソッドの概要
 IAudioBuffer createAudioBuffer()
          エフェクトコンテキストの AudioMode とサンプルフレーム数でオーディオ用バッファを作成します。
 IVideoBuffer createVideoBuffer(VideoBounds bounds)
          引数 bounds の位置とサイズ、エフェクトコンテキストの色深度でビデオ用バッファを作成します。
 int getAudioFrameCount()
          エフェクトコンテキストのサンプルフレーム数を返します。
 AudioMode getAudioMode()
          エフェクトコンテキストの AudioMode を返します。
 ColorMode getColorMode()
          エフェクトコンテキストの色深度を返します。
 java.lang.String getEffectName()
          実行中のエフェクトの名前を返します。
 javax.media.opengl.GL getGL()
          エフェクトコンテキストに関連付けられているOpenGL (JOGL) の GL オブジェクトを返します。
 javax.media.opengl.glu.GLU getGLU()
          エフェクトコンテキストに関連付けられているOpenGL (JOGL) の GLU オブジェクトを返します。
 IAudioBuffer getLayerAudioChunk(IAnimatableLayerReference layerRef)
          引数 layerRef により参照されるレイヤーの、現在時刻におけるオーディオデータを取得します。
 IVideoBuffer getLayerVideoFrame(IAnimatableLayerReference layerRef)
          引数 layerRef により参照されるレイヤーの、現在時刻におけるビデオデータを取得します。
 Quality getQuality()
          品質スイッチの状態を返します。
 Time getTime()
          エフェクトコンテキストの現在時刻を返します。
 Resolution getVideoResolution()
          エフェクトコンテキストのレンダリング解像度を返します。
 void setAudioFrameCount(int count)
          エフェクトコンテキストのサンプルフレーム数を変更します。
 void setTime(Time time)
          エフェクトコンテキストの現在時刻を変更します。
<V> V
value(IAnimatableValue<V> avalue)
          引数 avalue の現在時刻における値を返します。
 

メソッドの詳細

getTime

Time getTime()
エフェクトコンテキストの現在時刻を返します。

戻り値:
現在時刻

setTime

void setTime(Time time)
エフェクトコンテキストの現在時刻を変更します。 現在時刻とは異なる時刻で IVideoEffectContext.doPreviousEffect() , IAudioEffectContext.doPreviousEffect() , getLayerVideoFrame(IAnimatableLayerReference) , getLayerAudioChunk(IAnimatableLayerReference) を実行する必要がある場合、 これらのメソッドよりも前に setTime(Time) を呼び出して現在時刻を変更します。 また、現在時刻の変更は value(IAnimatableValue)IAudioEffectContext.values(IAnimatableValue) などの結果にも影響します。

パラメータ:
time - 変更後の時刻

getQuality

Quality getQuality()
品質スイッチの状態を返します。 エフェクトは品質スイッチの状態によって処理内容を変えることができます。

戻り値:
品質スイッチの状態
導入されたバージョン:
0.5.1

getVideoResolution

Resolution getVideoResolution()
エフェクトコンテキストのレンダリング解像度を返します。 ビデオエフェクトはこのレンダリング解像度に従って適切な処理を行う必要があります。

戻り値:
レンダリング解像度

getColorMode

ColorMode getColorMode()
エフェクトコンテキストの色深度を返します。

戻り値:
色深度

getAudioMode

AudioMode getAudioMode()
エフェクトコンテキストの AudioMode を返します。

戻り値:
AudioMode オブジェクト

getAudioFrameCount

int getAudioFrameCount()
エフェクトコンテキストのサンプルフレーム数を返します。 オーディオエフェクトはこのサンプルフレーム数のオーディオデータを一度に返す必要があります。

戻り値:
サンプルフレーム数

setAudioFrameCount

void setAudioFrameCount(int count)

エフェクトコンテキストのサンプルフレーム数を変更します。 IAudioEffectContext.doPreviousEffect()getLayerAudioChunk(IAnimatableLayerReference) を呼び出す前に setAudioFrameCount(int) を呼び出してサンプルフレーム数を変更することができます。

サンプルフレーム数を変更した場合でも、オーディオエフェクトは元のサンプルフレーム数のオーディオデータを返す必要があることに注意してください。

パラメータ:
count - 変更後のサンプルフレーム数

getGL

javax.media.opengl.GL getGL()
エフェクトコンテキストに関連付けられているOpenGL (JOGL) の GL オブジェクトを返します。 OpenGLを使用するエフェクトはこの GL オブジェクトを使用してください。

戻り値:
エフェクトコンテキストに関連付けられている GL オブジェクト

getGLU

javax.media.opengl.glu.GLU getGLU()
エフェクトコンテキストに関連付けられているOpenGL (JOGL) の GLU オブジェクトを返します。 OpenGLを使用するエフェクトはこの GLU オブジェクトを使用してください。

戻り値:
エフェクトコンテキストに関連付けられている GLU オブジェクト

createVideoBuffer

IVideoBuffer createVideoBuffer(VideoBounds bounds)
引数 bounds の位置とサイズ、エフェクトコンテキストの色深度でビデオ用バッファを作成します。 これは IVideoRenderSupport.createVideoBuffer(VideoBounds) と同じです。

パラメータ:
bounds - 作成するビデオ用バッファの位置とサイズ
戻り値:
作成されたビデオ用バッファ

createAudioBuffer

IAudioBuffer createAudioBuffer()
エフェクトコンテキストの AudioMode とサンプルフレーム数でオーディオ用バッファを作成します。

戻り値:
作成されたオーディオ用バッファ

value

<V> V value(IAnimatableValue<V> avalue)
引数 avalue の現在時刻における値を返します。

パラメータ:
avalue - IAnimatableDouble などのアニメーション可能プロパティ
戻り値:
引数 avalue の現在時刻における値

getLayerVideoFrame

IVideoBuffer getLayerVideoFrame(IAnimatableLayerReference layerRef)
引数 layerRef により参照されるレイヤーの、現在時刻におけるビデオデータを取得します。 layerRef がレイヤーを参照していない場合は null を返します。

パラメータ:
layerRef - ビデオデータを取得するレイヤー
戻り値:
取得したビデオデータの IVideoBuffer オブジェクト。 引数 layerRef がレイヤーを参照していない場合は null

getLayerAudioChunk

IAudioBuffer getLayerAudioChunk(IAnimatableLayerReference layerRef)
引数 layerRef により参照されるレイヤーの、現在時刻におけるオーディオデータを取得します。 layerRef がレイヤーを参照していない場合は null を返します。

パラメータ:
layerRef - オーディオデータを取得するレイヤー
戻り値:
取得したオーディオデータの IAudioBuffer オブジェクト。 引数 layerRef がレイヤーを参照していない場合は null

getEffectName

java.lang.String getEffectName()
実行中のエフェクトの名前を返します。 これはエフェクトの種類の名前ではなく、エフェクトのインスタンスに付けられた名前です。 エフェクトのインスタンスに付けられた名前はユーザーが変更できます。

戻り値:
実行中のエフェクトの名前