Écriture de fichiers ASF

[La fonctionnalité associée à cette page, le Kit de développement logiciel (SDK) Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par lecteur source et enregistreur récepteur. Le lecteur source et l’enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise le lecteur source et l’enregistreur récepteur au lieu du Kit de développement logiciel (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 utiliser l’objet writer du Kit de développement logiciel (SDK) au format Windows Media pour créer des fichiers ASF à partir de données multimédias numériques. Pour créer une instance de l’objet writer, appelez la fonction WMCreateWriter. L’objet writer coordonne les fonctionnalités d’un certain nombre de composants, y compris les codecs, qui sont externes au Kit de développement logiciel (SDK) au format Windows Media.

Les fonctionnalités de base de l’objet writer peuvent être réparties en étapes suivantes. Dans ces étapes, « l’application » fait référence au programme que vous écrivez à l’aide du Kit de développement logiciel (SDK) au format Windows Media.

  1. L’application fournit au rédacteur un profil à utiliser pour créer le fichier ASF. Lorsque l’enregistreur charge les données de profil, il affecte un numéro d’entrée à chaque connexion du profil.
  2. L’application fournit au rédacteur un nom de fichier de sortie pour l’écriture du fichier. L’enregistreur crée un objet récepteur de fichier writer pour gérer la création et l’entrée de fichier. Pour plus d’informations, consultez Writer File Sink Object.
  3. L’enregistreur crée un en-tête pour le nouveau fichier en fonction des informations contenues dans le profil.
  4. L’application transmet des exemples non compressés au rédacteur. Les exemples sont transmis un par un dans des mémoires tampons encapsulées dans des objets de mémoire tampon. L’application doit transmettre des exemples pour chaque flux simultanément afin que l’enregistreur reçoive tous les exemples dans l’ordre au moment de la présentation.
  5. L’enregistreur transmet les exemples au codec approprié pour la compression. Lorsque l’enregistreur reçoit les exemples compressés, il les entrelace avec des exemples provenant des autres flux afin que les exemples soient insérés dans le fichier dans l’ordre de temps de présentation, quel que soit le flux. Les exemples de données sont ensuite transformés en paquets et écrits dans la section données du fichier.
  6. Lorsque tous les exemples sont traités, l’enregistreur peut ajouter un index au fichier pour améliorer les performances de recherche.

Ces étapes sont illustrées dans l’exemple d’application WMStats, entre autres. Pour plus d’informations, consultez Exemples d’applications.

L’enregistreur prend également en charge des fonctionnalités plus avancées, ce qui vous permet d’effectuer les opérations suivantes :

  • Modifiez les métadonnées dans l’en-tête du fichier.
  • Écrivez des exemples prédéprimés.
  • Écrire dans des récepteurs réseau pour la diffusion en continu de données en direct.
  • Écrire dans les récepteurs de fichiers pour les options de contrôle de fichiers avancées.
  • Écrire dans des récepteurs push pour la distribution sur des serveurs qui fourniront du contenu aux utilisateurs finaux.
  • Fournissez des exemples postview pour la vérification de la sortie.
  • Fournissez des statistiques de performances de l’enregistreur.

Les sections suivantes décrivent en détail l’utilisation de l’objet writer.

Section Description
Pour utiliser des profils avec l’auteur Décrit comment spécifier un profil à utiliser avec l’enregistreur.
Utilisation des entrées Décrit comment identifier et configurer les paramètres d’entrée dans l’enregistreur.
Pour modifier des métadonnées avec l’enregistreur Décrit comment utiliser l’enregistreur pour modifier les métadonnées d’un nouveau fichier.
Pour écrire des exemples Décrit comment passer des exemples à l’enregistreur.
Définition des extensions d’unité de données Décrit comment ajouter des données étendues à des exemples.
Écriture d’exemples compressés Décrit comment passer des exemples prédéprimés à l’enregistreur.
Écriture de flux d’images Décrit comment configurer une entrée pour un flux d’images.
Écriture d’exemples d’images vidéo Décrit comment configurer des exemples d’image vidéo.
Écriture de flux à débit binaire variable Décrit comment écrire des flux À débit binaire variable (VBR).
Utilisation de l’encodage Two-Pass Décrit comment faire effectuer une passe préliminaire au codec avant d’écrire le fichier.
Pour forcer l’insertion de Key-Frame Décrit comment forcer manuellement le codec à encoder un exemple en tant que trame clé.
Pour gérer la latence de l’enregistreur Décrit comment réduire le temps nécessaire à l’enregistreur pour traiter des exemples dans un fichier de sortie ou un récepteur.
Utilisation des récepteurs d’enregistreur Décrit comment utiliser des récepteurs d’enregistreur pour fournir votre contenu à des fichiers ou des emplacements réseau.
Pour obtenir des statistiques d’enregistreur Décrit comment obtenir des statistiques pour l’enregistreur.
Pour utiliser Writer Postview Décrit comment obtenir des exemples non compressés lorsque vous écrivez un fichier à des fins de vérification.

 

Guide de programmation

Récepteur de fichiers d’auteur, objet

Objet récepteur de réseau writer

Auteur, objet