Fast forwarding
-
lunedì 13 febbraio 2012 14:06
Using ImediaPosition::set_rate()
the max rate supported seems to be only 2.0. I believe this is due to a limitation in the audio renderer. A video without audio, set_rate doesn't seem to work at all. I was thinking of disconnecting the audio renderer whilst the graph was running (dynamic reconnection) to remove the 2.0 limitation but I am not even sure this would work, as the clock is connected to the audio renderer.
How can we set a rate faster than 2.0 ?
The dvd navigator seems to do it somehow. You can get 16x fast forward speeds using
IDvdControl2::PlayForwards()
Tutte le risposte
-
sabato 18 febbraio 2012 17:50
There are 2 ways to fast forward: increase the rate or cheat with the timestamps and delivered frames in the splitter. I believe the DVD navigator uses the second trick, which however is fornat- and filter-specific.
Since the limitation is indeed in the audio renderer, disconnecting it works. Hooking its SetRate() method to fake an S_OK return works, too, but it's a hack.
<http://www.riseoftheants.com/mmx/faq.htm>
- Proposto come risposta Alessandro Angeli venerdì 1 giugno 2012 22:11
-
domenica 19 febbraio 2012 23:41Thanks for the reply, messing with the time stamps is not an option. Is there any documention or blogs or anything on the hooking set rate and disconnecting the audio renderer ? There must be a better solution somehow. If i disconnect the audio renderer, what happens to the clock ?
- Modificato dukeeeey domenica 19 febbraio 2012 23:59
-
giovedì 1 marzo 2012 22:29
I haven't investigated what happens to the clock, but it seems to work, so I assume either the renderer or the graph falls back to the system clock.
I have written several posts about API hooking (just search Google Groups) and I have some info in FAQ.
<http://www.riseoftheants.com/mmx/faq.htm>

