none
请高手解答 MediaElement 到底支不支持 source=new uri(ftp://) 这种写法 请看我的测试 RRS feed

  • 问题

  • wpf mediaelement控件, 直接播放ftp 中的文件问题 
      
      我自已搭建一个ftp服务器,,里边放了媒体文件 
      
    测试1 在win7系统下 mediaElement1.Source = new Uri("ftp://192.168.100.1/1.wmv", UriKind.Absolute);
     
      mediaElement1 不报任何错误,但不能播放文件 直接用ftp://192.168.100.1/1.wmv这个地址在 MediaPlay上播,完全可以播放

      请问为什么


    测试2 在win server 2003 系统 , 装的是 medioplay10 .netframework4 
      仍然跑这个程序 mediaElement1.Source = new Uri("ftp://192.168.100.1/1.wmv", UriKind.Absolute); 居然可以播放文件

      请问这到底是为什么,,, mediaElement 到底是支不支持ftp 文件啊, 
      因为我找遍google 居然有人说根本 mediaElement 就不支持 ftp (http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/3b42d035-4ed9-4ebb-9fc2-4b3758bd20c5/)

      可是我的第2个测试居然是成功的,,又怎么解释呢 ?  

     请高高手指点 .......................................................因为确定mediaelement是否支持ftp直接影响到我 的项目解决方案
    2011年6月12日 2:27

答案

  • 别急,你先看下WPF 关于Pack URI的详细说明:http://msdn.microsoft.com/zh-cn/library/aa970069.aspx WPF使用了一种完全不同的URI方案. 而ftp前缀是默认的URI方案中的,对于Uri本身来说,是兼容的,并且支持的。但并不被MediaElement支持.

    不过,我和你一样测试了FTP环境下的MediaElement,不管在 Windows 7还是Windows Server ,不管用 Domain Name作为地址还是IP作为地址,都无法播放。

    我猜测应该和你的Windows Server解析这个地址有关。还有FTP访问播放文件其实是需要先下载到本地后再会被播放的。我想你的Server应该本地就有这个文件的数据。

     

    在咨询过微软WPF产品小组后,他们给出的回复是,不推荐在WPF应用中使用MediaElement组件,由于此组件问题很多而且有兼容性,性能上的不足,所以WPF产品小组推荐使用WindowsFormHost去 Host 一个 MediaPlayer ActiveX 在WPF中来获得稳定的 媒体播放功能。

     

    Sincerely,


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2011年6月13日 3:32
    版主

全部回复

  • 没有人知道吗??????????????
    2011年6月13日 1:12
  • 别急,你先看下WPF 关于Pack URI的详细说明:http://msdn.microsoft.com/zh-cn/library/aa970069.aspx WPF使用了一种完全不同的URI方案. 而ftp前缀是默认的URI方案中的,对于Uri本身来说,是兼容的,并且支持的。但并不被MediaElement支持.

    不过,我和你一样测试了FTP环境下的MediaElement,不管在 Windows 7还是Windows Server ,不管用 Domain Name作为地址还是IP作为地址,都无法播放。

    我猜测应该和你的Windows Server解析这个地址有关。还有FTP访问播放文件其实是需要先下载到本地后再会被播放的。我想你的Server应该本地就有这个文件的数据。

     

    在咨询过微软WPF产品小组后,他们给出的回复是,不推荐在WPF应用中使用MediaElement组件,由于此组件问题很多而且有兼容性,性能上的不足,所以WPF产品小组推荐使用WindowsFormHost去 Host 一个 MediaPlayer ActiveX 在WPF中来获得稳定的 媒体播放功能。

     

    Sincerely,


    Bob Bao [MSFT]
    MSDN Community Support | Feedback to us
    Get or Request Code Sample from Microsoft
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.


    2011年6月13日 3:32
    版主
  • 这个是不支持的,你用Bob的建议去做吧,我觉得这样会使你的项目更加稳定。

     


    Stay hungry, stay foolish
    2011年6月13日 3:50