Microsoft DirectX 8.0 |
DVD コピー保護プロパティ セットは、ハードウェア デクリプタまたはソフトウェア デクリプタから得られるコピー保護情報の認証を提供する。このプロパティ セットは、DVD ビデオからの違法コピーを防止するために使用する。
Microsoft は、暗号化方式に必要な認証処理を助けることにより、DVD-ROM ドライブが DVD デクリプタを使用してキーの認証および転送ができるようにするソフトウェアを提供する。現在のところ DVD デクリプタを製品化する予定はないが、代わりに、ハードウェア デクリプタとソフトウェア デクリプタのどちらかの認証を有効にするエージェントとして機能するシステム コードを提供している。
DVD ナビゲータはキー交換処理を開始および制御する。DVD ミニドライバは以下のプロパティを実装するだけでよい。残りはその他のコンポーネントが処理する。
コピー保護プロパティは、個々の DVD 入力ストリームに送られる。このことは、DVD ストリームをすべて同じハードウェアで制御する場合でも変わらない。
次の情報は、IKsPropertySet メソッドの呼び出しでこのプロパティ セットに使用するために必要な定数およびデータ型の情報を示している。GUID (guidPropSet)、プロパティ ID (dwPropID)、およびプロパティのデータ型 (pPropData) パラメータの値を提供する。
プロパティ セット GUID: AM_KSPROPSETID_CopyProt
次の一覧は、DVD コピー保護プロパティの ID とその説明である。
typedef struct _DVD_REGION { UCHAR CopySystem; //ディスクがコピー保護されているかどうかを指定する。 UCHAR RegionData; //デコーダからの地域情報。 UCHAR SystemRegion; //DVD ドライブからの地域情報。 UCHAR Reserved; //予約済み。 } DVD_REGION, *PDVD_REGION;
IKsPropertySet インターフェイスを使用して、これらのプロパティをサポートするために設定、取得、およびクエリを行う。
このプロパティ セットでは、次のデータ型が使用される。
データ型 | 説明 |
---|---|
AM_COPY_MACROVISION | NTSC エンコーダのマクロビジョン レベル。 |
AM_COPY_MACROVISION_LEVEL | マクロビジョン レベル。AM_COPY_MACROVISION 構造体はこのデータ型を使用する。 |
AM_DVDCOPY_BUSKEY | DVD バス キー。 |
AM_DVDCOPY_CHLGKEY | DVD チャレンジ キー。 |
AM_DVDCOPY_DISCKEY | DVD ディスク キー。 |
AM_DVDCOPY_SET_COPY_STATE | フィルタのコピー保護状態を判断する。 |
AM_DVDCOPYSTATE | コピー保護状態。AM_DVDCOPY_SET_COPY_STATE 構造体はこのデータ型を使用する。 |
AM_DVDCOPY_TITLEKEY | 現在のコンテンツからの DVD タイトル キー。 |
NTSC エンコーダのマクロビジョン レベル。
構文
typedef struct _AM_COPY_MACROVISION { ULONG MACROVISIONLevel; } AM_COPY_MACROVISION, *PAM_COPY_MACROVISION;
メンバ
- MACROVISIONLevel
- NTSC エンコーダのマクロビジョン レベル。AM_COPY_MACROVISION_LEVEL 列挙型のメンバ。
注意
AM_PROPERTY_COPY_MACROVISION プロパティはこの構造体を使用する。
マクロビジョン レベル。
構文
typedef enum { AM_MACROVISION_DISABLED, AM_MACROVISION_LEVEL1, AM_MACROVISION_LEVEL2, AM_MACROVISION_LEVEL3 } AM_COPY_MACROVISION_LEVEL, *PAM_COPY_MACROVISION_LEVEL;
要素
- AM_MACROVISION_DISABLED
- 無効。
- AM_MACROVISION_LEVEL1
- レベル 1。
- AM_MACROVISION_LEVEL2
- レベル 2。
- AM_MACROVISION_LEVEL3
- レベル 3。
注意
AM_COPY_MACROVISION 構造体はこのデータ型を使用する。
DVD バス キー。
構文
typedef struct _AM_DVDCOPY_BUSKEY { BYTE BusKey[5]; BYTE Reserved[1]; } AM_DVDCOPY_BUSKEY, *PAM_DVDCOPY_BUSKEY;
メンバ
- BusKey
- DVD ドライブのバス キー。
- Reserved
- 予約済み。
注意
AM_PROPERTY_DVDCOPY_DVD_KEY1 プロパティと AM_PROPERTY_DVDCOPY_DEC_KEY2 プロパティはこの構造体を使用する。
バス キーは、暗号解除のための DVD CSS キー交換に使用する。実装者は、CSS ライセンスを取得して、CSS からのより詳しい説明を参照する必要がある。連絡先の情報については、「DVD ビデオの仕様」を参照すること。
DVD チャレンジ キー。
構文
typedef struct _AM_DVDCOPY_CHLGKEY { BYTE ChlgKey[10]; BYTE Reserved[2]; } AM_DVDCOPY_CHLGKEY, *PAM_DVDCOPY_CHLGKEY;
メンバ
- ChlgKey
- チャレンジ キー。
- Reserved
- 予約済み。
注意
AM_PROPERTY_DVDCOPY_CHLG_KEY プロパティはこの構造体を使用する。
チャレンジ キーは、暗号解除のための DVD CSS キー交換に使用する。実装者は、CSS ライセンスを取得して、CSS からのより詳しい説明を参照する必要がある。連絡先の情報については、「DVD ビデオの仕様」を参照すること。
DVD ディスク キー。
構文
typedef struct _AM_DVDCOPY_DISCKEY { BYTE DiscKey[2048]; } AM_DVDCOPY_DISCKEY, *PAM_DVDCOPY_DISCKEY;
メンバ
- DiscKey
- DVD ディスク キー。
注意
AM_PROPERTY_DVDCOPY_DISC_KEY プロパティはこの構造体を使用する。
ディスク キーは、暗号解除のための DVD CSS キー交換に使用する。実装者は、CSS ライセンスを取得して、CSS からのより詳しい説明を参照する必要がある。連絡先の情報については、「DVD ビデオの仕様」を参照すること。
フィルタのコピー保護状態を判断する。
構文
typedef struct AM_DVDCOPY_SET_COPY_STATE { ULONG DVDCopyState; } AM_DVDCOPY_SET_COPY_STATE, *PAM_DVDCOPY_SET_COPY_STATE;
メンバ
- DVDCopyState
- フィルタのコピー保護状態。AM_DVDCOPYSTATE 列挙型のメンバ。
注意
このプロパティでは、IKsPropertySet::Get メソッドと IKsPropertySet::Set メソッドの両方がサポートされる。認証が必要かどうかを判断するため、まず IKsPropertySet::Get メソッドが呼び出される。ハードウェア DVD デコーダのように、同じ認証者を使用する複数のピンを提供するフィルタがある場合、キー交換アルゴリズムを 1 度だけ適用すればよいことを示すため、デコーダが一部のピンについて AM_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED で応答する可能性がある。このプロパティが発行される最初のピンの正しいコピー保護状態を取得するためには、このフィルタが AM_DVDCOPYSTATE_AUTHENTICATION_REQUIRED で応答する必要がある。
IKsPropertySet::Set メソッドは、コピー保護のネゴシエーションのどのフェーズにフィルタが入ろうとしているかを示すために使用する。フェーズは、AM_DVDCOPYSTATE 列挙型の必要なフラグをセットして指定する。
AM_PROPERTY_DVDCOPY_SET_COPY_STATE プロパティはこの構造体を使用する。
コピー保護状態。
構文
typedef enum { AM_DVDCOPYSTATE_INITIALIZE, AM_DVDCOPYSTATE_INITIALIZE_TITLE, AM_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED, AM_DVDCOPYSTATE_AUTHENTICATION_REQUIRED, AM_DVDCOPYSTATE_DONE } AM_DVDCOPYSTATE;
要素
- AM_DVDCOPYSTATE_INITIALIZE
- 完全なキー交換アルゴリズムを開始する。
- AM_DVDCOPYSTATE_INITIALIZE_TITLE
- タイトル キー交換アルゴリズムを開始する。
- AM_DVDCOPYSTATE_AUTHENTICATION_NOT_REQUIRED
- 認証は必要ない。
- AM_DVDCOPYSTATE_AUTHENTICATION_REQUIRED
- 認証が必要。
- AM_DVDCOPYSTATE_DONE
- キー交換のネゴシエーションが完了した。
注意
AM_DVDCOPY_SET_COPY_STATE 構造体はこのデータ型を使用する。
現在のコンテンツからの DVD タイトル キー。
構文
typedef struct AM_DVDCOPY_TITLEKEY { ULONG KeyFlags; UCHAR TitleKey[6]; UCHAR Reserved[2]; } AM_DVDCOPY_TITLEKEY, *PAM_DVDCOPY_TITLEKEY;
メンバ
注意
AM_PROPERTY_DVDCOPY_TITLE_KEY プロパティはこの構造体を使用する。
タイトル キーは、暗号解除のための DVD CSS キー交換に使用する。実装者は、CSS ライセンスを取得して、CSS からのより詳しい説明を参照する必要がある。連絡先の情報については、「DVD ビデオの仕様」を参照すること。