MÉTHODE IMFASFSplitter ::P arseData (wmcontainer.h)
Envoie des données asf (Advanced Systems Format) paquetées au séparateur ASF pour traitement.
Syntaxe
HRESULT ParseData(
[in] IMFMediaBuffer *pIBuffer,
[in] DWORD cbBufferOffset,
[in] DWORD cbLength
);
Paramètres
[in] pIBuffer
Pointeur vers l’interface IMFMediaBuffer d’un objet de mémoire tampon contenant des données à analyser.
[in] cbBufferOffset
Décalage dans la mémoire tampon de données où le séparateur doit commencer l’analyse. Cette valeur est généralement définie sur 0.
[in] cbLength
Longueur, en octets, des données à analyser. Cette valeur est mesurée à partir du décalage spécifié par cbBufferOffset. Définissez sur 0 pour traiter jusqu’à la fin de la mémoire tampon.
Valeur retournée
Cette méthode retourne un code HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.
Code de retour | Description |
---|---|
|
S_OK |
|
Le paramètre pIBuffer est NULL.
La valeur de décalage spécifiée dans cbBufferOffset est supérieure à la longueur de la mémoire tampon. La valeur totale de cbBufferOffset et cbLength est supérieure à la longueur de la mémoire tampon. |
|
La méthode IMFASFSplitter ::Initialize n’a pas été appelée ou l’appel a échoué. |
|
Le séparateur ne peut pas traiter plus d’entrée pour l’instant. |
Remarques
Après avoir utilisé cette méthode pour analyser des données, vous devez appeler IMFASFSplitter ::GetNextSample pour récupérer des exemples de médias analysés.
Si vos données ASF contiennent des paquets de taille variable, vous devez définir l’attribut MFASFSPLITTER_PACKET_BOUNDARY sur les mémoires tampons pour indiquer les exemples de limites, et les mémoires tampons ne peuvent pas s’étendre sur plusieurs paquets.
Si la méthode retourne ME_E_NOTACCEPTING, appelez GetNextSample pour obtenir les exemples de sortie, ou appelez IMFASFSplitter ::Flush pour effacer le séparateur.
Le séparateur peut contenir un nombre de références sur la mémoire tampon d’entrée. Par conséquent, n’écrivez pas sur les données valides dans la mémoire tampon après avoir appelé cette méthode.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wmcontainer.h |
Bibliothèque | Mfuuid.lib |