在特定时间打开视频

Open a video at a particular time

在我的程序中,可以使某些文件在文件类型默认的任何程序中从外部打开。我这样做:

Process p = new Process();
p.StartInfo.FileName = "path of file I want to open";

//open the file:
p.Start();

对于视频文件,我想打开视频(在 Windows Media Player 中,- 我的问题特定于 WMV 文件),然后跳转到视频中的特定时间。

这可以吗?我知道 Windows 媒体播放器可以嵌入,但我希望尽可能避免这种情况,因为它需要包含一些 DLL。

这取决于您是否可以使用加载的任何程序的命令行参数实际跳转到特定时间 and/or 帧。在这种情况下,Windows 媒体播放器。

看看https://msdn.microsoft.com/en-us/library/h6ak8zt5(v=vs.110).aspx

也许可以简单地做一些像这样的事情:

Process.Start(PathToFile, ArgumentsThatIncludeExactTimeOrFrameIndex);

虽然我不确定如果 PathToFile 不是可执行文件而只是触发关联的文件,参数是否不会被简单地转储;正如你一直在做的那样。

如果你必须使用 Windows 媒体播放器,答案是否定的,没有这样的命令行参数,你可以找到完整的 WMP 参数列表 here

如果你可以使用 VLC,它有一个 --start-time parameter