Interfaz IMediaSample (strmif.h)

[La característica asociada a esta página, DirectShow, es una característica heredada. Se ha reemplazado por MediaPlayer, IMFMediaEngine y Captura de audio/vídeo en Media Foundation. Esas características se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use MediaPlayer, IMFMediaEngine y Audio/Video Capture en Media Foundation en lugar de DirectShow, 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.

La IMediaSample interfaz establece y recupera propiedades en ejemplos multimedia. Un ejemplo multimedia es un objeto COM que contiene un bloque de datos multimedia. Los ejemplos multimedia admiten el uso de búferes de memoria compartida entre filtros.

Normalmente, las aplicaciones no llaman a métodos en esta interfaz. Los filtros usan esta interfaz para establecer propiedades en ejemplos y entregarlas a un filtro de nivel inferior. El filtro de bajada usa la interfaz para recuperar las propiedades y leer los datos. El filtro puede modificar los datos en contexto, o bien puede copiar el ejemplo, modificar la copia y pasar la copia de bajada.

La interfaz IMediaSample2 hereda esta interfaz.

Herencia

La interfaz IMediaSample hereda de la interfaz IUnknown . IMediaSample también tiene estos tipos de miembros:

Métodos

La interfaz IMediaSample tiene estos métodos.

 
IMediaSample::GetActualDataLength

El método GetActualDataLength recupera la longitud de los datos válidos en el búfer.
IMediaSample::GetMediaTime

El método GetMediaTime recupera los tiempos multimedia de este ejemplo.
IMediaSample::GetMediaType

El método GetMediaType recupera el tipo de medio, si el tipo de medio difiere del ejemplo anterior.
IMediaSample::GetPointer

El método GetPointer recupera un puntero de lectura y escritura en el búfer del ejemplo multimedia.
IMediaSample::GetSize

El método GetSize recupera el tamaño del búfer.
IMediaSample::GetTime

El método GetTime recupera los tiempos de secuencia en los que este ejemplo debe comenzar y finalizar.
IMediaSample::IsDiscontinuity

El método IsDiscontinuity determina si este ejemplo representa un salto en el flujo de datos.
IMediaSample::IsPreroll

El método IsPreroll determina si este ejemplo es un ejemplo de inscripción previa. No se debe mostrar un ejemplo de inscripción previa.
IMediaSample::IsSyncPoint

El método IsSyncPoint determina si el principio de este ejemplo es un punto de sincronización.
IMediaSample::SetActualDataLength

El método SetActualDataLength establece la longitud de los datos válidos en el búfer.
IMediaSample::SetDiscontinuity

El método SetDiscontinuity especifica si este ejemplo representa un salto en el flujo de datos.
IMediaSample::SetMediaTime

El método SetMediaTime establece los tiempos multimedia de este ejemplo.
IMediaSample::SetMediaType

El método SetMediaType establece el tipo de medio para el ejemplo.
IMediaSample::SetPreroll

El método SetPreroll especifica si este ejemplo es un ejemplo de inscripción previa.
IMediaSample::SetSyncPoint

El método SetSyncPoint especifica si el principio de este ejemplo es un punto de sincronización.
IMediaSample::SetTime

El método SetTime establece las horas de secuencia en las que debe comenzar y finalizar este ejemplo.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado strmif.h (incluya Dshow.h)