Compartir a través de


Para implementar la devolución de llamada de OnSample

[La característica asociada a esta página, SDK de Windows Media Format 11, es una característica heredada. Se ha reemplazado por lector de origen y escritor receptor. El lector de origen y el sistema de escritura receptor se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use lector de origen y escritor receptor en lugar del SDK de Windows Media Format 11, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.

El lector asincrónico entrega ejemplos a la aplicación de control en el orden en tiempo de presentación realizando llamadas al método de devolución de llamada IWMReaderCallback::OnSample . Al crear una aplicación mediante el lector asincrónico, debe implementar OnSample para tratar ejemplos sin comprimir. Normalmente, se llamará a funciones o métodos creados para representar el contenido desde OnSample.

La implementación típica de la devolución de llamada onSample incluye los pasos siguientes.

  1. Recupere la ubicación y el tamaño del búfer que contiene el ejemplo llamando a INSSBuffer::GetBufferAndLength en el búfer pasado como pSample.
  2. Bifurcar la lógica en función del número de salida. El número de salida se pasa a OnSample como dwOutputNumber.
  3. Incluya la lógica de representación para cada número de salida que quiera admitir. Si va a representar ejemplos de varias salidas, es posible que tenga que sincronizar la representación.

Las aplicaciones que entregan ejemplos comprimidos de archivos ASF deben implementar el método de devolución de llamada IWMReaderCallbackAdvanced::OnStreamSample . OnStreamSample funciona casi de forma idéntica a OnSample, salvo que recibe muestras comprimidas por número de secuencia en lugar de muestras sin comprimir por número de salida.

Interfaz IWMReaderCallback

IWMReaderCallbackAdvanced (Interfaz)

Leer archivos con el lector asincrónico

Uso de los métodos de devolución de llamada