- Thread starter
- #31
A thought - TsReader uses calls to IMediaSeeking::GetCurrentPosition() - http://msdn.microsoft.com/en-gb/library/windows/desktop/dd407028(v=vs.85).aspx - to keep track of the relationship of sample timestamps to playback position (for various reasons).
I wonder if this method takes into account the heavy clock pulling which is happening here (bias = 0.96) - if it doesn't, it might explain why TsReader might be having problems - although the clock is running slow, so it shouldn't be running out of data - doesn't make much sense at the moment.....
It is the stream time - only place where you can get is is to query reference clock (and keep the pause & seek calcs in correct state). I see no reason why it would cause any issues if the reference clock runs non 1.0x speed - after all the DS has no other sources of the time than MPAR.
The Filter Graph Manager calculates the position from the current stream time; it does not query the filters in the graph. For file playback, this yields an accurate result, because playback is synchronized to the stream time. For file writing, the results are not accurate. To get the current position in a file-writing graph, query the multiplexer filter. (Position is not relevant for live capture, however.)