Are you using the WMWriter to set up your HTTPd (which would
be implement MMS-over-HTTP) or just an HTTP listener (which
would implement plain HTTP)?
DirectShow is not included in the Platform/Windows SDK.
DirectShow is a pluggable framework, so you can add your own
components to it to achieve any goal you have, but it may be
hard. However, writing DS filters in C# is not easy and may
not be feasible performance-wise.
Since you wrote your P2P receiver to receive the data, you
could just re-package it as a DirectShow push source filter
and register you under a custom protocol, so that you would
be able to directly open a custom URL in WMP, without the
P2P-to-HTTP proxy or any ASF reader/parser problem.
Writing such a filter really takes little effort if you
write it in C++ and use the CSource base class in the SDK.
CSource and CSourceStream are well documented in the SDK
docs both off-line and on-line:
And the PushSource sample in SDK shows how they are used.
Of course, it is only easy in C++. In C#, you will have to
write the filter from scratch instead of just using the base
class and you will have to write a COM InterOp wrapper or
use LGS's DirectShowNet (on sf.net).
// Alessandro Angeli
// MVP :: DirectShow / MediaFoundation
// a dot angeli at psynet dot net