Partager via


Pour ajouter des données de script à l’en-tête

[La fonctionnalité associée à cette page, sdk Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par lecteur source et enregistreur récepteur. lecteur source et enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise lecteur source et enregistreur récepteur au lieu d'SDK Windows Media Format 11, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Vous pouvez inclure des commandes de script dans l’en-tête d’un fichier ASF. Pour écrire des commandes de script dans l’en-tête au moment de l’encodage, procédez comme suit. Effectuez ces étapes avant d’appeler IWMWriter ::BeginWriting.

  1. Obtenez un pointeur vers l’interface IWMHeaderInfo en appelant IWMWriter ::QueryInterface.
  2. Ajoutez chaque commande de script souhaitée en appelant IWMHeaderInfo ::AddScript. Chaque appel prend les deux chaînes séparément et le temps de présentation à utiliser pour la commande en tant que paramètres.

Lorsqu’une application lit le fichier, elle doit récupérer toutes les commandes de script. Pour rechercher toutes les commandes de script dans l’en-tête d’un fichier, procédez comme suit. Cette opération doit être effectuée avant de commencer la lecture.

  1. Obtenez un pointeur vers l’interface IWMHeaderInfo de l’objet lecteur (ou de l’objet lecteur synchrone) en appelant la méthode QueryInterface d’une autre interface dans l’objet.
  2. Obtenez le nombre total de scripts dans l’en-tête en appelant IWMHeaderInfo ::GetScriptCount.
  3. Effectuez une boucle dans tous les scripts de l’en-tête un par un à la fois à l’aide d’appels à IWMHeaderInfo ::GetScript.
  4. Créez une liste des heures de présentation afin que votre application puisse réagir aux commandes au moment approprié.

Note

Lorsque vous utilisez DRM pour chiffrer un fichier, aucune commande de script ne peut avoir une durée de présentation de 0.

 

interface IWMHeaderInfo

interface IWMWriter

à l’aide de commandes de script