I have implemented a custom media source (IMFMediaSource and IMFMediaStream) to feed packets for a IMFSourceReader created with MFCreateSourceReaderFromMediaSource.
I have followed the custom media source guide on MSDN and have set MFMEDIASOURCE_IS_LIVE, as well as starting timestamps at 0 and incrementing via RTP timestamp, in units of 100s of nanoseconds.
The source reader seems to be pulling for new samples OK, as it's calling my RequestSample method and I am queueing IMFSamples as needed.
However the problem so far is that my IMFSourceReaderCallback::OnReadSample is not getting called. I believe the callback is setup properly because I got an E_FAIL when I delivered packets in probably the wrong way. But now I get no errors. I am calling ReadSample asynchronously on the source reader just after I deliver my custom media source data.
It seems like MFTrace might help but I can't figure out how to use this on metro (by the way this is a metro/win8 app). If I try and run mftrace from the command line it says bad exe format.