Click here to Skip to main content
15,886,199 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Am creating the video player application using directshow and i need to make some changes in the filter property through my application. I know how to display the property page from my application. Using this link [http://msdn.microsoft.com/en-us/library/windows/desktop/dd375480(v=vs.85).aspx[^]] i displayed it when the button contol was pressed. But i don't want to display the property page to the end user. By getting the value from the user, the particular field of the property page has to change without displaying the property dialog box. What i need to do!?

Thanking you,
Posted
Updated 26-Mar-13 0:48am
v3

1 solution

I already anwering you abt that you should know filter interface which used to control it properties. After query that interface froom your filter object and use it methods to modify filter settings.
C++
IBaseFilter * _filter; // initialized by CoCreateInstance
IFilterControl * _interface;
// Query filter interface
if (S_OK == _filter->QueryInterface(__uuidof(IFilterControl),(void**)&_interface))
{
// Call inerface methods to setup the filter
_interface->SomeMethod("some arg");
_interface->Release(); // release instance
}

So the question to you - do you know the interface guid and it methods declarations in case if it's 3rd party filter?
In case if you are using your own filter then just decalre you own interface add methods and configure your filter.

In case if you not knowing the vendor interface you can do it bit tricky:
1. If the filter supports IPersistStream inerface - you can configure filter and call Save method which will do saving all properties to that stream and during initialization you can call Load with settings from your presets.
2. Another method is to embed OLE property frame in your dialog but hiddenly and manually operate with UI via SendMessage to configre settings and then do "Apply"
3. In case of filter consist of debug information or even debug database inside you can disassemble it and see the interface informaion - but this may not be legal and you should check the license of the filter.

Regards,
Maxim.
 
Share this answer
 
Comments
J.Surjith Kumar 25-Mar-13 4:58am    
I know the interface guid and am using FFDShowVideoDecoder filter in this i need to edit the crop field values.
J.Surjith Kumar 25-Mar-13 5:00am    
I don't know whether any specific interface was there to configure the ffdshow filter properties.
Maxim Kartavenkov 25-Mar-13 5:06am    
You can download FFDShow sources and see the all methods
J.Surjith Kumar 25-Mar-13 5:06am    
This is that property image link "http://ffdshow-tryout.sourceforge.net/wiki/_detail/devel:remote_api.png?id=devel%3Acontrolling" in that i need to select and edit the crop field from my application itself.
Maxim Kartavenkov 25-Mar-13 5:11am    
So you even have a wiki.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900