[このページに関連付けられている機能である Windows Media Format 11 SDK は、レガシ機能です。 これは、ソース リーダーとシンク ライターによって置き換えられます。 ソース リーダーとシンク ライターは、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、Windows Media Format 11 SDK ではなくソース リーダーとシンク ライターを使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]
ASF ファイルのヘッダーにスクリプト コマンドを含めることができます。 エンコード時にスクリプト コマンドを ヘッダーに書き込むには、次の手順を実行します。 IWMWriter::BeginWriting を呼び出す前に、次の手順を実行します。
- IWMWriter::QueryInterface を呼び出して、IWMHeaderInfo インターフェイスへのポインターを取得します。
- IWMHeaderInfo::AddScript を呼び出して、必要な各スクリプト コマンドを追加します。 各呼び出しは、2 つの文字列を個別に受け取り、コマンドにパラメーターとして使用されるプレゼンテーション時間を受け取ります。
アプリケーションがファイルを読み取る場合は、すべてのスクリプト コマンドを取得する必要があります。 ファイルのヘッダー内のすべてのスクリプト コマンドを検索するには、次の手順を実行します。 これは、再生を開始する前に行う必要があります。
- オブジェクト内の別のインターフェイスの QueryInterface メソッドを呼び出して、リーダー オブジェクト (または同期リーダー オブジェクト) の IWMHeaderInfo インターフェイスへのポインターを取得します。
- IWMHeaderInfo::GetScriptCount を呼び出して、ヘッダー内のスクリプトの合計数を取得します。
- IWMHeaderInfo::GetScript の呼び出しを使用して、ヘッダー内のすべてのスクリプトを一度に 1 つずつループ処理します。
- 適切なタイミングでアプリケーションがコマンドに反応できるように、プレゼンテーション時間の一覧を作成します。
Note
DRM を使用してファイルを暗号化する場合、スクリプト コマンドでプレゼンテーション時間を 0 にすることはできません。
関連トピック