Compartir a través de


estructura de MPEG2_TRANSPORT_STRIDE

[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 MPEG2_TRANSPORT_STRIDE estructura describe el formato de los paquetes de flujo de transporte MPEG-2 (TS). Esta estructura permite los flujos de transporte en los que los paquetes de transporte de 188 bytes no son contiguos. A efectos de esta documentación, estos paquetes se conocen como paquetes de paso.

Los paquetes de intervalo se identifican mediante el siguiente tipo de medio:

Etiqueta Value
Tipo principal MEDIATYPE_Stream
Subtype MEDIASUBTYPE_MPEG2_TRANSPORT_STRIDE
Tipo de formato FORMAT_None

 

El bloque de formato (pbFormat) es opcional. Si se incluye el bloque de formato, debe comenzar con una estructura de MPEG2_TRANSPORT_STRIDE . Esta estructura define el diseño del paquete de transporte dentro del paquete de paso. Si el bloque de formato es NULL, se supone que los paquetes usan un conjunto de valores predeterminados; consulte la sección Comentarios para obtener más información.

Sintaxis

typedef struct _MPEG2_TRANSPORT_STRIDE {
  DWORD dwOffset;
  DWORD dwPacketLength;
  DWORD dwStride;
} MPEG2_TRANSPORT_STRIDE, *PMPEG2_TRANSPORT_STRIDE;

Miembros

dwOffset

Especifica el desplazamiento, en bytes, desde el principio del paquete hasta el primer byte del paquete de transporte incrustado. El valor debe oscilar entre cero y (dwStride - dwPacketLength), ambos incluidos.

dwPacketLength

Especifica la longitud del paquete de transporte incrustado, en bytes. Para los paquetes de transporte MPEG-2 estándar, el valor debe ser de 188 bytes.

dwStride

Especifica la longitud del paquete de intervalo completo, en bytes. El valor debe ser al menos (dwOffset + dwPacketLength).

Observaciones

En el diagrama siguiente se muestran las relaciones entre los miembros de la estructura.

Paquete de paso mpeg-2

Los búferes de entrada que contienen paquetes de intervalo multiplexado tienen algunas restricciones:

  • Los paquetes de intervalo se deben empaquetar de forma contigua dentro del búfer.
  • Ningún bytes puede preceder al primer paquete de paso o seguir el último paquete de paso.
  • Un número entero de paquetes de paso debe caber en el búfer; es decir, la longitud del búfer % dwStride es igual a cero.

No hay ninguna restricción en el número de paquetes de intervalo por búfer.

Si el tipo de medio no contiene un bloque de formato (pbFormat es NULL), se usan los siguientes valores predeterminados:

  • dwOffset: 0
  • dwPacketLength: 188
  • dwStride: 188

Requisitos

Requisito Value
Encabezado
Bdatypes.h

Consulte también

Estructuras directShow

Tipos de medios MPEG-2