Class CriAtomExStreamingCache
ストリーミングキャッシュID
Implements
Inherited Members
Namespace: CriWare
Assembly: CriWare.CriAtom.dll
Syntax
public class CriAtomExStreamingCache : IDisposable
Remarks
説明: CriAtomExStreamingCache は、ストリーミングキャッシュ管理用IDです。 CriAtomExStreamingCache(in Config, IntPtr, int) 関数でストリーミングキャッシュを作成すると取得できます。
Constructors
CriAtomExStreamingCache(in Config, IntPtr, int)
ストリーミングキャッシュの作成
Declaration
public CriAtomExStreamingCache(in CriAtomExStreamingCache.Config config, IntPtr work = default, int workSize = 0)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExStreamingCache.Config | config | ストリーミングキャッシュ作成用構造体 |
IntPtr | work | ストリーミングキャッシュ作成用ワーク |
int | workSize | ストリーミングキャッシュ作成用ワークサイズ return CriAtomExStreamingCache ストリーミングキャッシュID |
Remarks
説明: ストリーミングキャッシュを作成します。 Atomプレーヤーにストリーミングキャッシュを設定することで、 ストリーミング再生を行いつつメモリ上にファイル全体を保持(キャッシュ)します。 同じファイルの2回目以降の再生では、キャッシュを使ったメモリ再生に自動的に切り替わります。 また、再生データがループデータを持っていた場合、 ループ以降の再生は自動的にメモリ再生で行われるようになります。 本機能はAtomプレーヤーがストリーミング再生を行う場合のみ機能します。 本関数に失敗した場合、StreamingCacheIllegalIdが返ります。
注意: ファイル全体をキャッシュする事が前提です。 よって、キャッシュ用に割り当てられたメモリサイズがストリーミング再生対象とする どのファイルサイズよりも小さい場合、一切キャッシュされません。
See Also
CriAtomExStreamingCache(IntPtr, int)
デフォルト設定でのインスタンス作成
Declaration
public CriAtomExStreamingCache(IntPtr work = default, int workSize = 0)
Parameters
Type | Name | Description |
---|---|---|
IntPtr | work | |
int | workSize |
Properties
NativeHandle
ネイティブハンドル
Declaration
public NativeHandleIntPtr NativeHandle { get; }
Property Value
Type | Description |
---|---|
NativeHandleIntPtr |
Methods
CalculateWorkSize(in Config)
ストリーミングキャッシュ作成に必要なワークサイズの計算
Declaration
public static int CalculateWorkSize(in CriAtomExStreamingCache.Config pConfig)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExStreamingCache.Config | pConfig | ストリーミングキャッシュ作成用構造体 |
Returns
Type | Description |
---|---|
int | ストリーミングキャッシュ作成に必要なワークサイズ |
Remarks
説明: ストリーミングキャッシュ作成に必要なワークサイズを計算します。 configで与えられるパラメーターに依存し、必要なワークサイズは増加します。
See Also
Clear()
ストリーミングキャッシュのキャッシュ内容をクリア
Declaration
public void Clear()
Remarks
説明: 指定したストリーミングキャッシュの内容をクリアします。 キャッシュは古い順にクリアされます。 指定したストリーミングキャッシュを使用中のプレーヤーが存在する場合、 キャッシュのクリアは途中で中断されます。
注意: 一番古いキャッシュを使用中のプレーヤーが存在する場合、本関数を実行しても キャッシュは一切クリアされません。
See Also
Dispose()
ストリーミングキャッシュの破棄
Declaration
public void Dispose()
Remarks
説明: 指定したストリーミングキャッシュを破棄します。
注意: 指定したストリーミングキャッシュを利用しているプレーヤーが存在しない状態で、 本関数を実行してください。
See Also
IsCachedFile(CriFsBinder, ArgString)
パス指定でキャッシュ済み検索
Declaration
public bool IsCachedFile(CriFsBinder srcBinder, ArgString path)
Parameters
Type | Name | Description |
---|---|---|
CriFsBinder | srcBinder | 音声データファイル読み込み元のバインダーオブジェクト |
ArgString | path | 音声データファイルのパス |
Returns
Type | Description |
---|---|
bool | キャッシュ済みであればtrue、それ以外はfalse |
Remarks
説明: 指定したストリーミングキャッシュ中に、指定の音声データがキャッシュされているかを検索します。 指定の音声データがキャッシュされている状態であればtrueを、 キャッシュされていない状態であればfalseを返します。
See Also
IsCachedWaveId(CriAtomAwb, int)
WaveID指定でキャッシュ済み検索
Declaration
public bool IsCachedWaveId(CriAtomAwb awb, int id)
Parameters
Type | Name | Description |
---|---|---|
CriAtomAwb | awb | AWBオブジェクト |
int | id | WaveID |
Returns
Type | Description |
---|---|
bool | キャッシュ済みであればtrue、それ以外はfalse |
Remarks
説明: 指定したストリーミングキャッシュ中に、指定の音声データがキャッシュされているかを検索します。 指定の音声データがキャッシュされている状態であればtrueを、 キャッシュされていない状態であればfalseを返します。
注意: AWBオブジェクトがメモリ再生用の場合、本関数は音声データの有無にかかわらずtrueを返します。
See Also
IsCachedWaveformById(CriAtomExAcb, int)
指定したCue(ID指定)のストリーム用データがキャッシュ済みかを取得します
Declaration
public bool IsCachedWaveformById(CriAtomExAcb acbHn, int id)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
int | id | キャッシュ済み確認対象のCueID |
Returns
Type | Description |
---|---|
bool | = キャッシュ済み |
Remarks
説明: 対象とするストリーミングキャッシュにおいて、 IDで指定したCueのストリーミング用データがキャッシュ済みかを取得します。
注意: 本関数は、Cueが複数のストリーム用データを持つ場合については正確な情報を返しません。 Cueが複数のストリーム用データを持つ場合、 Cue内で最初に見つかったストリーム用データがキャッシュされた段階で trueを返します。
IsCachedWaveformByName(CriAtomExAcb, ArgString)
指定したCue(名前指定)のストリーム用データがキャッシュ済みかを取得します
Declaration
public bool IsCachedWaveformByName(CriAtomExAcb acbHn, ArgString name)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
ArgString | name | キャッシュ済み確認対象のCue名 |
Returns
Type | Description |
---|---|
bool | = キャッシュ済み |
Remarks
説明: 対象とするストリーミングキャッシュにおいて、 Cue名で指定したCueのストリーミング用データがキャッシュ済みかを取得します。
注意: 本関数は、Cueが複数のストリーム用データを持つ場合については正確な情報を返しません。 Cueが複数のストリーム用データを持つ場合、 Cue内で最初に見つかったストリーム用データがキャッシュされた段階で trueを返します。
LoadWaveformById(CriAtomExAcb, int)
指定したCue(ID指定)のストリーム用データをキャッシュにロード
Declaration
public bool LoadWaveformById(CriAtomExAcb acbHn, int cueId)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
int | cueId | キャッシュ対象のCueID |
Returns
Type | Description |
---|---|
bool | 成功/失敗 |
Remarks
説明: ストリーミングキャッシュに対し、IDで指定したCueのストリーミング用データをロードします。 本関数に成功すると::trueを返し、指定したCueがキャッシュ完了状態になります。 本関数に失敗すると、::falseを返します。
備考: 本関数は完了復帰です。
注意: Cueが複数のストリーム用データを持つ場合、 本関数はCue内で最初に見つかったストリーム用データのみをロードします。
LoadWaveformByIdAsync(CriAtomExAcb, int)
指定したCue(ID指定)のストリーム用データをキャッシュにロード開始
Declaration
public CriFsLoader LoadWaveformByIdAsync(CriAtomExAcb acbHn, int cueId)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
int | cueId | キャッシュ対象のCueID |
Returns
Type | Description |
---|---|
CriFsLoader | CriFsLoaderオブジェクト |
Remarks
説明: ストリーミングキャッシュに対し、IDで指定したCueのストリーミング用データのロードを開始します。 本関数に成功するとロードを開始し、::CRIFSLAODER_STATUS_LOADING状態の CriFsLoader オブジェクトを返します。 本関数に失敗すると、nullを返します。 戻り値のCriFsLoaderオブジェクトがComplete状態になると、 ロードおよびキャッシュ処理は完了です。 ロード完了後は、本関数で取得したCriFsLoaderオブジェクトを Dispose() 関数で破棄してください。
備考: 本関数は即時復帰です。
注意: Cueが複数のストリーム用データを持つ場合、 本関数はCue内で最初に見つかったストリーム用データのみをロードします。
LoadWaveformByName(CriAtomExAcb, ArgString)
指定したCue(名前指定)のストリーム用データをキャッシュにロード
Declaration
public bool LoadWaveformByName(CriAtomExAcb acbHn, ArgString name)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
ArgString | name | キャッシュ対象のCue名 |
Returns
Type | Description |
---|---|
bool | 成功/失敗 |
Remarks
説明: ストリーミングキャッシュに対し、IDで指定したCueのストリーミング用データをロードします。 本関数に成功すると::trueを返し、指定したCueがキャッシュ完了状態になります。 本関数に失敗すると、::falseを返します。
備考: 本関数は完了復帰です。
注意: Cueが複数のストリーム用データを持つ場合、 本関数はCue内で最初に見つかったストリーム用データのみをロードします。
LoadWaveformByNameAsync(CriAtomExAcb, ArgString)
指定したCue(名前指定)のストリーム用データをキャッシュにロード開始
Declaration
public CriFsLoader LoadWaveformByNameAsync(CriAtomExAcb acbHn, ArgString name)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExAcb | acbHn | Cueを含んでいるACBオブジェクト |
ArgString | name | キャッシュ対象のCue名 |
Returns
Type | Description |
---|---|
CriFsLoader | CriFsLoaderオブジェクト |
Remarks
説明: ストリーミングキャッシュに対し、名前で指定したCueのストリーミング用データをロードします。 本関数に成功するとロードを開始し、::CRIFSLAODER_STATUS_LOADING状態の CriFsLoader オブジェクトを返します。 本関数に失敗すると、nullを返します。 戻り値のCriFsLoaderオブジェクトがComplete状態になると、 ロードおよびキャッシュ処理は完了です。 ロード完了後は、本関数で取得したCriFsLoaderオブジェクトを Dispose() 関数で破棄してください。
備考: 本関数は即時復帰です。
注意: Cueが複数のストリーム用データを持つ場合、 本関数はCue内で最初に見つかったストリーム用データのみをロードします。
SetDefaultConfig(out Config)
CriAtomExStreamingCache.Configへのデフォルトパラメーターのセット
Declaration
public static void SetDefaultConfig(out CriAtomExStreamingCache.Config pConfig)
Parameters
Type | Name | Description |
---|---|---|
CriAtomExStreamingCache.Config | pConfig | ストリーミングキャッシュ作成用コンフィグ構造体へのポインタ |
Remarks
説明: CalculateWorkSize(in Config) 関数、 CriAtomExStreamingCache(in Config, IntPtr, int) 関数に設定するコンフィグ構造体 ( CriAtomExStreamingCache.Config )に対し、デフォルト値をセットします。