Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Specifica le dimensioni del blocco usate per generare la mappa del parametro di quantizzazione dei metadati di output (QP) dal codificatore.
Tipo di dati
ULONG (VT_UI4)
GUID proprietà
CODECAPI_AVEncVideoOutputQPMapBlockSize
Il valore della proprietà
Dimensione del blocco. Il valore deve essere una potenza di 2, ad esempio 16 o 32. Se si imposta la dimensione del blocco su 0, la segnalazione delle dimensioni dei blocchi della mappa QP viene disabilitata. La segnalazione delle dimensioni dei blocchi di mapping QP è disabilitata per impostazione predefinita.
Osservazioni:
Dimensioni del blocco usate per generare la mappa QP dei metadati di output dal codificatore. Con le dimensioni del blocco, le applicazioni possono derivare le colonne e le righe della mappa QP dei metadati di output in base alla larghezza e all'altezza dei fotogrammi video divisi per le dimensioni del blocco. Ad esempio, se la dimensione del blocco è 16 e il fotogramma video ha le dimensioni di 1920x1080, la mappa QP ha 120 colonne e 68 righe. Se la larghezza/altezza del fotogramma video non è un multiplo esatto delle dimensioni del blocco, arrotondare la larghezza/altezza al multiplo successivo della dimensione del blocco. Ad esempio, se la dimensione del frame è 1916x1076 e la dimensione del blocco è 16, la dimensione del fotogramma arrotondata è 1920x1088.
Usare ICodecAPI::IsSupported per verificare se il codificatore supporta questa proprietà. Usare ICodecAPI::GetValue per eseguire una query sul valore di questa proprietà. Usare ICodecAPI::SetValue per configurare questa proprietà. I valori che non sono una potenza pari a 2 o 0, generano un valore restituito E_INVALIDARG da SetValue.
Esempi
Nell'esempio seguente viene illustrato come usare la proprietà CODECAPI_AVEncVideoOutputQPMapBlockSize per configurare un codificatore MFT per abilitare o disabilitare la funzionalità di creazione report mappa QP. Se il valore della dimensione del blocco è zero, è disabilitato. Se il valore della dimensione del blocco non è zero, è abilitato.
#include <codecapi.h>
#include <mfapi.h>
#include <wil.com.h>
#include <wil/result_macros.h>
// Inform an encoder MFT to enable or disable the QP map reporting feature.
// This function assumes that the encoder MFT supports ICodecAPI interface.
// It checks whether the new property CODECAPI_AVEncVideoOutputQPMapBlockSize is supported.
// If not supported, it returns E_NOTIMPL.
// If CODECAPI_AVEncVideoOutputQPMapBlockSize is supported and block size is none zero, it is enabled.
// Otherwise, it is disabled.
HRESULT ConfigureEncoderForQPMap(_In_ IMFTransform* encoder, uint32_t blockSize)
{
wil::com_ptr_nothrow<ICodecAPI> codecAPI;
RETURN_IF_FAILED(wil::com_query_to_nothrow(encoder, &codecAPI));
// Check if the encoder supports the property for QP map
if (!codecAPI->IsSupported(&CODECAPI_AVEncVideoOutputQPMapBlockSize))
{
return E_NOTIMPL;
}
// configure encoder
wil::unique_variant value;
value.vt = VT_UI4;
value.ulVal = blockSize; // zero: disable; non-zero: enable
return codecAPI->SetValue(&CODECAPI_AVEncVideoOutputQPMapBlockSize, &value);
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 11, build 26100 |
Server minimo supportato | Windows Server 2025 |
Intestazione | Codecapi.h |
Vedere anche
- Proprietà di Media Foundation
- ICodecAPI