从您的 Windows 8 应用(和网站)中支持卓越的“播放到”体验!

Windows 8 应用程序开发人员博客

有关为 Windows 8 生成 Metro 风格应用程序的见解,来自 Windows 8 工程团队

从您的 Windows 8 应用(和网站)中支持卓越的“播放到”体验!

  • Comments 0

“播放到”功能概述

“播放到”功能可让您在家庭网络中流式处理从应用到 Xbox 以及其他受支持的设备中的音乐、照片和视频。试想一下,您只需轻轻点击,即可在大屏幕电视上播放应用中的照片和视频,或者在客厅的扬声器中播放应用中的音乐。借助“播放到”合约,您可让用户在其应用中轻松实现这些应用场景。这将是令您的应用在用户客厅中大放异彩的不错方式。

为了提供卓越的端到端用户、开发者和设备使用体验,我们在设计“播放到”功能时,充分考虑了以下因素:

  • 用户:在用户启用了共享功能的网络中(如家庭网络),Windows 8 将自动发现并安装经过 Windows 认证的“播放到”设备。操作系统将为用户提供一致的使用体验,用户能够从“设备”超级按钮中轻扫和点按设备,进而从任何受支持的应用中启动“播放到”功能。包括音乐应用、视频应用以及照片应用在内的所有以媒体为中心的 Microsoft 应用中都将包含“播放到”体验。甚至 Internet Explorer 10 也实施了“播放到”合约,因此用户能够流式处理网页中的照片、HTML 音乐和视频。
  • 开发者:“播放到”开发者合约对基础媒体流式处理技术(协议、格式匹配、转码等)进行了一个高水平的抽象,并简化了在大范围应用中快速实施(和测试)“播放到”体验的过程。所有应用(以及 IE 中的 HTML5 网页)将在默认情况下支持基本体验,并可在随后定制体验或选择退出。
  • 设备:Windows 8 中的“播放到”体验旨在与经过 Windows 认证的“播放到”设备配合运行。经过认证的设备将为用户提供一致、可靠的使用体验。大量消费类电子设备公司正致力于对其多个类型的设备开展“播放到”认证工作。这些设备包括电视、机顶盒、扬声器和音频接收器。正如在今年早些时候举办的电子娱乐博览会 (E3) 上所介绍的,“播放到”接收器支持是一项全新的功能,该功能已被推广到了约七千万个 Xbox 360 控制台中,而且这也是今年秋天所进行的面板更新中的一个举措。请关注 Windows 博客,了解更多设备的上市新闻!

 

打造引人入胜的交互式体验

“播放到”功能可让您轻松为用户提供引人入胜的多屏体验,这将让您的用户爱不释手,并让您的应用从 Windows 应用商店中脱颖而出。当您实施“播放到”功能时,您将获得:

  • 社交体验,用户能通过您的应用轻松与亲朋好友在家里最大的屏幕中共享喜爱的照片和视频。
  • 随行体验,应用能为用户提供第二屏幕体验,包括简单的远程控制体验以及评级系统(用户能对曲目评分并欣赏内容丰富的专辑和艺术家元数据)等众多方面。

在本篇博文中,我们将以开发者示例和照片应用为例,向您介绍如何构建并测试一个卓越的“播放到”体验。

“播放到”功能如何在 Windows 8 中运行?

首先,让我们了解一下端到端的体验,从用户的角度来理解“播放到”功能的工作原理,在这一过程中,我们只需加入一个新网络来对某一设备流式处理媒体。

我们在 Windows 8 中为用户提供了一个简单的“播放到”设置,且不会影响用户在公共网络中的隐私性和安全性。拥有家庭组设置的电脑,以及用户选择“快速设置”作为其首次运行设置体验的电脑将自动启用共享功能。此外,每当用户加入一个新的网络时,他们都将立刻被问及是否希望启用共享功能,并连接到设备。用户还可通过长按网络连接 UI 浮出控件中的网络名称来显示此消息。

开始”屏幕共享

启用共享功能后,Windows 将在约 30 秒内在网络中自动查找并安装受支持的“播放到”设备。用户能够在电脑设置内的设备页面中查看设备是否可用。用户还能从电脑设置内的“设备”页面中手动添加新设备。

电脑设置屏幕

在安装完“播放到”设备之后,Windows 将记住这些设备,并将在网络中自动跟踪它们的可用性。现在,只要用户进入可能使用“播放到”功能的应用,这些设备就将在“设备”超级按钮中可用。

接下来,让我们进一步从 Visual Studio 内运行的开发者示例中了解“播放到”功能的原理。在此示例中,大雄兔视频应用启用了“播放到”功能。

大雄兔

 

由于此应用在本视图中实施了“播放到”合约,因此我们可轻扫“设备”超级按钮,并从中查看可用的设备。

大雄兔 2

选择一台设备启动“播放到”功能。在本案例中,我们选择了 Xbox 360,此时您可看到视频控制将进入灰白覆盖取代视频的模式。现在,暂停、播放、搜索和音量按钮将控制目标设备上的播放。

“播放到”功能流式处理

用户可选择“设备”超级按钮中的“断开连接”来结束会话。

“播放到”功能流式处理 2

“播放到”合约是什么?

在您的应用中实施“播放到”功能十分简单。以下是实施步骤,这适用于应用中的任何视图:

  1. 为当前视图创建一个 PlayToManager 对象。
  2. 注册 SourceRequested 事件,以获得有关“设备”超级按钮何时被选中的通知。
  3. 设置 PlayToSource,以指定媒体元素来从该视图进行流式处理。“设备”超级按钮将基于源文件的类型(是否为音频、视频,或是图像元素),而仅显示能够处理该媒体类型的设备。如果用户选择某一设备,那么 PlayToSource 将被发送到该设备。PlayToSource 可得以更新,以在当前媒体元素完成在该设备上的播放过程后流式处理下一元素。

让我们看一个简单的示例,了解如何为一个单一媒体项目启用“播放到”功能。

JavaScript

<video id="videoplayer" src="http://www.contoso.com/clip.mp4" controls autoplay />
<script type="text/javascript">
// Step 1: Obtain PlayToManager object for app’s current view.
var ptm = Windows.Media.PlayTo.PlayToManager.getForCurrentView();
// Step 2: Register for the sourcerequested event (user selects Devices button).
ptm.addEventListener("sourcerequested", function(e) {
var request = e.sourceRequest;
// Step 3: Specify the media to be streamed (to filter devices)
request.setSource(document.getElementById("videoplayer").msPlayToSource);
// The media will then be streamed to the device chosen by the user in the UI.
});
</script>

XAML

<MediaElement x:Name="videoplayer" Source="http://www.contoso.com/clip.mp4" 
AutoPlay="true" />
// Step 1: Obtain PlayToManager object for app’s current view.
PlayToManager ptm = Windows.Media.PlayTo.PlayToManager.GetForCurrentView();
// Step 2: Register for the SourceRequested event (user selects Devices button).
ptm.SourceRequested += (PlayToManager sender, PlayToSourceRequestedEventArgs e) => {
request = e.SourceRequest;
// Step 3: Specify the media to be streamed.
PlayToSourceDeferral deferral = request.GetDeferral();
request.SetSource(videoplayer.PlayToSource);
deferral.Complete();
}
// The media will then be streamed to the device chosen by the user in the UI.

您何时应实施“播放到”合约?

如果您的应用包含有趣的照片、音乐或视频,而且这些照片、音乐或视频在大屏幕或高品质立体声设备上播放将为用户提供更佳的体验,那么“播放到”功能就将派上用场。我们得知一些开发者已在包括生活方式、新闻阅读、播客和媒体等大量应用上构建了卓越用户体验。

“播放到”功能将被自动启用,以在 Windows 8 应用中播放音乐和视频元素(但无法查看图像应用)。这一默认体验将在个别媒体元素上运行良好;但是定制的“播放到”功能将支持诸如幻灯片和播放列表等更为复杂的应用场景。

所有不受 DRM 保护的音乐、视频和图像都可使用“播放到”功能来将内容流式处理到设备中,对于用户集锦和基于 Web 的流式媒体而言,都是如此。由于 DRM 内容已经直接从 Web 直接传送到智能电视,因此 DRM 将不受支持。

对于本篇博文,我们选用了照片应用来作为示例,展现卓越的“播放到”体验。照片应用旨在成为用户体验其数码回忆的最佳平台,让用户在此观看、放松、享受、共享并沉浸于美好回忆中。在家里的最大屏幕中展现数码回忆将增强整个用户体验,并大大提高交互性。

照片应用示例

照片应用创建了一个“播放到”视图,该视图可让用户控制幻灯片。其可让用户在幻灯片视图中查看完整媒体内容。在该视图中,用户能够播放并暂停视频、开始幻灯片,或将项目手动发送到电视。由于照片和视频可在电视中播放,因此应用能够充分利用 Windows 8 设备中的额外屏幕空间来显示更多内容,例如显示即将播放的项目能够完善电视观看体验。

将“播放到”功能内置到您的应用中将至关重要。对于照片应用而言,“播放到”视图将与应用的主布局并排构建。

用户能够打开“设备”超级按钮,并从应用中的任何地方查看兼容的设备。当用户查看照片、视频或集锦时,他们将看到打开“设备”超级按钮的选项,并可查看设备选项。用户能够在浏览过程中将整个专辑发送到另一设备,抑或甚至从多个专辑中选择照片发送。

在本示例中,用户选择了一些特定的照片和视频,因此这些照片和视频将被发送到电视中。当用户打开“设备”超级按钮时,他们将看到能够播放所选内容类型的可用设备。应用所需进行的操作就是指定内容源。

滑冰场

用户选择了设备之后,他们可能希望确定哪一设备将用于播放内容。照片应用将创建一个美观的标题,来显示正在被流式处理的重点内容所在的位置。当前播放的媒体项目将在照片或视频周边用矩形框突出显示。

以下图片向您展示了应用播放到电视中的情景:

滑冰场 2

进一步改进幻灯片放映体验

经过 Windows 认证的“播放到”设备可支持预缓冲播放列表应用场景中的下一项目。让设备预缓冲播放列表中的下一项目是确保卓越用户体验的一种有效方式,这对于卓越用户体验而言至关重要。应用能够通过为播放列表应用场景中的“下一个”元素指定“播放到”源,进而利用这一功能。本 MSDN 快速入门详细概述了您的应用可如何利用这一高级功能。

保持幻灯片的播放状态

“播放到”会话将一直播放,直到用户断开其连接。这将支持两类多任务处理应用场景:

  1. 用户能在相同应用中导航到不同的照片专辑。启用这一应用场景需要确保应用所构建的体验能够让“播放到”功能在用户导航离开“正在播放”的幻灯片时继续运行。例如,在照片应用中,用户能够选择一些照片,并通过电子邮件共享这些照片,与此同时,幻灯片将继续在电视中播放,或者您可在不中断正在进行的幻灯片放映的前提下搜索他们希望展示的下一组照片。
  2. 用户能够导航到不同的应用,例如查看电子邮件,此时幻灯片将流式处理到电视中。在这一情况下,应用不需要进行任何操作。Windows 将自动在后台维持应用运行,同时“播放到”会话将处于活动状态。应用在显示完当前图像,或播放完当前音频或视频后,需约 10 秒的时间来发送一幅新的图像或下一音频或视频,以此来确保会话处于活动状态。当幻灯片、音乐/视频/播放列表完成后,Windows 将挂起该应用。

“播放到”功能的注意事项

当您构建高品质“播放到”体验时,请将以下注意事项牢记于心。

会执行的功能:

  • 告诉用户,您的应用正在播放到其他设备。
  • 让用户仅使用“设备”超级按钮来与设备连接(和断开连接)。
  • 当用户在应用中导航到不同的视图时,保持“播放到”功能处于活动状态。
  • 对于音乐、照片或视频播放列表,请始终指定下一 PlayToSource,以提高性能。
  • 参阅本 MSDN 参考页面,了解如何最佳使用“播放到”功能的详细准则。

不会执行的功能:

  • 添加自定义按钮来从应用内启动或终止“播放到”功能,请仅使用“设备”超级按钮。

网站中的“播放到”功能又是怎样一番情形?

与应用的使用体验相似,全新 IE10 应用为音乐、视频和图像自动启用了“播放到”功能。IE 试图与“播放到”源一样,识别出最佳的媒体项目来使用,但是其支持的项目为当前正在播放、被选中、处于中心位置,或在视图中处于活动状态的项目。

IE 将忽略时长为 5 秒或 5 秒以内的音乐和视频元素,以及像素为 300x300 或低于 300x300 的图像,IE 将始终不会为这些元素自动启用“播放到”功能。

请查看 MSDN 页面,了解一些有关让网页“播放到”功能变得友好的准则和提示

有关媒体格式的一些注意事项

此处概述了 Windows 8 兼容的大量媒体格式。然而,为获得最佳性能,我们建议对图像使用 1080p JPEG 格式,对视频使用 720p(或 1080p)MP4 格式,该格式中包含 H264 视频和 ACC 音频。

测试和验证“播放到”功能

由于仅有很少一部分电脑使用 Windows 媒体播放机作为“播放到”接收器,因此“播放到”功能的测试和验证将十分简单。以下是具体步骤:

  1. 在您的家庭网络中设置两台电脑,一台为您的开发者电脑,另一台为运行 Windows 媒体播放机 (WMP) 的电脑,并将其作为测试“播放到”功能接收器。
  2. 在您作为测试“播放到”功能接收器的电脑上,打开 WMP 并选择流式处理菜单,然后选择[启用远程控制我的播放机…](Enable remote control of my Player…)
    • 在 Windows 7 和 Windows 8 上使用 WMP 都可以实现该功能,但是我们建议使用 Windows 8,因为 Windows 8 已获得了大幅改进。
    • 确保两类电脑上都已经启用了共享功能。
    • 确保您将使用家庭网络。因为一些企业网络中有防火墙设置和管理策略,这些设置和策略可能将影响“播放到”设备的发现。
  3. 在您的开发者电脑上,进入“电脑设置”中的“设备”页面,选择“添加设备”,并安装(您已在上述步骤 2 中设置的)Windows 媒体播放机。
  4. 您可在第二台电脑上使用 WMP 作为任何已经实施“播放到”合约的应用的“播放到”设备,这包括照片应用、“播放到”示例,如果您实施了该合约,那么这还包括您的应用。

您还可在不进行任何特殊配置的前提下从您的应用中使用 Xbox 来测试和验证“播放到”功能。

结论和其他参考资料链接

我们希望本篇博文中所提供的信息对您探究在应用中设计卓越“播放到”体验的最佳方式有所帮助。我们也希望能在评论栏中看到您的反馈和提问,并期待在 Windows 应用商店中看到您的应用!

以下是指向开发中心有用文档的一些链接:

概述视频和文档

快速入门

API 参考及开发者示例

谢谢

Gabe Frost、Analy Otero,以及“播放到”团队全体成员

  • Loading...
Leave a Comment
  • Please add 1 and 7 and type the answer here:
  • Post