Utilisation de récepteurs de fichiers
Dans des circonstances normales, vous pouvez simplement transmettre à l’enregistreur un nom de fichier de sortie à l’aide de la méthode IWMWriter :: SetOutputFilename , et l’objet enregistreur écrira automatiquement le fichier sur le disque. Dans ce cas, l’enregistreur crée et contrôle un objet récepteur de fichiers de writer qui gère l’écriture du fichier sur le disque. Un objet récepteur de fichiers du writer contrôle le déroulement des données de l’objet Writer dans un fichier unique.
Vous pouvez créer vos propres récepteurs de fichiers pour mieux contrôler la façon dont le récepteur écrit le fichier. Vous pouvez également accéder au récepteur de fichiers du writer par défaut créé par le writer en réponse à un appel à SetOutputFilename.
Création de récepteurs de fichiers
Pour créer un récepteur de fichiers et l’ajouter au writer, procédez comme suit.
- Créez un récepteur en appelant la fonction WMCreateWriterFileSink .
- Fournissez un nom de fichier pour le récepteur en appelant IWMWriterFileSink :: Open.
- Ajoutez le récepteur de fichiers au writer en appelant IWMWriterAdvanced :: AddSink.
- Effectuez l’écriture de la manière habituelle.
- Une fois l’écriture terminée, le récepteur ferme automatiquement le fichier.
Arrêt et démarrage des récepteurs de fichiers
Une fois les opérations d’écriture commencées, vous pouvez arrêter l’écriture dans un récepteur de fichiers en appelant IWMWriterFileSink2 :: Stop.
Il existe de nombreuses raisons possibles pour lesquelles vous souhaiteriez arrêter l’écriture dans un récepteur. Par exemple, si vous enregistrez à partir d’une source active, vous pouvez être intéressé uniquement par une partie du contenu.
Vous pouvez reprendre l’écriture dans un récepteur de fichiers en appelant IWMWriterFileSink2 :: Start. Les deux options arrêter et Démarrer utilisent des durées de présentation pour contrôler approximativement le moment où la commande est exécutée. Vous pouvez utiliser les méthodes IWMWriterFileSink3 pour mieux contrôler les heures de démarrage et d’arrêt.
Fermeture des récepteurs de fichiers
Normalement, un récepteur de fichiers est fermé automatiquement. Si vous avez terminé l’écriture dans un récepteur, mais que l’écriture d’opérations sur d’autres récepteurs se poursuit, vous devez fermer explicitement le récepteur pour conserver les ressources. Pour fermer un récepteur de fichiers, appelez IWMWriterFileSink2 :: Close.
Obtention des statistiques du récepteur
Vous pouvez obtenir la taille de fichier et la durée d’un récepteur ouvert en appelant IWMWriterFileSink2 :: GetFileSize et IWMWriterFileSink2 :: GetFileDuration respectivement.