Konfigurace zdroje médií
Při použití Source Resolver k vytvoření zdroje médií, můžete zadat úložiště vlastností, které obsahuje vlastnosti konfigurace. Tyto vlastnosti se použijí k inicializaci zdroje médií. Sada podporovaných vlastností závisí na implementaci zdroje médií. Ne každý zdroj médií definuje vlastnosti konfigurace.
V následující tabulce jsou uvedeny vlastnosti konfigurace pro zdroje médií, které jsou k dispozici ve službě Media Foundation. Zdroje médií třetích stran mohou definovat vlastní vlastnosti.
Zdroj médií | Vlastnosti |
---|---|
Zdroj sítě | Viz funkce zdroje sítě. |
Zdroj médií ASF |
Pokud chcete zdroj nakonfigurovat, proveďte následující kroky.
- Zavolejte PSCreateMemoryPropertyStore, abyste vytvořili nové úložiště vlastností. Tato funkce vrátí ukazatel IPropertyStore.
- Pro zavolání IPropertyStore::SetValue pro nastavení jedné nebo více konfiguračních vlastností.
- Zavolejte jednu z funkcí pro vytváření resolveru zdroje, například IMFSourceResolver::CreateObjectFromURL, a předejte ukazatel IPropertyStore do parametru 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;
}
Zdrojový resolver předá ukazatel IPropertyStore přímo obslužné rutině schématu nebo obslužné rutině bajtového proudu, která vytvoří zdroj. Zdrojový překladač se nepokouší ověřit vlastnosti.
Obecně platí, že tyto vlastnosti se používají pro upřesňující nastavení. Pokud nezadáte úložiště vlastností, měl by zdroj médií stále fungovat správně s výchozím nastavením.
Související témata