Compartilhar via


Para adicionar dados de script ao cabeçalho

[O recurso associado a esta página, Windows Media Format 11 SDK, é um recurso herdado. Ele foi substituído por Leitor de Origem e Gravador de Coletor. O Leitor de Origem e o Gravador de Coletor foram otimizados para Windows 10 e Windows 11. A Microsoft recomenda fortemente que o novo código use o Leitor de Origem e o Gravador de Coletor em vez do SDK do Windows Media Format 11, quando possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Você pode incluir comandos de script no cabeçalho de um arquivo ASF. Para gravar comandos de script no cabeçalho no momento da codificação, execute as etapas a seguir. Execute estas etapas antes de chamar IWMWriter::BeginWriting.

  1. Obtenha um ponteiro para a interface IWMHeaderInfo chamando IWMWriter::QueryInterface.
  2. Adicione cada comando de script desejado chamando IWMHeaderInfo::AddScript. Cada chamada usa as duas cadeias de caracteres separadamente e o tempo de apresentação a ser usado para o comando como parâmetros.

Quando um aplicativo lê o arquivo, ele precisará recuperar todos os comandos de script. Para localizar todos os comandos de script no cabeçalho de um arquivo, execute as etapas a seguir. Isso deve ser feito antes de iniciar a reprodução.

  1. Obtenha um ponteiro para a interface IWMHeaderInfo do objeto leitor (ou objeto leitor síncrono) chamando o método QueryInterface de outra interface no objeto .
  2. Obtenha o número total de scripts no cabeçalho chamando IWMHeaderInfo::GetScriptCount.
  3. Faça o loop de todos os scripts no cabeçalho um de cada vez usando chamadas para IWMHeaderInfo::GetScript.
  4. Crie uma lista dos horários de apresentação para que seu aplicativo possa reagir aos comandos no momento apropriado.

Observação

Ao usar o DRM para criptografar um arquivo, nenhum comando de script pode ter um tempo de apresentação igual a 0.

 

IWMHeaderInfo Interface

IWMWriter Interface

Usando comandos de script