我在Silverlight程序集中嵌入了一个15 MB的Silverlight视频文件。我使用Application.GetResourceStream
将资源作为流读取,然后将返回的流传递给MediaElement控件以开始播放。
问题:Application.GetResourceStream
是否一次读取整个嵌入式文件?如果是,是否有任何解决方案可以防止这种行为?
注意:我正在构建一个OOB silverlight应用程序,它将使用离线媒体(CD ROM)发布,所以不要担心放大的xap文件。
提前致谢。
答案 0 :(得分:1)
线索的名称是Stream。这意味着它打开一个文件并按顺序从中读取(如流动的流)。
由于视频播放器的性质,它会动态解压缩流,它会在播放开始前在内部缓冲一定量。这允许播放保持在输入数据之前。对于本地存储的文件,只有少量数据。
为什么你担心它会读取整个文件?您是否遇到性能问题或长时间延迟?