Proxy Support for Network Sources
A proxy server is an intermediate server between your intranet and the Internet, which routes requests from the client application to the media server and retrieves files from the media server.
Media Foundation implicitly creates a proxy locator object when a client application tries to access a source URL. The proxy locator object exposes the IMFNetProxyLocator interface. During source resolution, Media Foundation checks the property store passed to the source resolver method.
If the property store contains the MFNETSOURCE_PROXYLOCATORFACTORY property set to a proxy locator factory object implemented by the application then, it invokes the IMFNetProxyLocatorFactory::CreateProxyLocator method to create a proxy locator with custom configuration settings.
If the property store is not set, then Media Foundation creates the proxy locator with default configuration. These settings are as follows:
If user policy is set, then the proxy locator uses settings specified in the registry.
For HTTP, the proxy locator uses browser proxy settings.
For RTSP, the proxy locator is configured to bypass proxy servers when connecting to the media server.
This default configuration can be changed by the application. The following topics contain information about the configuration settings for a proxy locator:
Media Foundation initializes the proxy locator for the source URL specified to the Source Resolver. The proxy locator detects a proxy server to use based on configuration settings. When the proxy locator attempts the set a proxy server, it records the success or failure result in the registry. This value is checked during the next proxy detection process. If a certain proxy server is known to have caused failures in the past, the proxy locator skips it.