共用方式為


IAMVideoCompression::GetInfo 方法 (strmif.h)

[與此頁面相關的功能 DirectShow 是舊版功能。 它已被 MediaPlayerIMFMediaEngineMedia Foundation 中的音訊/視訊擷取取代。 這些功能已針對 Windows 10 和 Windows 11 進行優化。 Microsoft 強烈建議新程式代碼盡可能使用 MediaPlayerIMFMediaEngine音訊/視訊擷取 ,而不是 DirectShow。 Microsoft 建議使用舊版 API 的現有程式代碼盡可能重寫為使用新的 API。

方法 GetInfo 會擷取篩選條件壓縮屬性的相關信息,包括功能和預設值。

語法

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
);

參數

[out] pszVersion

接收版本字串的緩衝區指標,例如 “Version 2.1.0”。

[in, out] pcbVersion

接收版本字串的大小,以位元組為單位。

[out] pszDescription

接收描述字串的緩衝區指標,例如「我的影片壓縮器」。

[in, out] pcbDescription

接收描述字串的大小,以位元組為單位。

[out] pDefaultKeyFrameRate

接收預設的主要畫面格速率。

[out] pDefaultPFramesPerKey

接收每個主要畫面格的預測 (P) 畫面的預設速率。

[out] pDefaultQuality

接收預設品質。

[out] pCapabilities

接收壓縮功能,做為零個或多個 CompressionCaps 旗標的位元組合。

傳回值

傳回 HRESULT 值。

備註

任何列出的參數可以是 NULL,在此情況下,方法會忽略該參數。

應用程式必須配置版本和描述字串的緩衝區。 若要判斷緩衝區的必要大小,請使用 pszVersionpszDescription 參數的 NULL 呼叫此方法。 使用 在 HTTPVersion以下命令 傳回的值來配置緩衝區,然後再次呼叫 方法,如下列程式代碼所示:

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;
}
請注意,字串是寬字元字串,而傳回的大小以位元組為單位,而不是字元數。 此外,一或兩個字串可能都是零長度。

pCapabilities 參數會收到一組旗標,指出支援哪些壓縮屬性,因此支援哪些 IAMVideoCompression 方法。 例如,如果傳回 CompressionCaps_CanKeyFrame 旗標,篩選條件支援 IAMVideoCompression::get_KeyFrameRateIAMVideoCompression::p ut_KeyFrameRate 方法。

其餘參數會接收壓縮屬性的預設值。 對於不支援的屬性 (由 pCapabilities) 傳回的旗標所決定,您應該忽略對應的預設值,因為它可能不正確或有意義。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 strmif.h (包含 Dshow.h)
程式庫 Strmiids.lib

另請參閱

錯誤和成功碼

IAMVideoCompression 介面