[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayer、IMFMediaEngine、Audio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]
メソッドは GetSubpictureLanguage 、現在のタイトル内の指定したサブ画像ストリームの言語を取得します。
構文
HRESULT GetSubpictureLanguage(
[in] ULONG ulStream,
[out] LCID *pLanguage
);
パラメーター
[in] ulStream
言語が取得されるサブ画像ストリームの番号。
[out] pLanguage
ロケール情報を受け取る LCID へのポインター。 その後、Win32 MAKELANGID マクロを使用して、LCID から言語情報を抽出できます。
戻り値
次のいずれかの HRESULT 値を返します。
| リターン コード | 説明 |
|---|---|
|
正常終了しました。 |
|
引数が無効です。 |
|
DVD ナビゲーターが初期化されていないか、有効なドメインにありません。 |
注釈
メニューで使用できるテキスト言語を取得するには、 GetMenuLanguages を呼び出します。
GetSubpictureLanguage は、ストリームに不明な言語が含まれている場合、 pLanguage が指す値を 0 に設定します。
pLanguage から人間が判読できる文字列名を作成するには、次のように Win32 GetLocaleInfo 関数を呼び出します。
| C++ |
|---|
LCID Language;
hr = pDvdInfo->GetSubpictureLanguage(ulStream, &Language);
if (SUCCEEDED(hr))
{
int cchSize = GetLocaleInfo(Language, LOCALE_SENGLANGUAGE, 0, 0);
TCHAR *szString = new TCHAR[cchSize];
if (szString)
{
GetLocaleInfo(Language, LOCALE_SENGLANGUAGE, szString, cchSize);
/* ... */
delete [] szString;
}
}
|
要件
| 要件 | 値 |
|---|---|
| サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
| サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
| 対象プラットフォーム | Windows |
| ヘッダー | strmif.h (Dshow.h を含む) |
| Library | Strmiids.lib |