2

I working on a distributed mediaplayer that uses the windows media player component. Now the customer asks me if its possible to have their logo overlayed on the media played instead of them having to render every movie with the logotype.

I have google it and it seems like I can use a directshow filter to do this, but I havent found any good information on how to do it yet.

If anyone here know If I can do this programatically, with a plugin, filter or some other way it would be nice to know. Its fine if its a plugin that costs money too.

What I want is to be able to use a jpg/png as watermark/overlay to the running movie in Windows Media Player 11

4

1 回答 1

2

It is possible to do this by forcing your own custom DirectShow filter into WMP's filter graph. This involves setting the filter's merit to be very high so that DirectShow's automatic graph building will insert your filter in the WMP chain. However, I would not recommend this approach because a) it's possible that the filter will not always get inserted with certain filter graph chains and b) it will also be added to the filter graphs of any other installed third party DirectShow apps. This second issue is likely to be a major problem.

It should be possible to create a WMP DSP plugin to do this. These are implemented as DirectX Media Objects (DMOs), which are similar to, but simpler than, DirectShow filters. This approach may well be your best bet.

A final approach would be to rewrite the entire media playback portion of your app in DirectShow instead of using the WMP control. This would take a lot more effort but if you plan to do a lot of custom media stream processing either now or in the future then it may be a good option to take.

于 2009-01-14T14:07:27.113 回答