ホーム › Media.MediaFoundation › IWMCodecStrings
IWMCodecStrings
COM公式ドキュメント
コーデックおよびフォーマットの名前と説明文字列を取得します。
メソッド 2
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT GetName(DMO_MEDIA_TYPE* pmt, DWORD cchLength, LPWSTR szName, DWORD* pcchLength)
コーデックの名前を取得します。
| pmt | DMO_MEDIA_TYPE* | inout | 出力メディアタイプへのポインター。NULL の場合、コーデックは現在設定されているメディアタイプを使用します。 |
| cchLength | DWORD | in | szName バッファのサイズ(ワイド文字数)。 |
| szName | LPWSTR | outoptional | 名前を受け取るワイド文字バッファのアドレス。NULL の場合、pcchLength に必要な長さが格納されます。 |
| pcchLength | DWORD* | inout | 必要なバッファ長(null 終端文字を含むワイド文字数)へのポインター。 |
戻り値
このメソッドは HRESULT を返します。取り得る値には次の表に示すものが含まれますが、これらに限定されません。
| Return code | Description |
|---|---|
| メソッドは成功しました。 |
vtbl 4 HRESULT GetDescription(DMO_MEDIA_TYPE* pmt, DWORD cchLength, LPWSTR szDescription, DWORD* pcchLength)
出力フォーマットの説明を取得します。
| pmt | DMO_MEDIA_TYPE* | inout | 出力メディアタイプへのポインター。NULL の場合、コーデックは現在設定されているメディアタイプを使用します。 |
| cchLength | DWORD | in | szDescription バッファのサイズ(ワイド文字数)。 |
| szDescription | LPWSTR | outoptional | 説明を受け取るワイド文字バッファのアドレス。NULL の場合、pcchLength に必要な長さが格納されます。 |
| pcchLength | DWORD* | inout | 必要なバッファ長(null 終端文字を含むワイド文字数)へのポインター。 |
戻り値
このメソッドは HRESULT を返します。取り得る値には次の表に示すものが含まれますが、これらに限定されません。
| Return code | Description |
|---|---|
| メソッドは成功しました。 |
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IWMCodecStrings "{A7B2504B-E58A-47FB-958B-CAC7165A057D}" #usecom global IWMCodecStrings IID_IWMCodecStrings "{}" #comfunc global IWMCodecStrings_GetName 3 var,int,var,var #comfunc global IWMCodecStrings_GetDescription 4 var,int,var,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IWMCodecStrings "{A7B2504B-E58A-47FB-958B-CAC7165A057D}" #usecom global IWMCodecStrings IID_IWMCodecStrings "{}" #comfunc global IWMCodecStrings_GetName 3 sptr,int,sptr,sptr #comfunc global IWMCodecStrings_GetDescription 4 sptr,int,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。