我正在制作一种卡拉OK应用程序,我需要将带时间戳的文本数据与音频数据联系起来。我有2个列表来指示音频时间跨度和文本字符串索引的开始和结束。我面临的问题是我不知道如何根据当前highlighted text
属性更新media element's POSITION
。
WP7没有标记到达事件( which silverlight has )。所以我考虑使用 DispatcherTimer。这个问题是我想要的ticks
是非均匀的,如果我每次更新interval
属性,计时器的准确性将大大降低,因为媒体元素的位置和计时器的tick很容易失去同步。
知道如何创建类似于Media元素的MarkerReached
事件的事件吗?
谢谢你 - 埃贡
答案 0 :(得分:1)
我认为您有某种形式的数据结构可以告诉您标记在音频流中的位置,那么为什么不使用具有固定间隔的DispatcherTimer
(比如说500毫秒)并简单地检查这个数据结构,看看你是否到达了标记?