It is not possible AFAIK. Microsoft specifications allow multiple processes to build a graph based on any particular tuner. It's only when you attempt to run the graph that it will fail if it is already in use (usually glitching or crashing the first process)
The entire architecture is completely f*cked in this respect

There is just no real concept of applications cooperatively sharing hardware resources in windows.
Why DirectShow can't simply fail with (E_IN_USE) on the second attempted instantiation of a filter based on hardware resources, is beyond me ???