I've written a network stream reader by deriving from the UMC::DataReader class. It's taken me a long time but I finally have it working correctly and I can now receive and display MPEG-4 traffic from IP cameras.
The only remaining problem is that the when I call splitter.Init(pNetworkReader) in my code, the splitter takes 5-10 seconds to initialise. Could someone tell me why this is and how I can resolve it? (If I capture traffic from an IP camera and save it to file, and then replay it using UMC::FIOReader I see no such delay.)