M Lafferty
2010-03-10 14:21:01 UTC
I am using IWMSyncReader to access a wmv file. The file is indexed.
When I use IWMSyncReader::SetRangeByFrame the method fails if the FrameNo is
within 11 frames of the end of the file.
The file is 662 frames long
SetRangeByFrame(650, 0) works OK
SetRangeByFrame(651, 0) fails, with result 0xC00D002B.
This is a problem, as my application regularly needs to seek to the end of
the file. I could seek to the last possible frame, then GetNextFrame to where
I want to be, but this is very inefficient and I have no way of knowing the
position of the last seekable frame.
Does anyone have any advice?
regards
ML
When I use IWMSyncReader::SetRangeByFrame the method fails if the FrameNo is
within 11 frames of the end of the file.
The file is 662 frames long
SetRangeByFrame(650, 0) works OK
SetRangeByFrame(651, 0) fails, with result 0xC00D002B.
This is a problem, as my application regularly needs to seek to the end of
the file. I could seek to the last possible frame, then GetNextFrame to where
I want to be, but this is very inefficient and I have no way of knowing the
position of the last seekable frame.
Does anyone have any advice?
regards
ML