Konfigurowanie źródła multimediów
Jeśli używasz source resolver do utworzenia źródła multimediów, możesz określić magazyn właściwości, który zawiera właściwości konfiguracji. Te właściwości będą używane do inicjowania źródła multimediów. Zestaw obsługiwanych właściwości zależy od implementacji źródła multimediów. Nie każde źródło multimediów definiuje właściwości konfiguracji.
W poniższej tabeli wymieniono właściwości konfiguracji źródeł multimediów dostępnych w programie Media Foundation. Źródła multimedialne innych firm mogą definiować własne właściwości niestandardowe.
Źródło multimediów | Właściwości |
---|---|
Źródło sieci | Zobacz funkcje źródła sieci . |
Źródło multimediów ASF |
Aby skonfigurować źródło, wykonaj następujące kroki.
- Wywołaj PSCreateMemoryPropertyStore, aby utworzyć nowy magazyn właściwości. Ta funkcja zwraca wskaźnik IPropertyStore.
- Wywołaj IPropertyStore::SetValue, aby ustawić co najmniej jedną właściwość konfiguracji.
- Wywołaj jedną z funkcji tworzenia narzędzia rozpoznawania źródła, taką jak IMFSourceResolver::CreateObjectFromURL, i przekaż wskaźnik IPropertyStore wskaźnika w parametrze pProps.
// Creates a media source from a URL.
HRESULT CreateMediaSource(
PCWSTR pszURL,
IPropertyStore *pConfig, // Optional, can be NULL
IMFMediaSource **ppSource
)
{
IMFSourceResolver* pSourceResolver = NULL;
IUnknown* pSource = NULL;
// Create the source resolver.
HRESULT hr = MFCreateSourceResolver(&pSourceResolver);
// Use the source resolver to create the media source.
if (SUCCEEDED(hr))
{
MF_OBJECT_TYPE ObjectType;
DbgLog(L"CreateObjectFromURL");
hr = pSourceResolver->CreateObjectFromURL(
pszURL,
MF_RESOLUTION_MEDIASOURCE, // Create a media source.
pConfig, // Configuration properties.
&ObjectType, // Receives the object type.
&pSource
);
DbgLog(L"CreateObjectFromURL - FINISHED");
}
if (SUCCEEDED(hr))
{
hr = pSource->QueryInterface(IID_PPV_ARGS(ppSource));
}
SafeRelease(&pSourceResolver);
SafeRelease(&pSource);
return hr;
}
Procesor odnajdywania źródła przekazuje wskaźnik IPropertyStore bezpośrednio do obsługiwacza schematu lub obsługiwacza strumienia bajtów, który tworzy źródło. Program rozpoznawania źródła nie próbuje zweryfikować właściwości.
Ogólnie rzecz biorąc, te właściwości są używane do ustawień zaawansowanych. Jeśli nie udostępnisz magazynu właściwości, źródło multimediów powinno nadal działać poprawnie z ustawieniami domyślnymi.
Tematy pokrewne