代码之家  ›  专栏  ›  技术社区  ›  Jason

在WPF MediaElement中显示视频的字幕

  •  0
  • Jason  · 技术社区  · 15 年前

    我正在开发一个WPF应用程序,它将视频剪辑显示为工作流程的一部分。我使用MediaElement播放本地托管(非流式)的AVI文件。效果很好。

    然而,我刚刚收到一个新的要求,允许在播放剪辑时显示字幕。我不知道最好的办法。我模模糊糊地意识到WMP能够在播放剪辑时显示单独的字幕文件,但我不知道WPF是否支持这个功能?

    我的备用方法是要求客户端直接将字幕烘焙到视频文件中,但我更愿意找到更好的方法来处理这个问题。

    2 回复  |  直到 15 年前
        1
  •  2
  •   Charlie    15 年前

    如果您对字幕的要求只是将文本覆盖在MediaElement上,那么WPF当然可以支持这一点。您只需要将MediaElement与TextBlock一起放入网格中。

    真正的技巧是根据MediaElement中的时间更改TextBlock文本属性。但可能有很多方法可以做到这一点;首先想到的是使用绑定到 MediaElement.Position

        2
  •  0
  •   Alexander Zwitbaum    13 年前

    在WPF中,您需要解析字幕文件并进行同步,在Silverlight中没有类似MarkerReached的事件。但您可以创建一个与视频文件名相同的smi(SAMI文件),并将其放在同一文件夹中。然后订阅ScriptCommand事件并在覆盖文本块中显示内容。