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.
A partire da Windows 7, Microsoft Media Foundation espone i metadati tramite l'interfacciaIPropertyStore.
I metadati ottenuti usando il processo definito in questo argomento devono essere usati solo per l'accesso in sola lettura. La scrittura di dati con questo processo non è supportata. È possibile creare un oggetto IPropertyStore a scopo di scrittura usando un identificatore di classe (CLSID) ottenuto da PSLookupPropertyHandlerCLSID.
Lettura dei metadati
Per leggere i metadati da un'origine multimediale, seguire questa procedura:
- Ottenere un puntatore all'interfacciaIMFMediaSource dell'origine multimediale. È possibile usare l'interfacciaIMFSourceResolver per ottenere un puntatore IMFMediaSource.
- Chiamare MFGetService nell'origine multimediale per ottenere un puntatore all'interfaccia IPropertyStore. Nel parametro guidService di MFGetServicespecificare il valore MF_PROPERTY_HANDLER_SERVICE. Se l'origine non supporta l'interfaccia IPropertyStore, MFGetService restituisce MF_E_UNSUPPORTED_SERVICE.
- Chiamare metodi IPropertyStore per enumerare le proprietà dei metadati.
Il codice seguente illustra questi passaggi. Si supponga che DisplayProperty
sia una funzione che visualizza un valore PROPVARIANT.
HRESULT EnumerateMetadata(IMFMediaSource *pSource)
{
IPropertyStore *pProps = NULL;
HRESULT hr = MFGetService(
pSource, MF_PROPERTY_HANDLER_SERVICE, IID_PPV_ARGS(&pProps));
if (FAILED(hr))
{
goto done;
}
DWORD cProps;
hr = pProps->GetCount(&cProps);
if (FAILED(hr))
{
goto done;
}
for (DWORD i = 0; i < cProps; i++)
{
PROPERTYKEY key;
hr = pProps->GetAt(i, &key);
if (FAILED(hr))
{
goto done;
}
PROPVARIANT pv;
hr = pProps->GetValue(key, &pv);
if (FAILED(hr))
{
goto done;
}
DisplayProperty(key, pv);
PropVariantClear(&pv);
}
done:
SafeRelease(&pProps);
return hr;
}
Per un elenco delle chiavi delle proprietà dei metadati, vedere Proprietà dei metadati per File multimediali.
Argomenti correlati