none
silverlight for windows phone seek会花屏或视音频不同步 RRS feed

  • 问题

  • 很着急呀,实在不知道为什么,silverlight到底是怎样的seek机制,我现在就是seek时,挂起GetSampleAsync的请求,seek完毕后再执行GetSampleAsync的请求,请了解的同学指导一下,非常感谢
    2013年10月10日 1:07

答案

  • hi, 

    同步


    MediaElement  一次性只调用一个 MediaStreamSource方法。  因此,SeekAsync 请求不会在同一时间到达 GetSampleAsync 请求,也不会同时达到两个 GetSampleAsync 请求。 然而,仍然存在开发人员必须考虑的一些情况 MediaStreamSource:

    查找 

    在桌面 Silverlight 中,在已完成所有优秀示例请求前,将不会传递 SeekAsync。  一个解决方案是第二次报告前面的示例。


    在 Silverlight for Windows Phone 中,当优秀示例请求被挂起时,SeekAsync 请求将被传递。  不过,当该示例完成时,Silverlight for Windows Phone 会错误地将其扔掉。 如果该示例是一个密钥帧,它可能需要第二次报告示例。


    缓冲转换 

    在 Silverlight for Windows Phone 中,调用ReportGetSampleProgress 不会阻止随后 GetSampleAsync 到达的调用。  缓冲是媒体状态,不是流状态。 调用任何流的 ReportGetSampleCompleted 将导致 MediaElement 退出缓冲。 因此,在对所有流完成缓冲前 MediaStreamSource 不应填写任何流的示例。

    http://msdn.microsoft.com/zh-cn/library/hh180779(v=vs.95).aspx


    2013年10月10日 8:05