次の方法で共有


ヘッダーにスクリプト データを追加するには

[このページに関連付けられている機能である Windows Media Format 11 SDK は、レガシ機能です。 これは、ソース リーダーシンク ライターによって置き換えられます。 ソース リーダーシンク ライターは、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、Windows Media Format 11 SDK ではなくソース リーダーシンク ライターを使用することを強くお勧めします。 Microsoft は、従来の API を使用する既存のコードを、可能であれば新しい API を使用するように書き直すよう提案しています。]

ASF ファイルのヘッダーにスクリプト コマンドを含めることができます。 エンコード時にスクリプト コマンドを ヘッダーに書き込むには、次の手順を実行します。 IWMWriter::BeginWriting を呼び出す前に、次の手順を実行します。

  1. IWMWriter::QueryInterface を呼び出して、IWMHeaderInfo インターフェイスへのポインターを取得します。
  2. IWMHeaderInfo::AddScript を呼び出して、必要な各スクリプト コマンドを追加します。 各呼び出しは、2 つの文字列を個別に受け取り、コマンドにパラメーターとして使用されるプレゼンテーション時間を受け取ります。

アプリケーションがファイルを読み取る場合は、すべてのスクリプト コマンドを取得する必要があります。 ファイルのヘッダー内のすべてのスクリプト コマンドを検索するには、次の手順を実行します。 これは、再生を開始する前に行う必要があります。

  1. オブジェクト内の別のインターフェイスの QueryInterface メソッドを呼び出して、リーダー オブジェクト (または同期リーダー オブジェクト) の IWMHeaderInfo インターフェイスへのポインターを取得します。
  2. IWMHeaderInfo::GetScriptCount を呼び出して、ヘッダー内のスクリプトの合計数を取得します。
  3. IWMHeaderInfo::GetScript の呼び出しを使用して、ヘッダー内のすべてのスクリプトを一度に 1 つずつループ処理します。
  4. 適切なタイミングでアプリケーションがコマンドに反応できるように、プレゼンテーション時間の一覧を作成します。

Note

DRM を使用してファイルを暗号化する場合、スクリプト コマンドでプレゼンテーション時間を 0 にすることはできません。

 

IWMHeaderInfo インターフェイス

IWMWriter インターフェイス

スクリプト コマンドの使用