次の方法で共有


IAMExtTransport::GetStatus メソッド (strmif.h)

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

メソッドは GetStatus 、トランスポートの状態に関する情報を返します。

構文

HRESULT GetStatus(
  [in]      long StatusItem,
  [in, out] long *pValue
);

パラメーター

[in] StatusItem

取得する状態情報を指定します。 詳細については、「解説」を参照してください。

[in, out] pValue

長整数を指定または受け取る変数へのポインター。その意味は StatusItem の値に依存します。 詳細については、「解説」を参照してください。

戻り値

このメソッドが成功すると、S_OKが返されます。 それ以外の場合は、 HRESULT エラー コードが返されます。

注釈

StatusItem パラメーターは、取得する状態情報を指定するフラグです。 メソッドは 、pValue パラメーターの情報を返します。 すべてのデバイスですべての状態フラグがサポートされているわけではありません。 次のフラグが定義されています。

  • ED_MODE: 一時停止や再生など、現在のトランスポート モードを返します。 トランスポート モードを定義する定数の一覧については、「 IAMExtTransport::p ut_Mode 」を参照してください。 別の方法として、 StatusItem をこれらの定数のいずれかに設定できます。トランスポートが現在そのモードの場合は pValue が値 OATRUE を受け取り、それ以外の場合は OAFALSE を受け取ります。
  • ED_MEDIA_TYPE: このトランスポートのメディアの形式を示します。 次のいずれかの定数を返します。
    常時 説明
    ED_MEDIA_VHS Vhs
    ED_MEDIA_SVHS S-VHS
    ED_MEDIA_HI8 Hi-8
    ED_MEDIA_UMATIC Umatic
    ED_MEDIA_DVC DV テープ (DVC)
    ED_MEDIA_1_INCH 1インチテープ
    ED_MEDIA_D1 D1 形式
    ED_MEDIA_D2 D2 形式
    ED_MEDIA_D3 D3 形式
    ED_MEDIA_D5 D5 形式
    ED_MEDIA_DBETA Digital Betacam
    ED_MEDIA_BETA Betacam
    ED_MEDIA_8MM 8 ミリメートル
    ED_MEDIA_DDR デジタル ディスク レコーダー
    ED_MEDIA_SX Betacam SX
    ED_MEDIA_OTHER その他
    ED_MEDIA_CLV CLV (一定の線形速度、または "標準再生") レーザーディスク
    ED_MEDIA_CAV CAV (一定Angular速度、または "拡張再生") レーザーディスク
     
  • ED_LINK_MODE: トランスポートのコントロールがフィルター グラフの RunStopPause メソッドにリンクされている場合は OATRUE を返し、それ以外の場合は OAFALSE を返します。 詳細については、「 IAMExtTransport::p ut_Mode 」を参照してください。
  • ED_MEDIA_PRESENT: トランスポートのメディアが存在する場合は OATRUE を返し、それ以外の場合は OAFALSE を返します。
  • ED_MEDIA_LENGTH: メディアの長さを現在の時刻形式の単位で返します ( 「IAMExtTransport::SetTransportBasicParameters」を参照)。
  • ED_MEDIA_TRACK_COUNT: トラック数を返します。
  • ED_MEDIA_TRACK_LENGTH: 現在の時刻形式の単位でトラックの長さを返します。
  • ED_MEDIA_SIDE: メディアのどの側がアクティブであるかを示します。
Windows XP Service Pack 2 以降では、ED_MODEに対して次の追加の再生モードが定義されています。
常時 説明
ED_MODE_PLAY_SLOW_FWD_X 未指定のスローフォワードを再生します。 (ベンダー固有の速度での低速再生)。
ED_MODE_PLAY_FAST_FWD_X 未指定の早送りを再生します。 (ベンダー固有の速度で早送り再生)。
ED_MODE_PLAY_SLOW_REV_X 指定されていない遅い逆を再生します。 (ベンダー固有の速度での低速反転再生)。
ED_MODE_PLAY_FAST_REV_X 未指定の高速反転を再生します。 (ベンダー固有の速度で高速反転再生)。
ED_MODE_STOP_START トランスポートは、テープ (またはその他のトランスポート メディア) の先頭で停止されます。
ED_MODE_STOP_END トランスポートは、テープの末尾 (またはその他のトランスポート メディア) で停止されます。
ED_MODE_STOP_EMERGENCY 予期しない状態のため、またはトランスポートの損傷を回避するために、トランスポートが停止しました。
 

これらの定数を使用するには、Windows SDKのヘッダー ファイル Xprtdefs.h を含めます。

DV の実装

MSDV では、次の状態フラグがサポートされています。

  • ED_MODE: 前の解説を参照してください。
  • ED_MEDIA_TYPE: 次のいずれかの値を返します。
    常時 説明
    ED_MEDIA_VHS VHS テープ。
    ED_MEDIA_DVC DV テープ。
    ED_MEDIA_UNKNOWN 不明な型です。
    ED_MEDIA_NOT_PRESENT トランスポートが空です。
     
  • ED_DEV_REMOVED_HEVENT_GET。 イベントへのハンドルを返します。 デバイスがシステムから物理的に削除された場合、ドライバーはイベントを通知します。
  • ED_DEV_REMOVED_HEVENT_RELEASE。 ED_DEV_REMOVED_HEVENT_GET フラグを使用して取得したイベント ハンドルを解放します。 pValue パラメーターでハンドルのアドレスを指定します。
  • ED_MODE_CHANGE_NOTIFY。 pValue のデバイスの状態を返します。 メソッドが E_PENDINGを返す場合、状態の変更は保留中です。 ED_NOTIFY_HEVENT_GET フラグを使用すると、状態の変更が完了したときに通知を受け取ることができます。
  • ED_NOTIFY_HEVENT_GET。 イベントへのハンドルを返します。 ドライバーは、デバイスがモードの変更を完了したときにイベントを通知します。
  • ED_NOTIFY_HEVENT_RELEASE。 ED_NOTIFY_HEVENT_GET フラグを使用して取得したイベント ハンドルを解放します。 pValue パラメーターでハンドルのアドレスを指定します。

MPEG ビデオカメラの実装

MSTape では、ED_MEDIA_TYPE フラグの追加のメディア形式がサポートされています。

常時 説明
ED_MEDIA_NEO MPEG-2 トランスポート ストリーム (D-VHS) 用のミニ デジタル テープ。
 

これらのフラグの一部は、ヘッダー ファイル Xptrdefs.h で定義されています。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー strmif.h (Dshow.h を含む)
Library Strmiids.lib

こちらもご覧ください

エラーコードと成功コード

IAMExtTransport インターフェイス