Partager via


IMFSinkWriter ::P laceMarker, méthode (mfreadwrite.h)

Place un marqueur dans le flux spécifié.

Syntaxe

HRESULT PlaceMarker(
  [in] DWORD  dwStreamIndex,
  [in] LPVOID pvContext
);

Paramètres

[in] dwStreamIndex

Index de base zéro du flux.

[in] pvContext

Pointeur vers une valeur définie par l’application. La valeur de ce paramètre est retournée à l’appelant dans le paramètre pvContext de la méthode de rappel IMFSinkWriterCallback ::OnMarker de l’appelant. L’application est responsable de toute allocation de mémoire associée à ces données. Ce paramètre peut être NULL.

Valeur retournée

La méthode retourne un HRESULT. Les valeurs possibles incluent, mais ne sont pas limitées à celles du tableau suivant.

Code de retour Descriptif
S_OK
S_OK
MF_E_INVALIDREQUEST
La requête n’est pas valide.

Remarques

Pour utiliser cette méthode, vous devez fournir un rappel asynchrone lorsque vous créez l’enregistreur récepteur. Sinon, la méthode retourne MF_E_INVALIDREQUEST. Pour plus d’informations, consultez MF_SINK_WRITER_ASYNC_CALLBACK.

Les marqueurs permettent d’être avertis lorsque le récepteur multimédia consomme tous les échantillons d’un flux jusqu’à un certain point. Le récepteur multimédia ne traite pas le marqueur tant qu’il n’a pas traité tous les échantillons qui sont arrivés avant le marqueur. Lorsque le récepteur multimédia traite le marqueur, l’enregistreur récepteur appelle la méthode OnMarker de l’application. Lorsque le rappel est appelé, vous savez que le récepteur a consommé tous les exemples précédents pour ce flux.

Par exemple, pour modifier le format midstream, appelez PlaceMarker au point où le format change. Quand OnMarker est appelé, il est sûr d’appeler IMFSinkWriter ::SetInputMediaType pour modifier le type d’entrée (en supposant que le récepteur multimédia prend en charge les modifications de format dynamique).

En interne, cette méthode appelle IMFStreamSink ::P laceMarker sur le récepteur multimédia.

Note Le paramètre pvContext de la méthode IMFSinkWriter ::P laceMarker n’est pas passé au paramètre pvarContextValue de la méthode IMFStreamSink ::P laceMarker . Ces deux paramètres ne sont pas directement liés.
 

Cette interface est disponible sur Windows Vista si le supplément de mise à jour de plateforme pour Windows Vista est installé.

Spécifications

Requirement Valeur
Client minimum requis Supplément Windows 7, Windows Vista et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau | Applications UWP]
plateforme cible Fenêtres
Header mfreadwrite.h

Voir aussi

IMFSinkWriter

Enregistreur récepteur