Compartir a través de


Interfaz IMediaDet

[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.

Nota:

[Desusado. Esta API se puede quitar de futuras versiones de Windows.

 

La IMediaDet interfaz recupera información sobre un archivo multimedia, como el número de secuencias y el tipo de medio, la duración y la velocidad de fotogramas de cada secuencia. También contiene métodos para recuperar fotogramas individuales de una secuencia de vídeo. El objeto Media Detector (MediaDet) expone esta interfaz.

Para obtener información sobre un archivo mediante esta interfaz, realice los pasos siguientes:

  1. Cree una instancia del objeto MediaDet llamando a CoCreateInstance. El identificador de clase es CLSID_MediaDet.
  2. Llame a IMediaDet::p ut_Filename para especificar el nombre del archivo de origen.
  3. Llame a IMediaDet::get_OutputStreams para obtener el número de flujos de salida en el origen.
  4. Llame a IMediaDet::p ut_CurrentStream para especificar una secuencia determinada.
  5. Llame a cualquiera de los métodos siguientes:

Para recuperar un fotograma de vídeo, llame a IMediaDet::GetBitmapBits o IMediaDet::WriteBitmapBits. El marco devuelto siempre está en formato RGB de 24 bits.

Nota:

No utilice el mismo objeto MediaDet con varios archivos. Para obtener información o fotogramas de vídeo de más de un archivo, use instancias de MediaDet independientes.

 

La interfaz IMediaDet no admite formatos VIDEOINFOHEADER2 , por lo que no puede usar esta interfaz para obtener campos entrelazados ni información sobre la entrelazamiento. Además, si el descodificador ascendente solo admite VIDEOINFOHEADER2, no puede usar IMediaDet. Este podría ser el caso de un descodificador MPEG-2, por ejemplo. Además, la IMediaDet interfaz omite las secuencias del archivo que no son de vídeo o audio. Por ejemplo, si el archivo contiene una secuencia de audio, una secuencia de datos y una secuencia de vídeo, el método get_OutputStreams solo notificará dos secuencias (el audio y el vídeo).

Miembros

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

Métodos

La interfaz IMediaDet tiene estos métodos.

Método Descripción
EnterBitmapGrabMode Cambia el detector de medios al modo de captura de mapa de bits y busca el gráfico de filtros a una hora especificada.
get_CurrentStream Recupera el número de secuencia usado actualmente por el detector de medios.
get_Filename Recupera el nombre del archivo de origen usado actualmente por el detector de medios.
get_Filter Recupera un puntero al filtro de origen usado actualmente por el detector de medios.
get_FrameRate Recupera la velocidad de fotogramas de la secuencia actual.
get_OutputStreams Recupera el número de secuencias de audio y vídeo contenidas en el origen multimedia.
get_StreamLength Recupera la duración de la secuencia actual.
get_StreamMediaType Recupera el tipo de medio de la secuencia actual.
get_StreamType Recupera el identificador único global (GUID) para el tipo de medio de la secuencia actual.
get_StreamTypeB Recupera una cadena que representa el GUID del tipo de medio para la secuencia actual.
GetBitmapBits Recupera un fotograma de vídeo en el tiempo multimedia especificado.
GetSampleGrabber Recupera un puntero a la interfaz ISampleGrabber .
put_CurrentStream Especifica el número de flujo que se va a usar para el detector de medios.
put_Filename Especifica el nombre del archivo de origen para que use el detector de medios.
put_Filter Especifica un filtro de origen para el detector de medios que se va a usar.
WriteBitmapBits Recupera un fotograma de vídeo en el tiempo multimedia especificado y lo escribe en un archivo.

 

Observaciones

Nota:

El archivo de encabezado Qedit.h no es compatible con los encabezados de Direct3D posteriores a la versión 7.

 

Nota:

Para obtener Qedit.h, descargue la actualización de Microsoft Windows SDK para Windows Vista y .NET Framework 3.0. Qedit.h no está disponible en el Microsoft Windows SDK para Windows 7 y .NET Framework 3.5 Service Pack 1.

 

Requisitos

Requisito Value
Encabezado
Qedit.h
Biblioteca
Strmiids.lib