Quantcast
Channel: 英特尔开发人员专区文章
Viewing all articles
Browse latest Browse all 583

英特尔 WiDi — 面向开发人员的无线显示技术

$
0
0

作者:Paul Ferrill 和 Steve Barile

下载 PDF

在看视频、玩游戏、共享图片,甚至办公(包括 Microsoft PowerPoint* 演示)时使用多个屏幕越来越普遍。 但是用户如何使用第二个屏幕取决于具体的设备和操作系统。

本文将讨论排在前三位的技术 — Apple AirPlay*、Google Chromecast* 和 Wi-Fi Alliance Miracast*(该项技术采用英特尔® 无线显示技术 (英特尔® WiDi))之间的区别,并从开发人员的角度概括介绍每项技术的优势和劣势。

随着主设备越来越小,理想的显示屏尺寸越来越大。 通过观察早期的两个用例(小型设备以无线方式在更大的屏幕上显示其内容;以及智能电视显示互联网的内容),您可以了解专有标准和开放标准是如何产生的。 我在本文中讨论的每项技术都面临着不同方面的挑战,而每项技术都以各自的操作系统、设备和独特特性赢得了市场的认可。

Wi-Fi Alliance Miracast* 和英特尔® 无线显示技术

Miracast 不是设备或软件,而是 Wi-Fi Alliance 规范下的一项技术的名称。 它不是一款应用,虽然大家可能经常听到用 Miracast 应用这个术语来介绍该功能。 简言之,Miracast 规格旨在定义如何使用 Wi-Fi Direct* (802.11) 连接通过对等网络将 MPEG4 (H.264) 视频从供电端设备发送至接电端设备。 规范描述了如何使用规定的步骤建立连接。

供电端和接电端首先都会监听 2.4 GHz 频带社交渠道 Wi-Fi Direct 第二层的信号灯。 其中一端(通常是供电端)会扫描其他设备(在本案例中是接电端)。 供电端将收集响应,并将其呈现给用户,或代表用户选择一个响应。 接下来,供电端将对指定接电端发起连接。 两端协商后,其中一端将成为组所有者,这与接入点 (AP) 相同。 建立连接时,协商内容主要包括视频帧速率、帧尺寸、加密以及音频格式。 压缩通常是在 MPEG2 包装中采用 H.264 标准。 嵌入式 MPEG 流和带外 (OOB) 控制信号将通知接电端可变数据速率以及可能会发生的中游 (midstream) 格式变化。

Miracast 非常灵活,您可以将其作为 HDMI 连接线的替代产品。 接电端仅要求使用能够感知 Wi-Fi 的 Wi-Fi 驱动程序,以及能够播放 H.264 视频流的媒体管线。 Miracast 并不要求在供电端和接电端使用 2x2 双频视频,但是通常较好的配置都会使用该特性。 一些高级配置要求 Wi-Fi 无线电同时连接 AP、“监听”社交渠道并支持 Wi-Fi Direct 连接。 比如,当一台智能电视作为接电端时,可以随时连接 Miracast,同时保持与 AP 的连接。 这种方法不需要用户将电视设置为 Miracast 监听模式。

第二个屏幕可以连接 Miracast 或使用小型适配器(支持多家制造商的产品,通常作为 HDMI 加密狗并通过 USB 供电)。 Miracast 还可用于消费者插件设备中,包括蓝牙* 播放器以及将有线电视信号传输至智能手机的机顶盒。 用户设备可以是 Windows* 7 或更高版本、Android* 或 Kindle* Fire 系统,也可使用三星 Wi-Fi AllShare Cast* 进行连接。

使用 Miracast 的主要技术区别是:

  • 无需 AP。
  • 无需互联网连接(除非用户希望在主机设备上播放互联网内容)。
  • 本机支持可在 Windows 8.1、Android 4.2 及更高版本和 Kindle Fire 上使用。

主机设备编码,并传输 MP4 视频。 注: 当使用 Windows 8.1 或 Android 4.4 的演示平面时,您需要从 Project 菜单或 KitKat 菜单设置第二个屏幕连接。

Miracast 唯一的不足在于从云向电视传输视频内容。 在本场景中,必须通过 AP 在供电端和接电端之间再连接一条 Wi-Fi 跳线,它需要供电端一直保持开启状态,以执行视频转码,如果发电源未连接至墙壁电源将会耗干电量。 您还可能在最后一个显示屏上看到视频传输至电视前进行解码并重新编码导致的视频非自然信号。

英特尔® 无线显示技术

英特尔 WiDi 自 2010 年起投入市场,于 2012 年添加了 Miracast 支持(3.5 版)。 英特尔 WiDi 包括上述所有 Miracast 特性。 将近 4000 万台笔记本电脑预装了英特尔 WiDi。 英特尔 WiDi 支持 Windows 7 和 Windows 8/8.1。

英特尔 Pro WiDi 是专门针对商务级系统推出的新特性,专门针对会议室场景而设计,在该场景中,需要将多台电脑连接至一个大型的显示器。 英特尔 Pro WiDi 可提供快速传输和安全连接功能,支持使用简单网络管理协议、命令行接口或 Web 用户接口管理投影仪或英特尔 Pro WiDi 认证显示器上的设置。

英特尔 WiDi 可提供一台无线显示器的基本平台功能。 对于想要创建创新型双屏应用的 ISV 开发人员而言,最大的优势是无需额外添加任何设备。 开发人员可以使用多种编程语言开发双屏应用。 目前有许多标准的 OS API 调用,包括检测第二个显示器连接,在第二台显示器上创建新的全屏窗口和无边窗口。

Google Cast* (API) 和 Chromecast* 加密狗

Google 生产了一款物美价廉的硬件加密狗 (Chromecast),可插入任何包含 HDMI 端口的显示器。 该加密狗可通过连接 LAN 上的无线 (802.11) 或有线 AP 从互联网上下载内容。 从内在的系统而言,Google Cast 与其他的解决方案的差别很大,真正是两种技术的结合。 其主要模式是使用 URL 重定向播放云内容。 简言之,URL 重定向定义了应用如何向 Chromecast 加密狗发送 URL,以便在电视上进行渲染。

当将 Chromecast 加密狗连接到电视上时,必须先进行配置,以便通过使用标准 Wi-Fi (802.11) 的本地 AP 获取 LAN 和互联网访问。 然后加密狗将监听基于简单服务发现协议 1.1 版(通用即插即用标准的一部分)的发现和发布服务发现的第 5 层。

应用将收集响应,并将其呈现给用户,或代表用户选择一个响应。 当应用通过 Google Cast API 调用连接时,将通过 TCP/IP 连接为指定的 Chromecast 加密狗创建一个插座。 通过 TCP 连接,Google Cast API 支持平台上的任何应用使用 Chromecast 加密狗“发送”视频。 这些 API 支持在 Chromecast 加密狗上执行多种操作。 它可以传送一个 URL 直接从互联网渲染,也可以播放和控制互联网视频内容。 它甚至可以用来下拉应用,在 Chromecast 电子狗上运行,从而提供定制的体验。

例如,一个内容提供商可以创建一个提供视频内容目录的网站。 使用 Google Cast API 插件,可以将从内容提供商网站上获取的 URL 发送至 Chromecast 加密狗进行播放。 此外,Google 提供了一个 API,支持从发送设备上远程控制(播放、暂停、快进、倒带) Chromecast 加密狗上的视频流播放器。 二级模式基于传输本地内容和屏幕镜像。 近来,Google 根据自己的 API(它具有自身独特特点,且仅针对 Chromecast)部署了复制模式。

Google Cast 非常灵活,您可以在 Chromecast 加密狗上播放视频,而加密狗不需要“发送视频”的设备采取任何操作,发送设备甚至可以关闭。 而且,它支持随时在加密狗端下载应用,这使得该解决方案更为灵活。

Google Cast 不足之处在于播放本地视频内容,因为它需要使用第二根 Wi-Fi 跳线从供电端连接至 AP 再连接至 Chromecast 加密狗。 此外,当前 Chromecast 加密狗使用的是 1x1 Wi-Fi 无线电,通常后者在拥挤的 Wi-Fi 环境中运行状况欠佳。

面向 Apple TV* 的 Apple AirPlay*

Apple TV* 和 AirPlay 与 Google Cast 拥有一些相同的特点:它们都需要专用设备并且需要从其在线商店上下载专门软件。 虽然一些大型内容提供商 (YouTube*) 支持这两种技术,但是也有一些大型提供商(Amazon 视频)不能在上面运行。

只有运行 iTunes* 的 Apple 硬件或设备能够与 Apple TV 兼容。 在音频方面,其他的制造商(包括 Denon、JBL、Marantz、Pioneer 和 Sony)许可 AirPlay 从 Apple 设备向其设备传输音频(仅限音频)。 开发人员必须使用 Apple API 来调用 AirPlay,其应用必须通过 Apple 商店许可和分发流程,虽然 Apple 开发人员网站包含了多种可用文档和 Objective-C* (很快将升级为 Swift)样本代码。 易用性与预期中的一样,但是不够开放。

比较与对照

从不同的角度来考虑这些技术之间的差别和相似性非常重要。 想象一个商业用例场景,即多台笔记本电脑需要连接到一台大屏幕设备上进行展示,您需要能够快速连接并断开每个设备。 可能 Wi-Fi 不可用,除了使用连接线之外,Miracast/英特尔 WiDi 解决方案成为唯一的可选选项。

站在开发人员的角度,您必须评估目标受众,以及所有可用应用的潜在市场。 虽然 Apple 生态系统在消费者市场上明显占有很大份额,但是还有大量运行预装 Miracast 的 Windows 系统的 PC 和预装 Miracast 的 Android 手机和平板电脑(Android 4.2 和更高版本)。

目标解决方案不同,实际的开发流程也有很大差别。 对于 Miracast/英特尔 WiDi 目标,您无需额外使用任何代码即可在第二个屏幕上显示内容:其运行如同正常的应用。 如果您以 Google Cast 为目标,则需要学习一套新的 API 调用,并需要编写能够在 Chrome* 浏览器内运行的代码。 对于 Apple 目标解决方案,您必须通过 Apple 商店,并需要与 AirPlay 集成。

屏幕共享是三种解决方案共同支持的用例。 区别在于如何建立和控制连接。

架构差异

Miracast 使用 Wi-Fi Direct 技术,可提供直接的点对点或对等连接(无需 AP)。 AirPlay 和 Google Cast 都需要使用无线 AP 从本地设备建立连接(两根跳线)

 

 

注: Google Cast 目前允许使用 OOB HTTP 会话传递至加密狗来启动和停止流,但是在传输前需要在芯片电子狗 1.2 GHz 系统上进行转换,并且需要 16 GB 的闪存和 512 MB 的内存。

 

 

多数英特尔 WiDi 设备使用 2x2 双频无线电,因此 PC 能够与两个屏幕以及一个 AP(便于使用互联网连接)时刻保持连接。

此外,Miracast 还添加了特定的协议,以便协商视频功能,在需要时配置加密,传输内容和保持视频会话。

注:压缩通常是在 MPEG2 包装中采用 H.264 标准。 数据包中包含嵌入式 MPEG 流和带外 (OOB) 控制信号,用于通知第二个屏幕可变数据速率以及可能会发生的中游 (midstream) 格式变化。

英特尔 Pro WiDi 添加了其他类似功能不具备的隐私性、安全性和可管理性功能。

兼容性

AirPlay 最适合在其他 Apple 设备上使用,在非 Apple 设备上使用时需要 Apple TV 和 iTunes。 Google Cast 可在运行 Chrome 浏览器的任何操作系统上使用,并需要使用 Chromecast 加密狗。 Windows 商用设备需要使用一个 Chrome 浏览器插件。Miracast 能够在 Windows PC 和 Android 4.2 及更高版本的设备上即开即用。 目前,可从多家厂商购买多种 Miracast 加密狗。

更多信息

作者介绍

Paul Ferrill 为计算机贸易媒体撰稿已二十余年。 他最初主要为 PC Magazine 撰写有关 LANtastic 和早期版本的 Novell Netware 等产品的网络评论。 Paul 拥有 BSEE 和 MSEE 两个学位,曾为数不清的电脑平台和架构编写过软件。

Steve Barile 在视频编解码和各种媒体基础架构等技术领域拥有超过 25 年的经验。 他目前担任双屏幕应用支持的技术推广人员;他于 2010 年初加入英特尔无线显示技术事业部。


Viewing all articles
Browse latest Browse all 583

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>