DMO seems to be used for replacing DirectShow transform filter. Some documents say there could be a DMO without input streams. But how is it supposed to work? If there is no input stream, in function IMediaObject::CheckInputType
what should be written?
Asked
Active
Viewed 206 times
0

Roman R.
- 68,205
- 6
- 94
- 158

user2298655
- 5
- 3
1 Answers
0
You can implement an inputless DMO, e.g. let's suppose the DMO generates output internally. Noone will call CheckInputType
because no inputs exist, this is fine (your CheckInputType
body will be empty and e.g. returning E_NOTIMPL
).
However you should rather step back and explain what it is for. No, DMOs are not a replacement for DirectShow filters. DMOs can be mapped into DirectShow filter space, through DMO Wrapper Filter, however the latter does not support DMOs with no inputs so your DMO is going to be useless for DirectShow pipeline.
To create a custom DirectShow source, you need to implement full filter.

Roman R.
- 68,205
- 6
- 94
- 158
-
THANS Roman R. for your kindness to answer my question.I worte a directshow source filter as a virtual camera used in flashplayer.It work well in many flashplayer versions,but in one version in borwser firefox. So i want to see if In firefox it uses DMO instead of directshow source filter. – user2298655 Apr 21 '13 at 17:50
-
It's unlikely that DMOs are even involved there. With Adobe Flash, the probable thing player - as a host of DirectShow pipeline - is making some unexpected assumptions as for camera implementation, and it does not like your virtual camera. This might be a missing interface, failure to comply to specific use case etc. They tune it for real cameras, and virtual devices are left on their own. – Roman R. Apr 21 '13 at 22:13
-
OK,I will try to find if there is a mistake somewhere else.And, if use a DMO whithout input-streams, what DMOCATEGORY(the dmo_category in dmoreg.h seems all be for one-input-one-output DMOs such as video decoder, video effecter..) should be written when register the DMO? – user2298655 Apr 22 '13 at 02:59
-
It does not matter. Your zero input DMO is valid and can be registered on any video category which makes sense. But it's incompatible with DMO Wrapper, so your DMO will remain invisible for DirectShow. – Roman R. Apr 22 '13 at 09:57