サービス プロバイダーのインターフェイス
このセクションでは、Windows Media デバイス マネージャー サービス プロバイダーによって実装されるインターフェイスについて説明します。 サービス プロバイダーは、アプリケーションによって呼び出される Windows Media デバイス マネージャー SDK メソッドのほとんどが実装されているため、デバイスとの通信の実際の作業のほとんどを実行します。
サービス プロバイダーは、このセクションに記載されているすべてのインターフェイスを実装する必要はありません。 たとえば、オンボード ストレージがないメディア デバイスでは、コンテンツの制御や公開に使用されるインターフェイスは実装されません。 メソッドまたはインターフェイスが必要かどうかは、適切な参照ページに示されます。
インターフェイスまたはクラス | 説明 |
---|---|
CSecureChannelServer | サービス プロバイダーまたはセキュリティで保護されたコンテンツ プロバイダーがアプリケーションを認証し、セキュリティで保護されたパラメーターの MAC 署名を作成できるようにするヘルパー クラス。 |
IMDServiceProvider | クライアント (通常は Windows Media デバイス マネージャー) に、このサービス プロバイダーがサポートするデバイスのデバイス列挙子を提供します。 |
IMDServiceProvider2 | デバイス パスを使用してデバイスを作成するためのメソッドを提供することで、 IMDServiceProvider を拡張します。 |
IMDServiceProvider3 | デバイス列挙の基本設定を設定するためのメソッドを提供することで、 IMDServiceProvider2 を拡張します。 |
IMDSPDevice | メディア デバイスとのインスタンスベースの関連付けを提供します。 このインターフェイスを使用して、クライアントはデバイスの記憶域メディア列挙子を列挙し、デバイスに関する情報を取得し、不透明 (パススルー) コマンドをデバイスに送信できます。 |
IMDSPDevice2 | 拡張ビデオ形式の取得、プラグ アンド プレイ (PnP) デバイス名の取得、プロパティ ページの使用の有効化、その名前からストレージ メディアへのポインターの取得を可能にするメソッドを提供することで、IMDSPDevice を拡張します。 このインターフェイスは、サービス プロバイダーでは省略可能ですが、推奨されます。 |
IMDSPDevice3 | オブジェクト形式に関してデバイスのプロパティと機能を照会する機能を提供することで、 IMDSPDevice2 を拡張します。 |
IMDSPDeviceControl | デバイスを制御するためのメソッドを提供します。 |
IMDSPDirectTransfer | Windows Media デバイス マネージャーがコンテンツ転送をサービス プロバイダーに委任できるようにします。 この場合、Windows Media デバイス マネージャーは、サービス プロバイダーに送信する前にコンテンツの処理を行いません。 サービス プロバイダーは、ソースを完全に制御します。 |
IMDSPEnumDevice | このサービス プロバイダーでサポートされているメディア デバイスを列挙します。 |
IMDSPEnumStorage | デバイス上の記憶域メディアと記憶域メディアの内容を列挙します。 |
IMDSPObject | ストレージ オブジェクトに対するデータ転送操作のメソッドが含まれています。 |
IMDSPObject2 | DRM 対応データをより効率的に送信することで IMDSPObject を拡張します。 |
IMDSPObjectInfo | 記憶域メディア上の再生可能オブジェクトの再生長、再生位置、再生オフセット、または合計長を設定または取得します。 |
IMDSPRevoked | 更新されたコンポーネントをダウンロードできる URL を取得します。 |
IMDSPStorage | デバイス上のストレージ メディアとのインスタンス化ベースの関連付けを提供します。 このインターフェイスは、ストレージ オブジェクトを作成し、それらに関する情報を取得し、現在のストレージ内に入れ子になったサブフォルダーを列挙するための IMDSPEnumStorage インターフェイスへのアクセスを提供します。 |
IMDSPStorage2 | 拡張属性を取得して設定し、その名前からストレージへのポインターを取得できるようにすることで、 IMDSPStorage を拡張します。 |
IMDSPStorage3 | メタデータをサポートすることで IMDSPStorage2 を拡張します。 |
IMDSPStorage4 | プレイリスト オブジェクトをサポートすることで IMDSPStorage3 を拡張します。 |
IMDSPStorageGlobals | 空き領域の量やファイルの合計数など、記憶域メディアに関するグローバル情報を取得します。 |
次の図は、サービス プロバイダーによって実装されるさまざまなインターフェイスを取得する方法を示しています。 この図では、派生インターフェイスはコンパクト化のために同じタグに表示されるため、IMDServiceProvider/2/3 は IMDServiceProvider、IMDServiceProvider2、 IMDServiceProvider3 の 3 つのインターフェイスを表します。 示されているメソッドは、これらのインターフェイスのいずれかによってのみ拡張されます。 派生インターフェイスは、作成されたオブジェクトの基本インターフェイスで QueryInterface を呼び出すことによって取得されます。
関連トピック