Hello, @AL NAJJAR
This works. but there is always a small pause in the video before the speed is changed.
When you calls IMediaSeeking::SetRate method on the Filter Graph Manager, the Filter Graph Manager does the following:
- Calls the IMediaSeeking::GetCurrentPosition method. This call returns the current position as calculated by the Filter Graph Manager.
- Stops the filter graph (if the graph is paused or running). => Here will be a small pause
- Calls the IMediaSeeking::SetPositions method on the filters, with the current position as the start time. This has the effect of resetting the stream time to zero.
- Calls the SetRate method on the filters, with the new rate.
- Resumes the filter graph, if it was paused or running.
For more details, please refer : IMediaSeeking::SetRate method
Is there a way of doing this while the video is playing and without interruption?
I have no experience with this, but I found this link might help you.
Thank you!
----------
If the answer is helpful, please click "Accept Answer" and upvote it.
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.