设为首页 收藏本站
查看: 945|回复: 0

[Windows Phone] Windows Phone 7 播放远程流媒体的代码实现方法

[复制链接]

尚未签到

发表于 2015-5-9 09:05:15 | 显示全部楼层 |阅读模式
  最近打算做一些视频音频方面的应用,但是Windows Phone 7对可播放的媒体格式有太多限制,研究了一下最终还是放弃了,因为要播放的媒体格式是不确定的,没办法简单实现,但在此过程中了解了播放流媒体的几种方法,下面分别给大家介绍。
  对于本地媒体文件的播放我就不多说了,只要将媒体文件加入项目写正确路径即可播放,我们下面介绍几种远程流媒体的播放方法。
  1. MediaElement
  首先要说的就是WP7开发SDK中自带的MediaElement,经过我的测试该控件在播放支持格式的音频基本没问题,但是播放视频会有问题,也可能是我的视频源有问题,使用非常简单,在界面XAML中加入如下代码:
  



  
  其中MediaElement就是播放媒体的主体,大家可以设置其他属性来设置外观,下面的按钮用来播放,按钮点击代码如下:
  


meMain.Source = new Uri("http://www.robtowns.com/music/blind_willie.mp3", UriKind.Absolute);
meMain.Play();  
  这样既可以完成最简单的播放功能:
DSC0000.png
  2. MediaPlayerLauncher
  第二种也是SDK自带的,名为MediaPlayerLauncher,改类没有可视化内容,调用之后会显示一个新界面,在界面中有全部的媒体播放控制功能,我们使用下面代码实现该功能:
  


MediaPlayerLauncher mediaPlayerLauncher = new MediaPlayerLauncher();
mediaPlayerLauncher.Media = new Uri("http://www.robtowns.com/music/blind_willie.mp3", UriKind.Absolute);
mediaPlayerLauncher.Location = MediaLocationType.Data;
mediaPlayerLauncher.Controls = MediaPlaybackControls.Pause | MediaPlaybackControls.Stop;
mediaPlayerLauncher.Show();  
  实现效果如下:
DSC0001.png
  3. Silverlight Media Framework
  这是一套开源的媒体播放框架,大家可以通过下面地址下载:
  http://smf.codeplex.com/releases/view/63434
  (只要下载microsoft-smf-binwp7-2.2011.0410.1.zip即可)
  下载完成后如下:
DSC0002.png
  接着下载另一个必要组件:
  Download Smooth Streaming Player Development Kit
  下载并安装后我们可以在对应安装目录中找到要用的DLL文件(C:\Program Files (x86)\Microsoft SDKs\IIS Smooth Streaming Client):
DSC0003.png
  接着就是用他们,将所有DLL文件加入到项目引用中::
DSC0004.png
  完成之后即可加入如下代码实现功能,首先加入命名空间:
  


xmlns:Core="clr-namespace:Microsoft.SilverlightMediaFramework.Core;assembly=Microsoft.SilverlightMediaFramework.Core.Phone"
xmlns:Media="clr-namespace:Microsoft.SilverlightMediaFramework.Core.Media;assembly=Microsoft.SilverlightMediaFramework.Core.Phone"   
  然后加入播放器代码:
  



     
         
     
  
  实现效果如下:
DSC0005.png
  希望这些能弄对大家有帮助!感谢!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-65139-1-1.html 上篇帖子: 小试Sketchflow for Windows Phone 7 下篇帖子: Windows Phone 7 如何实现高效率的横向排版ListBox
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表