Win32 API 日本語リファレンス
ホームMedia.MediaFoundation › IMFTimedTextCue

IMFTimedTextCue

COM
IID1e560447-9a2b-43e1-a94c-b0aaabfbfbc9継承元IUnknown自前メソッド開始 vtbl3

公式ドキュメント

タイムドテキストキュー(timed-text-cue)オブジェクトを表します。

メソッド 11

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 DWORD GetId()

タイムドテキストキューの識別子を取得します。

戻り値

型: DWORD

タイムドテキストキューの識別子。

解説(Remarks)

このメソッドで取得される識別子は、システムによって動的に生成され、単一のタイムドテキストトラック内でキューを一意に識別することが保証されています。ただし、トラック間で一意であることは保証されません。テキストトラックのデータ形式内で提供される識別子をキューが既に持っている場合、その ID は GetOriginalId を呼び出すことで取得できます。

vtbl 4 HRESULT GetOriginalId(LPWSTR* originalId)

テキストトラックのデータ形式内で提供されるキュー識別子を、利用可能な場合に取得します。

originalIdLPWSTR*outテキストトラックのデータ形式内で提供されるキュー識別子。

戻り値

型: HRESULT

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

解説(Remarks)

このメソッドは、ソースデータに含まれるキューの識別子を、指定されている場合に取得します。システムは、単一のタイムドテキストトラック内で一意であることが保証されたキューの識別子を動的に生成します。このシステム生成の ID を取得するには、GetId を呼び出してください。

vtbl 5 MF_TIMED_TEXT_TRACK_KIND GetCueKind()

タイムドテキストキューの種類を取得します。

戻り値

型: MF_TIMED_TEXT_TRACK_KIND

タイムドテキストキューの種類を指定する MF_TIMED_TEXT_TRACK_KIND 型の値を返します。

vtbl 6 DOUBLE GetStartTime()

トラック内におけるキューの開始時刻を取得します。

戻り値

型: double

トラック内におけるキューの開始時刻を返します。

vtbl 7 DOUBLE GetDuration()

トラック内におけるキューの継続時間を取得します。

戻り値

型: double

トラック内におけるキューの継続時間を返します。

vtbl 8 DWORD GetTrackId()

タイムドテキストキューの識別子を取得します。

戻り値

型: DWORD

タイムドテキストキューの識別子を返します。

vtbl 9 HRESULT GetData(IMFTimedTextBinary** data)

タイムドテキストキューのデータコンテンツを取得します。

dataIMFTimedTextBinary**outタイムドテキストキューのデータコンテンツに対する IMFTimedTextBinary インターフェイスへのポインターを受け取るメモリブロックへのポインター。このパラメーターは NULL にすることができます。

戻り値

型: HRESULT

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 10 HRESULT GetRegion(IMFTimedTextRegion** region)

タイムドテキストキューの表示領域に関する情報を取得します。

regionIMFTimedTextRegion**outタイムドテキスト領域に対する IMFTimedTextRegion インターフェイスへのポインターを受け取るメモリブロックへのポインター。このパラメーターは NULL にすることができます。

戻り値

型: HRESULT

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 11 HRESULT GetStyle(IMFTimedTextStyle** style)

タイムドテキストキューのスタイルに関する情報を取得します。

styleIMFTimedTextStyle**outタイムドテキストスタイルに対する IMFTimedTextStyle インターフェイスへのポインターを受け取るメモリブロックへのポインター。このパラメーターは NULL にすることができます。

戻り値

型: HRESULT

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

vtbl 12 DWORD GetLineCount()

タイムドテキストキュー内のテキスト行数を取得します。

戻り値

型: DWORD

テキストの行数を返します。

vtbl 13 HRESULT GetLine(DWORD index, IMFTimedTextFormattedText** line)

行のインデックスから、キュー内のテキスト行を取得します。

indexDWORDin取得するキュー内のテキスト行のインデックス。
lineIMFTimedTextFormattedText**outキュー内のテキスト行に対する IMFTimedTextFormattedText インターフェイスへのポインターを受け取るメモリブロックへのポインター。

戻り値

型: HRESULT

このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IMFTimedTextCue "{1E560447-9A2B-43E1-A94C-B0AAABFBFBC9}"
#usecom global IMFTimedTextCue IID_IMFTimedTextCue "{}"
#comfunc global IMFTimedTextCue_GetId          3
#comfunc global IMFTimedTextCue_GetOriginalId  4 var
#comfunc global IMFTimedTextCue_GetCueKind     5
#comfunc global IMFTimedTextCue_GetStartTime   6
#comfunc global IMFTimedTextCue_GetDuration    7
#comfunc global IMFTimedTextCue_GetTrackId     8
#comfunc global IMFTimedTextCue_GetData        9 sptr
#comfunc global IMFTimedTextCue_GetRegion      10 sptr
#comfunc global IMFTimedTextCue_GetStyle       11 sptr
#comfunc global IMFTimedTextCue_GetLineCount   12
#comfunc global IMFTimedTextCue_GetLine        13 int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。