Compartir a través de


Método IMFDeviceTransform::GetStreamIDs (mftransform.h)

El método GetStreamIDs obtiene los identificadores de flujo de las secuencias de entrada y salida en esta transformación de Media Foundation (MFT).

Sintaxis

HRESULT GetStreamIDs(
  [in]  DWORD dwInputIDArraySize,
  [out] DWORD *pdwInputStreamIds,
  [out] DWORD dwOutputIDArraySize,
        DWORD *pdwOutputStreamIds
);

Parámetros

[in] dwInputIDArraySize

Número de elementos en pdwInputStreamIDs

[out] pdwInputStreamIds

Puntero a una matriz asignada por el autor de la llamada. El método rellena la matriz con los identificadores de flujo de entrada. El tamaño de la matriz debe ser al menos igual al número de flujos de entrada. Para obtener el número de flujos de entrada, llame a IMFDeviceTransform::GetStreamCount.

Si el autor de la llamada pasa una matriz que es mayor que el número de flujos de entrada, MFT no debe escribir valores en las entradas de matriz adicionales.

[out] dwOutputIDArraySize

Número de elementos de pdwOutputStreamID.

pdwOutputStreamIds

Puntero a una matriz asignada por el autor de la llamada. El método rellena la matriz con los identificadores del flujo de salida. El tamaño de la matriz debe ser al menos igual al número de flujos de salida. Para obtener el número de flujos de salida, llame a IMFDeviceTransform::GetStreamCount.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen, entre otros, los valores especificados en la tabla siguiente.

Código devuelto Descripción
S_OK
La transición del estado de la secuencia se realizó correctamente.
E_POINTER
Puntero no válido pasado.
MF_E_BUFFERTOOSMALL
El búfer que entra no tiene suficiente espacio para rellenar los identificadores de secuencia.

Comentarios

Los identificadores de flujo son necesarios porque algunas MFP pueden agregar o quitar secuencias, por lo que es posible que el índice de una secuencia no sea único. Por lo tanto, los métodos IMFDeviceTransform que operan en secuencias toman identificadores de flujo.

Todos los identificadores de flujo de entrada deben ser únicos dentro de un MFT y todos los identificadores de flujo de salida deben ser únicos. Sin embargo, un flujo de entrada y un flujo de salida pueden compartir el mismo identificador. I

Si el cliente agrega un flujo de entrada, el cliente asigna el identificador, por lo que MFT debe permitir identificadores arbitrarios, siempre y cuando sean únicos. Si el MFT crea un flujo de salida, MFT asigna el identificador.

Por convención, si un MFT tiene exactamente un flujo de entrada fijo y un flujo de salida fijo, debe asignar el identificador 0 a ambos flujos.

Requisitos

   
Cliente mínimo compatible Windows 10, versión 1703
Plataforma de destino Windows
Encabezado mftransform.h

Consulte también

IMFDeviceTransform