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

简介: 最近打算做一些视频音频方面的应用,但是Windows Phone 7对可播放的媒体格式有太多限制,研究了一下最终还是放弃了,因为要播放的媒体格式是不确定的,没办法简单实现,但在此过程中了解了播放流媒体的几种方法,下面分别给大家介绍。

最近打算做一些视频音频方面的应用,但是Windows Phone 7对可播放的媒体格式有太多限制,研究了一下最终还是放弃了,因为要播放的媒体格式是不确定的,没办法简单实现,但在此过程中了解了播放流媒体的几种方法,下面分别给大家介绍。

对于本地媒体文件的播放我就不多说了,只要将媒体文件加入项目写正确路径即可播放,我们下面介绍几种远程流媒体的播放方法。

1. MediaElement

首先要说的就是WP7开发SDK中自带的MediaElement,经过我的测试该控件在播放支持格式的音频基本没问题,但是播放视频会有问题,也可能是我的视频源有问题,使用非常简单,在界面XAML中加入如下代码:

 

< MediaElement  x:Name ="meMain"  MediaFailed ="meMain_MediaFailed" ></ MediaElement > 
< Button  x:Name ="btnPlay1"  Content ="Play in MediaElement"  Click ="btnPlay1_Click" ></ Button >

 

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

 

meMain.Source =  new Uri( " http://www.robtowns.com/music/blind_willie.mp3 ", UriKind.Absolute); 
meMain.Play();

 

这样既可以完成最简单的播放功能:

QQ截图20110930130340

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();

 

实现效果如下:

QQ截图20110930130525

3. Silverlight Media Framework

这是一套开源的媒体播放框架,大家可以通过下面地址下载:

http://smf.codeplex.com/releases/view/63434

(只要下载microsoft-smf-binwp7-2.2011.0410.1.zip即可)

下载完成后如下:

QQ截图20110930133836

接着下载另一个必要组件:

Download Smooth Streaming Player Development Kit

下载并安装后我们可以在对应安装目录中找到要用的DLL文件(C:\Program Files (x86)\Microsoft SDKs\IIS Smooth Streaming Client):

QQ截图20110930130813

接着就是用他们,将所有DLL文件加入到项目引用中::

QQ截图20110930134143

完成之后即可加入如下代码实现功能,首先加入命名空间:

 

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" 

 

然后加入播放器代码:

 

< Core:SMFPlayer > 
     < Core:SMFPlayer.Playlist > 
         < Media:PlaylistItem  DeliveryMethod ="AdaptiveStreaming"  MediaSource ="http://ecn.channel9.msdn.com/o9/content/smf/smoothcontent/bbbwp7/big buck bunny.ism/manifest" /> 
     </ Core:SMFPlayer.Playlist > 
</ Core:SMFPlayer >

 

实现效果如下:

QQ截图20110930134519

希望这些能弄对大家有帮助!感谢!

目录
相关文章
|
XML C# 数据格式
掌握了在Windows平台上查看DLL依赖的方法
掌握了在Windows平台上查看DLL依赖的方法
2204 4
|
4月前
|
Ubuntu Unix Linux
在Windows上轻松安装和使用Ubuntu的方法详解
继续点击“Continue”按钮以继续安装流程,随后选择清理磁盘并安装操作系统的选项。 接下来,在安装过程中,你需要选择时区。为了与你的地理位置相匹配,请选择中国上海作为你的时区设置。 在安装过程中,你还需要设置计算机的名称以及账号密码。请务必牢记这些信息,因为它们将作为你登录系统的凭证。
|
5月前
|
安全 生物认证 网络安全
windows10无法设置默认保存位置怎么办?显示错误代码0x80070002怎么解决?
Win10系统下载文件时,默认会保存在特定位置,但用户可自行修改。若更改后仍无效,可通过删除目标磁盘中的特定文件夹、修改注册表权限、“干净启动”排除干扰软件或使用第三方修复工具等方式解决此问题。
1108 0
|
5月前
|
Linux Windows
Windows 10/11从官网下载ISO的方法
本文介绍了两种从微软官网下载Windows 10/11 ISO镜像的方法。一是通过修改浏览器User Agent为Linux系统,使官网提供ISO下载链接;二是使用UUPDUMP工具,从官网下载并转换为ISO格式,支持最新开发版,操作简便。
|
3月前
|
运维 iOS开发 Windows
windows电脑备案ios APP获取公钥和证书指纹Sha-1值的方法
在阿里云进行APP备案、在备案IOS端的环节的时候,发现需要我们将p12证书安装在电脑上,再用xcode或或钥匙串访问来获取这个证书的公钥和sha-1值。 但是大部分开发uniapp应用的同学们,或者进行发布的运维人员的电脑都是windows,无法按照阿里云的教程来获取ios的公钥和sha-1。备案就被卡主了。 这里介绍下另一个方法,就是使用香蕉云编来在线上传证书获取。如下图所示,打开香蕉云编后,找到下图这个功能
548 0
|
4月前
|
Windows
office出现0xc0000142错误?windows错误代码为0xc0000142?
office出现0xc0000142错误?windows错误代码为0xc0000142?
169 0
|
10月前
|
存储 安全 虚拟化
Windows 11 绕过 TPM 方法总结,通用免 TPM 镜像下载 (2025 年 2 月更新)
Windows 11 绕过 TPM 方法总结,通用免 TPM 镜像下载 (2025 年 2 月更新)
467 0
Windows 11 绕过 TPM 方法总结,通用免 TPM 镜像下载 (2025 年 2 月更新)
|
人工智能 JavaScript 网络安全
ToB项目身份认证AD集成(三完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法
本文详细介绍了如何使用 `ldapjs` 库在 Node.js 中实现与 Windows AD 的交互,包括用户搜索、身份验证、密码修改和重置等功能。通过创建 `LdapService` 类,提供了与 AD 服务器通信的完整解决方案,同时解决了中文字段在 LDAP 操作中被转义的问题。
411 1
|
12月前
|
存储 缓存 安全
硬盘数据恢复:恢复硬盘数据的9个实用方法(Windows版)
无论是工作文档、家庭照片,还是其他珍贵的数字资产,数据丢失总是一件让人头疼的事情。然而,当硬盘发生问题时,不必过于慌张——只要正确应对,许多数据都可以被成功恢复。本文将从常见数据丢失原因到具体恢复方法,为您提供全面的硬盘数据恢复指导。
|
存储 开发者 Windows
WINDOWS 环境变量设置方法
本文旨在帮助使用Windows电脑的开发者们为其设备配置环境变量,以更好地支持大模型应用的开发工作。文中详细介绍了三种配置方法:一是将环境变量设置为系统级变量;二是在命令行界面通过`SET`命令或`PowerShell`临时设置变量;三是借鉴MAC的方式,创建全局环境变量文件`.zshrc`进行配置。这些方法简单实用,便于根据实际需求选择适合的方式进行配置。