LTMM DirectShow Filter List Utility

The "LTMM DirectShow Filter List Utility" is an application that allows the user to enumerate all of the registered DirectShow filters and copy filter information to the clipboard. This is especially useful for copying the filter "Display Name" to your application and changing the filter's Merit field. This allows the user to directly assign a compressor, device, or processor to an object. For instance, to assign the "LEAD Video Emboss Filter" to the convert object proceed as follows:

  1. Run the "LTMM DirectShow Filter List Utility"

  2. Select the "LEAD Video Emboss Filter"

    LTMM DirectShow Filter List Utility
  3. Click the Copy button to the right of the "Display Name" field.

  4. Paste the "Display Name" into your code:
    LPCWSTR pszEmboss = L"@device:sw:{E526D606-22E7-494C-B81E-AC0A94BFE603}{E2B7DB17-38C5-11D5-91F6-00104BDB8FF9}";

  5. Add the emboss processor to the convert object:

    C API
    IltmmConvert* pConvert; // initialized elsewhere   
    IltmmProcessors* pProcessors; // registered processor collection   
    IltmmProcessors* pSelProcessors; // selected processor collection   
    long index;   
    BSTR bstr;   
    // get the registered processors collection   
    IltmmConvert_get_VideoProcessors get_VideoProcessors(pConvert, &pProcessors);   
    // find the processor index by name   
    bstr = SysAllocString(pszEmboss);   
    IltmmProcessors_Find Find(pProcessors, bstr, &index);   
    SysFreeString(bstr);   
    // get the processor interface   
    IltmmProcessors_Item Item(pProcessors, index, &pProcessor);   
    // get the selected processors collection   
    IltmmConvert_get_SelectedVideoProcessors get_SelectedVideoProcessors (pConvert, &pSelProcessors);   
    // add the processor to the selected processors collection   
    IltmmProcessors_Add Add(pSelProcessors, pProcessor, -1);   
    // release interfaces   
    IUnknown_Release(pProcessor);   
    IUnknown_Release(pSelProcessors);   
    IUnknown_Release(pProcessors); 
    C++
    IltmmConvert* pConvert; // initialized elsewhere   
    IltmmProcessors* pProcessors; // registered processor collection   
    IltmmProcessors* pSelProcessors; // selected processor collection   
    long index;   
    BSTR bstr;   
    // get the registered processors collection   
    pConvert->get_VideoProcessors (&pProcessors);   
    // find the processor index by name   
    bstr = SysAllocString(pszEmboss);   
    pProcessors->Find (bstr, &index);   
    SysFreeString(bstr);   
    // get the processor interface   
    pProcessors->Item (index, &pProcessor);   
    // get the selected processors collection   
    pConvert->get_SelectedVideoProcessors (&pSelProcessors);   
    // add the processor to the selected processors collection   
    pSelProcessors->Add(pProcessor, -1);   
    // release interfaces   
    pProcessor->Release();   
    pSelProcessors->Release();   
    pProcessors->Release(); 

Help Version 22.0.2023.1.26
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Multimedia C API Help
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.