Pour implémenter le rappel OnSample
Le lecteur asynchrone fournit des exemples à l’application de contrôle dans l’ordre de présentation en effectuant des appels à la méthode de rappel IWMReaderCallback::OnSample . Lorsque vous créez une application à l’aide du lecteur asynchrone, vous devez implémenter OnSample pour traiter des exemples non compressés. En règle générale, les fonctions ou méthodes créées pour afficher le contenu seront appelées à partir de OnSample.
L’implémentation classique du rappel OnSample inclut les étapes suivantes.
- Récupérez l’emplacement et la taille de la mémoire tampon contenant l’exemple en appelant INSSBuffer::GetBufferAndLength sur la mémoire tampon passée en tant que pSample.
- Branchez votre logique en fonction du numéro de sortie. Le numéro de sortie est transmis à OnSample en tant que dwOutputNumber.
- Incluez la logique de rendu pour chaque numéro de sortie que vous souhaitez prendre en charge. Si vous effectuez un rendu d’exemples à partir de plusieurs sorties, vous devrez peut-être synchroniser votre rendu.
Les applications qui fournissent des exemples compressés à partir de fichiers ASF doivent implémenter la méthode de rappel IWMReaderCallbackAdvanced::OnStreamSample . Les fonctions OnStreamSample sont presque identiques à OnSample, sauf qu’elle reçoit des exemples compressés par numéro de flux au lieu d’exemples non compressés par numéro de sortie.
Rubriques connexes