Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>The key to speeding up or slowing down a video is to convince multimedia players that your computer is slower or faster than it really is. This can be accomplished hooking timeGetTime().</p> <p>This is an extremely easy C# code to accomplish it:</p> <pre><code>using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using Nektra.Deviare2; namespace DeviareTest { public partial class Form1 : Form { private int nSpeed; private uint nTime; private NktSpyMgr _spyMgr; public Form1() { InitializeComponent(); _spyMgr = new NktSpyMgr(); _spyMgr.Initialize(); _spyMgr.OnFunctionCalled += new DNktSpyMgrEvents_OnFunctionCalledEventHandler(OnFunctionCalled); } private void Form1_Load(object sender, EventArgs e) { NktHook hook = _spyMgr.CreateHook("WINMM.dll!timeGetTime", (int)(eNktHookFlags.flgOnlyPostCall)); hook.Hook(true); bool bProcessFound = false; NktProcessesEnum enumProcess = _spyMgr.Processes(); NktProcess tempProcess = enumProcess.First(); while (tempProcess != null) { if (tempProcess.Name.Equals("iexplore.exe", StringComparison.InvariantCultureIgnoreCase) &amp;&amp; tempProcess.PlatformBits == 32) { hook.Attach(tempProcess, true); bProcessFound = true; } tempProcess = enumProcess.Next(); } if(!bProcessFound) { MessageBox.Show("Please run \"iexplore.exe\" before!", "Error"); Environment.Exit(0); } } private void OnFunctionCalled(NktHook hook, NktProcess process, NktHookCallInfo hookCallInfo) { nTime++; if (nSpeed==-2) hookCallInfo.Result().LongVal = hookCallInfo.Result().LongVal - (int)(nTime * 0.2); else if(nSpeed==2) hookCallInfo.Result().LongVal = hookCallInfo.Result().LongVal + (int)(nTime * 3); } private void SlowButton_CheckedChanged(object sender, EventArgs e) { nSpeed = -2; } private void FastButton_CheckedChanged(object sender, EventArgs e) { nSpeed = 2; } } } </code></pre> <p>I just published an article with a code example showing how to do this with the Deviare hooking engine. The sample code only works with the video part (not audio) and it is available <a href="http://blog.nektra.com/main/2012/06/13/controlling-the-speed-of-youtube-flash-html5-and-desktop-videos-with-deviare-hooks/" rel="nofollow">here</a>.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload