#include "ltmf.h"
C Syntax |
HRESULT IltmfPlay_SetPreferredMediaSourceHandler(pPlay, MediaSourceHandlerType, Val) |
C++ Syntax |
HRESULT SetPreferredMediaSourceHandler(MediaSourceHandlerType, Val) |
IltmfPlay *pPlay; |
pointer to an interface |
long MediaSourceHandlerType |
value to a media source handler type |
BSTR Val; |
string |
Sets a preferred media source handler's GUID.
Parameter |
Description |
pPlay |
Pointer to an IltmfPlay interface. |
MediaSourceHandlerType |
Value that indicates the desired media source handler type. For a list of possible values, refer to ltmfPlay_PreferredMediaSourceHandler Constants. |
Val |
String that has the following possible values:
For a list of possible values, refer to ltmfMediaSourceHandler Constants. |
S_OK |
The function was successful. |
<> S_OK |
An error occurred. Refer to the Error Codes or the HRESULT error codes in the MediaFoundation documentation. |
By default, the toolkit creates media sources according to the default Media Foundation mechanism, and thats by using a Source Resolver which is standard way to create media sources. However, sometimes 3rd party media sources get installed on some computers and assigns their media source handler to a specific media type and are used instead of the media sources you shipped with your application. And unexpected problems can occur if these media sources are not working properly. The SetPreferredMediaSourceHandler method allows you to control which media sources are used in your application. You can decide to use a certain media source handler or you can choose to use only the LEAD ones.
Val is a string for the GUID of the media source handler. This GUID uniquely identifies the media source handler. Every media format has a registered media source handler(s) who are responsible of creating a media source for this media type.
For example, the GUID for the LEAD MPEG2 Transport Media Source Handler is:
EFE626C3-0A2C-49FA-8A01-3768B559B6DA
If the MediaSourceHandlerType argument is equal to ltmfConvert_PreferredMediaSourceHandler_Generic, then the possible values for Val are: ltmfMediaSourceHandler_LEADDefault or ltmfMediaSourceHandler_DontCare.
If ltmfMediaSourceHandler_LEADDefault is specified, then the LEAD default media source handlers will be set for ALL of the values listed in ltmfPlay_PreferredMediaSourceHandler.
If ltmfMediaSourceHandler_DontCare is specified, then the internal list of the preferred media source handlers will be cleared and the media source will be created using the Media Foundation's default mechanism (Source Resolver).
Use the ltmfMediaSourceHandler_XXX constants whenever possible. See ltmfMediaSourceHandler Constants for a list of predefined values.
Required DLLs and Libraries
LTMF For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64
Elements: |
|
Topics: |
For a C++ example, refer to IltmfPlay::SetPreferredMediaSourceHandler Example for C++.
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.