Compartir a través de


Método IAMVideoCompression::GetInfo (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.

El GetInfo método recupera información sobre las propiedades de compresión del filtro, incluidas las funcionalidades y los valores predeterminados.

Sintaxis

HRESULT GetInfo(
  [out]     LPWSTR pszVersion,
  [in, out] int    *pcbVersion,
  [out]     LPWSTR pszDescription,
  [in, out] int    *pcbDescription,
  [out]     long   *pDefaultKeyFrameRate,
  [out]     long   *pDefaultPFramesPerKey,
  [out]     double *pDefaultQuality,
  [out]     long   *pCapabilities
);

Parámetros

[out] pszVersion

Puntero a un búfer que recibe una cadena de versión, como "Versión 2.1.0".

[in, out] pcbVersion

Recibe el tamaño de la cadena de versión, en bytes.

[out] pszDescription

Puntero a un búfer que recibe una cadena de descripción, como "Mi compresor de vídeo".

[in, out] pcbDescription

Recibe el tamaño de la cadena de descripción, en bytes.

[out] pDefaultKeyFrameRate

Recibe la velocidad de fotogramas clave predeterminada.

[out] pDefaultPFramesPerKey

Recibe la velocidad predeterminada de fotogramas predichos (P) por fotograma clave.

[out] pDefaultQuality

Recibe la calidad predeterminada.

[out] pCapabilities

Recibe las funcionalidades de compresión, como una combinación bit a bit de cero o más marcas CompressionCaps .

Valor devuelto

Devuelve un valor HRESULT .

Comentarios

Cualquiera de los parámetros enumerados puede ser NULL, en cuyo caso el método omite ese parámetro.

La aplicación debe asignar los búferes para las cadenas de versión y descripción. Para determinar el tamaño necesario de los búferes, llame a este método con NULL para los parámetros pszVersion y pszDescription . Use los valores devueltos en pcbVersion y pcbDescription para asignar los búferes y, a continuación, llame al método de nuevo, como se muestra en el código siguiente:

C++
// Get the size of the version and description strings, in bytes.
int cbVersion, cbDesc; 
hr = pCompress->GetInfo(NULL, &cbVersion, NULL, &cbDesc, 
    NULL, NULL, NULL, NULL);
if (SUCCEEDED(hr))
{
    // Allocate the buffers.
    WCHAR *pszVersion = new WCHAR[cbVersion / sizeof(WCHAR)];  
    WCHAR *pszDesc = new WCHAR[cbDesc / sizeof(WCHAR)];

    // Now query for the strings.
    hr = pCompress->GetInfo(pszVersion, &cbVersion, pszDesc, &cbDesc, 
        NULL, NULL, NULL, NULL);
    }
    delete [] pszVersion;
    delete [] pszDesc;
}
Tenga en cuenta que las cadenas son cadenas de caracteres anchos y los tamaños devueltos están en bytes, no el número de caracteres. Además, una o ambas cadenas pueden tener una longitud cero.

El parámetro pCapabilities recibe un conjunto de marcas que indican qué propiedades de compresión se admiten y, por tanto, qué métodos IAMVideoCompression son compatibles. Por ejemplo, si se devuelve la marca CompressionCaps_CanKeyFrame , el filtro admite los métodos IAMVideoCompression::get_KeyFrameRate e IAMVideoCompression::p ut_KeyFrameRate .

Los parámetros restantes reciben valores predeterminados para las propiedades de compresión. En el caso de las propiedades no admitidas (según lo determinado por las marcas devueltas en pCapabilities), debe omitir el valor predeterminado correspondiente, ya que puede que no sea correcto o significativo.

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 (incluye Dshow.h)
Library Strmiids.lib

Consulte también

Códigos de error y éxito

IAMVideoCompression (Interfaz)