CN106165368B - 实时传输协议的流送控制 - Google Patents

实时传输协议的流送控制 Download PDF

Info

Publication number
CN106165368B
CN106165368B CN201580017793.0A CN201580017793A CN106165368B CN 106165368 B CN106165368 B CN 106165368B CN 201580017793 A CN201580017793 A CN 201580017793A CN 106165368 B CN106165368 B CN 106165368B
Authority
CN
China
Prior art keywords
trap equipment
equipment
protocol
trap
source device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201580017793.0A
Other languages
English (en)
Other versions
CN106165368A (zh
Inventor
P·L·卡福里
S·K·阿格拉沃尔
V·N·萨布莱曼尼亚姆
S·K·卡璐那卡兰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN106165368A publication Critical patent/CN106165368A/zh
Application granted granted Critical
Publication of CN106165368B publication Critical patent/CN106165368B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Environmental & Geological Engineering (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

描述了媒体内容的流送中使用的至少部分基于内容类型、等待时间要求、网络条件和/或设备能力的传输协议的动态控制。该技术提供了源设备,该源设备在用户数据报协议(UDP)和传输控制协议(TCP)之间动态切换以将媒体内容流送到阱设备。例如,在与实时媒体内容(例如,实况流送运动节目或游戏应用)相关联的Wi‑Fi对等远程显示会话期间,源设备可以使用UDP上的实时传输协议(RTP)来将媒体流传送到该阱设备。相反,当媒体内容不是等待时间较关键时(诸如,存储的媒体的回放(例如,电影)),源设备可以动态切换到TCP上的RTP,从而提供可靠的数据传送。

Description

实时传输协议的流送控制
交叉引用
本专利申请要求由Kafle等人于2015年4月7日提交的题为“Streaming Controlfor Real-Time Transport Protocol(实时传输协议的流送控制)”的美国专利申请No.14/680,259、以及由Kafle等人于2014年4月10日提交的题为“Streaming Control for Real-Time Transport Protocol(实时传输协议的流送控制)”的美国临时专利申请No.61/978,121的优先权,其中的每一件申请均被转让给本申请受让人。
背景
以下一般涉及无线通信,尤其涉及Wi-Fi对等远程显示。无线通信***被广泛部署以提供诸如语音、视频、分组数据、消息接发、广播等各种类型的通信内容。这些***可以是无线局域网(WLAN),也称为Wi-Fi***,其利用带有冲突避免(CSMA/CA)的载波侦听多址机制来接入无线介质。这些***也可以是能够通过共享可用***资源(例如,时间、频率和功率)来支持与多个用户通信的多址***。此类多址***的示例包括码分多址(CDMA)***、时分多址(TDMA)***、频分多址(FDMA)***、以及正交频分多址(OFDMA)***。
当移动设备被用于捕捉或生成内容(诸如音频、视频、或多媒体)时,用户可能希望在移动设备与其他设备(诸如TV、计算机、音频***等)之间共享内容。一种办法是使一个设备(即,阱设备)镜像在另一设备(即,源设备)上显示的东西。源设备的示例可以包括智能电话、平板设备等。阱设备的示例可以包括TV、计算机屏幕等。在一些应用中,源设备可以在无线链路上传送媒体流。例如,Wi-Fi对等网络允许各无线设备彼此直接通信。在彼此射程内的设备可直接进行发现和通信而不牵涉中央接入点。
Wi-Fi对等连接允许源设备向兼容的阱显示器无线地传送媒体内容,诸如视频和/或音频。已经考虑了各种各样的办法来有效地将媒体内容从源设备传送到阱设备。例如,一种办法允许源设备使用MPEG2传输流(MPEG-TS)来封装媒体内容以供在使用用户数据报协议(UDP)上的实时传输协议(RTP)的介质上进行传送。RTP(被设计用于流送内容的端对端、实时转移)定义了用于在网际协议(IP)网络上递送媒体内容的标准分组格式。用于Wi-Fi对等远程显示的常规方法实现了UDP上的RTP,因为UDP适于等待时间较关键的多媒体内容的实时转移。然而,UDP协议依赖Wi-Fi MAC层重传,若网络拥塞增长到特定阈值之上,这可能导致质量假象。
概述
所描述的特征一般涉及用于至少部分基于内容的类型、等待时间要求、网络条件和/或设备能力来动态控制用于流送媒体内容的传送的传输协议的一个或多个改进的***、方法和/或装置。在一些示例中,源设备可以在用户数据报协议(UDP)和传输控制协议(TCP)之间动态切换以将媒体内容流送到阱设备。例如,在于实时媒体内容(例如,实况流送、游戏、或交互用户输入的显示)相关联的Wi-Fi对等远程显示会话期间,源设备可以使用UDP上的实时传输协议(RTP)来将媒体流传送到该阱设备。相反,当媒体内容不是等待时间较关键时(诸如,存储的媒体的回放(例如,电影)),源设备可以动态切换到TCP上的RTP,从而提供可靠的数据传送。结果,源设备和阱设备可以在Wi-Fi对等远程显示会话期间,基于流送的内容的类型、网络条件和/或设备能力来选择恰适的传输机制。
在另一示例中,源设备可以控制回放功能,诸如处理媒体流的阱设备的音量。结果,即使当阱设备处仍然有缓冲的数据要播放时,音量改变也可以得到立即反映。进一步,本公开的回放音量控制功能可以被用来控制阱设备处的音量而不管传送自源设备的媒体流中的音频的音量等级。
在第一组解说性示例中,提供了一种用于无线通信的方法。该方法可包括由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流。该源设备可进一步标识由该阱设备支持的第二协议并且在Wi-Fi对等远程显示会话期间动态切换到该第二协议以传送该媒体流。
在一个示例中,第一协议可包括用户数据报协议(UDP),且第二协议可包括传输控制协议(TCP)。在另一示例中,该第一协议可包括TCP且该第二协议可包括UDP。在一些示例中,标识由该阱设备支持的第二协议可包括向该阱设备传送查询以确定该阱设备是否支持TCP以及要用于TCP连接的一个或多个端口。作为响应,源设备可以接收确认阱设备支持TCP的消息和端口信息。
该源设备可以进一步响应于接收到该消息向该阱设备传送设立请求,其中该设立请求可包括简档和端口信息。该源设备可进一步查询该阱设备以确定该阱设备的解码器等待时间和缓冲器大小。在一些示例中个,从第一协议动态切换到第二协议至少部分基于媒体内容的类型、网络条件或该阱设备处的可用缓冲器空间。该源设备可以进一步在发起回放之前至少部分基于媒体内容的类型、网络条件或该阱设备处的可用缓冲器空间来选择由该阱设备用于缓冲媒体流的缓冲器大小。该源设备可进一步向该阱设备传送所选缓冲器大小。
在一个示例中,该源设备可以进一步查询该阱设备以查询正在播放的媒体流的呈现时间戳(PTS)值以及等待被播放的媒体流的待决缓冲器大小。该源设备可以接收响应于该查询的,指示当前正在播放的媒体流的PTS值和等待被播放的媒体流的缓冲器大小的消息。在一些示例中,该源设备可以发出清除控制命令以清除该阱设备的缓冲器,其中该清除控制命令指令该阱设备丢弃该阱缓冲器中的数据直到具有该PTS值的数据分组。在另一示例中,该源设备可以向该阱设备发出音量控制命令,其中该音量控制命令控制该阱设备处的媒体流的回放音量。
在第二组解说性示例中,提供了一种用于无线通信的装置。该装置可包括处理器以及与该处理器处于电子通信的存储器。该存储器可实施可由处理器执行以由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流的指令。该指令可进一步由该处理器执行以标识由该阱设备支持的第二协议并且在Wi-Fi对等远程显示会话期间动态切换到该第二协议以传送该媒体流。在某些示例中,该设备可实现以上关于第一组解说性示例描述的用于无线通信的方法的一个或多个方面。
在第三组解说性示例中,提供了一种用于无线通信的装置。该装置可包括用以由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流的多协议通信组件。该装置可进一步包括用以标识由该阱设备支持的第二协议的能力分析组件,以及用以在Wi-Fi对等远程显示会话期间动态切换到该第二协议以传送该媒体流的动态切换组件。在某些示例中,该设备可实现以上关于第一组解说性示例描述的用于无线通信的方法的一个或多个方面。
前述内容已较宽泛地勾勒出根据本公开的示例的特征和技术优势以力图使下面的详细描述可以被更好地理解。附加的特征和优势将在此后描述。所公开的概念和具体示例可容易地被用作修改或设计用于实施与本公开相同的目的的其他结构的基础。此类等效构造没有背离所附权利要求书的精神和范围。被认为是本文所公开的概念的特性的各特征在其组织和操作方法两方面以及相关联的优势将因结合附图来考虑以下描述而被更好地理解。每一附图是仅出于解说和描述目的来提供的,且并不定义对权利要求的限定。
附图简述
通过参照以下附图可实现对本发明的本质和优势的更进一步的理解。在附图中,类似组件或特征可具有相同的附图标记。此外,相同类型的各个组件可通过在附图标记后跟随短划线以及在类似组件之间进行区分的第二标记来加以区分。如果在说明书中仅使用第一附图标记,则该描述可应用于具有相同的第一附图标记的类似组件中的任何一个组件而不论第二附图标记如何。
图1示出了根据各实施例的用于通过视频和/或音频流送来将内容从一个设备显示到另一个设备的显示器上的***的示图;
图2A示出了解说根据各个实施例的源设备的框图;
图2B示出了解说根据各个实施例的源设备的框图;
图2C示出了解说根据各个实施例的源设备的框图;
图3A示出了解说根据各个实施例的阱设备的框图;
图3B示出了解说根据各个实施例的阱设备的框图;
图4是解说根据各个实施例的设备的框图;
图5示出了解说根据各个实施例的源设备与阱设备之间的通信流的消息流图;
图6示出了解说根据各个实施例的源设备与阱设备之间的通信流的消息流图的另一示例;
图7是解说根据各个实施例的由源设备执行以供阱设备对内容进行远程显示的方法的示例的流程图;以及
图8是解说根据各个实施例的由源设备执行的方法的示例的流程图。
详细描述
所描述的各实施例涉及用于源设备在用户数据报协议(UDP)和传输控制协议(TCP)之间动态切换以将媒体内容(诸如音频和/或视频数据)流送到阱设备的***和方法。例如,在与实时媒体内容(例如,流送运动节目)相关联的Wi-Fi对等远程显示会话期间,源设备可以使用UDP上的实时传输协议(RTP)来将媒体内容流送到阱设备。相反,当媒体内容不是等待时间较关键时(诸如,存储的媒体的回放(例如,电影)),源设备可以动态切换到TCP上的RTP,从而提供可靠的数据传送。结果,源设备和阱设备可以在Wi-Fi对等远程显示会话期间,基于流送的内容的类型、网络条件和/或设备能力来动态选择传输机制。
在另一示例中,源设备可以控制回放功能,诸如处理媒体流的阱设备的音量。结果,即使当阱设备处仍然有缓冲的数据要播放时,音量改变也可以得到立即反映。进一步,本公开的回放音量控制功能可以被用来控制阱设备处的音量而不管传送自源设备的媒体流中的音频的音量等级。
以下描述提供示例而并非限定权利要求中阐述的范围、适用性或者配置。可以对所讨论的要素的功能和布置作出改变而不会脱离本公开的精神和范围。各个实施例可恰适地省略、替代、或添加各种规程或组件。例如,可以按不同于所描述的次序来执行所描述的方法,并且可以添加、省去、或组合各种步骤。此外,关于某些实施例描述的特征可在其他实施例中加以组合。
现在参照图1,***100包括源设备115和阱设备135,并且可以包括一个或多个接入点105。源设备115的示例可包括但不限于:智能电话、蜂窝电话、无线耳机、可穿戴计算设备、平板设备、个人数字助理(PDA)、膝上型设备、或任何其他能够经由连接(例如,有线、蜂窝无线、Wi-Fi等)与阱设备135通信的设备。阱设备135的示例可包括但不限于:车载资讯娱乐设备、TV、计算机、膝上型设备、投影仪、相机、智能电话、可穿戴计算设备、或任何其他能够与源设备115通信并显示接收自源设备115的内容的设备。阱设备135可以是设备的组合。例如,阱设备135可以包括显示设备以及用于接收、缓冲、和解码内容以供在显示设备上显示的单独设备。
源设备115可以经由链路125连接至阱设备135。链路125在图1中被解说为无线链路,但在一些实施例中可以是有线或无线链路。可以执行经由无线对等连接来连接的源设备115与阱设备135之间的通信以在阱设备135处远程地渲染源设备115的内容。Wi-Fi远程显示包括、但不限于Wi-Fi显示规范(也被称为源自Wi-Fi联盟的)、发现和启动(DIAL)、 (DLNA)、Airplay(飞乐)、无线HD、无线家庭数字接口(WHDI)、Intel的无线显示(Wi-Di)技术、以及超宽带(UWB)连接。虽然以下技术是使用图1中解说的无线联网架构来描述的,但是所描述的技术也适用于任何合适的有线或无线通信技术。
在一个实施例中,源设备115经由Wi-Fi显示连接来连接至阱设备135。可以被称为Miracast的Wi-Fi显示协议允许便携式设备或计算机无线地向兼容显示器传送媒体内容(例如,视频、音频、图像等)。其可使得能够在无线链路125上递送经压缩的标准或高清视频。其还可以允许用户将来自一个设备的显示回显到另一设备的显示器上。无线链路125可以是直接无线链路(例如,对等链路125-a)、或者是通过Wi-Fi接入点的间接无线链路(例如,间接链路125-b)。直接无线链路的示例包括Wi-Fi直接连接以及通过使用Wi-Fi隧穿直接链路设立(TDLS)链路来建立的连接。
Wi-Fi显示允许用户通过进行视频和/或音频内容流送来将显示从一个设备回显(echo)到另一个设备的显示器上。源设备115与阱设备135之间的链路125可以是双向的。在一个示例中,源设备115与阱设备135之间的连接还可允许用户经由阱设备135启动存储在源设备115上的应用。例如,阱设备135可包括各种输入控件(例如,鼠标、键盘、旋钮、键、用户接口按钮)。这些控件可在阱设备135处被用于在来自源的音频/视频流送期间通过存储在源设备115上的媒体应用来初始化和交互。
Wi-Fi显示可以使用传输流,诸如MPEG2传输流(MPEG-TS)。可根据媒体编码格式(例如,h.264、MPEG-4、h.265等)来编码内容,并且该内容可与其他信息(例如,纠错、流同步等)复用成传输流以供向阱设备135传送。包括源设备115的***100可以配置成在UDP和TCP之间动态切换来将媒体内容(诸如音频和/或视频数据)流送到阱设备135。例如,在与实时媒体内容(例如,实况流送、游戏或交互用户输入的显示)相关联的Wi-Fi对等远程显示会话期间,源设备可以使用UDP上的RTP来将媒体内容流送到阱设备。相反,当媒体内容不是等待时间较关键时(诸如,存储的媒体的回放(例如,电影)),源设备可以动态切换到TCP上的RTP,从而提供可靠的数据传送。在Wi-Fi对等显示会话中增加用于携带媒体数据的TCP传输的能力允许源设备和阱设备基于内容类型、网络条件或其他实现因素(诸如可用缓冲器)来选择最佳传输机制。因为面向连接的TCP适于适应于链路条件,所以使用TCP可以实质上改进拥塞网络环境中媒体回放的质量。
在一些示例中,在源设备115与阱设备135之间已建立Wi-Fi对等远程显示连接之前或之后,这些设备可参与能力协商规程。作为能力协商规程的一部分,源设备115可以查询阱设备135以查询关于阱设备135的能力的各种信息以建立Wi-Fi远程显示连接。源设备115可通过发送实时流送协议(RTSP)请求消息来查询阱设备135。在一个示例中,源设备115可以使用RTSP请求消息(例如,Get_Parameter(获得_参数)请求消息)来查询阱设备135以确定阱设备135是否能够支持将TCP传输用于媒体数据,包括双模通信,其中双模通信可包括支持UDP和/或TCP上的RTP媒体内容传输。
在一个示例中,在能力协商规程期间,阱设备135可以生成对于查询的响应来指示阱设备135是否能够支持双模通信(即,UDP和TCP)。一旦能力协商规程结束,源设备115就可以建立与阱设备135的通信以经由UDP或TCP将RTP媒体内容流送到阱设备。
现在参照图2A,框图200-a解说了根据各个实施例的源设备115-a。源设备115-a可以是参照图1描述的源设备115中的一者的一个或多个方面的示例。源设备115-a也可以是处理器。源设备115-a可包括源接收机205、通信管理组件210和源发射机215。这些组件中的每一者可以彼此处于通信。
源设备115-a的组件可个体地或共同地用一个或多个适配成以硬件执行一些或所有适用功能的专用集成电路(ASIC)来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用可按本领域所知的任何方式来编程的其他类型的集成电路(例如,结构化/平台ASIC、现场可编程门阵列(FPGA)、以及其他半定制IC)。每个单元的功能也可以整体或部分地用存储在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。在一个实施例中,图2A中所示的组件各自可包括用于执行本文中所描述的功能的电路或电路***。
源接收机205可经由一个或多个信号202接收来自阱设备(诸如参照图1所描述的阱设备135中的一者或多者)的通信。接收到的通信可以是任何合适形式的数据。源接收机205可经由在参照图1所描述的源设备115-a与阱设备135之间建立的无线(例如Wi-Fi)对等连接来接收这些通信。通信管理组件210可以管理由源设备115-a经由一个或多个信号204接收到的通信。附加地,通信管理组件210可以经由一个或多个信号206管理从源设备115-a传送给(诸)阱设备的通信。进一步,通信管理组件210可以处理该数据以控制或以其他方式管理用于向一个或多个阱设备135提供音频和/或视频流、图形资源、通信、和/或控制指令的源设备115-a的各方面。
源发射机215可经由一个或多个信号208向阱设备(诸如参照图1所描述的阱设备135中的一者或多者)传送通信。所传送的通信可包括诸如图形资源、音频和/或视频流、和/或通信指令等数据。源发射机215可经由在源设备115-a与阱设备135之间建立的无线(例如Wi-Fi)对等连接来传送这些通信。关于通信管理组件名210的细节将在以下描述。
图2B是解说根据各个实施例的源设备115-b的框图200-b。源设备115-b可以是参照图1和/或2A描述的源设备115之一的一个或多个方面的示例。源设备115-b也可以是处理器。设备115-b可包括源接收机205-a、通信管理组件210-a、以及源发射机215-a。这些组件中的每一者可彼此处于通信。
源设备115-b的组件可个体地或整体地使用一个或多个适配成以硬件执行一些或所有适用功能的ASIC来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用其他类型的集成电路(例如,结构化/平台AISC、FPGA、以及其他半定制IC),其可按本领域已知的任何方式来编程。每个单元的功能也可以整体或部分地用实现在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。在一个实施例中,图2B中所示的组件各自可包括用于执行本文中所描述的功能的电路或电路***。
源发射机215-a可如先前参照图2A描述地配置。源接收机205-a也可如先前参照图2A描述地配置。通信管理组件210-a可包括多协议通信组件220、能力分析组件225和回放控制组件230。
在一个实施例中,多协议通信组件220可配置成允许源设备115-b支持多协议上(诸如UDP和TCP)的与阱设备的通信。在一个示例中,多协议通信组件220可以在初始会话期间使用UDP初始化与阱设备的通信以传送音频/视频数据。在另一示例中,多协议通信组件220可选择TCP上传送作为与阱设备通信的缺省初始设置。选择由源设备115-b支持的多个传输协议中的一者可以至少部分基于阱设备的能力、媒体内容的类型、网络条件和/或阱设备处的可用缓冲器。再进一步,多协议通信组件220可以配置成允许源设备115-b基于预定因素在UDP和TCP之间动态切换。
能力分析组件225可以辅助多协议通信组件220通过查询阱设备的能力并且确定多个传输协议中的哪一个最适于流送媒体内容来选择恰适的传输协议。能力分析组件225在Wi-Fi对等远程显示会话期间可以生成针对阱设备的一个或多个查询。在一个示例中,能力分析组建225可以查询阱设备以确定阱设备是否支持UDP和/或TCP协议以及阱设备使用的相关联的端口信息。在还有另一示例中,能力分析组建225可以附加地查询阱设备以查询其解码器等待时间以及源设备能够分配的初始缓冲器大小。响应于所传送的查询,能力分析组件225可以从阱设备接收向源设备115-b指示其能力的一个或多个消息。
在一个示例中,回放控制组件230可以向阱设备发出控制命令(例如,清除缓冲器、音量控制等)。在一些示例中,需要清除阱设备的缓冲器从而允许阱设备开始缓冲新数据而不播放先前缓冲的数据。类似地,回放控制组件230可以发出音量控制命令从而在阱设备处调节媒体内容的音量。音量控制命令可以调节阱设备处的音量而不管从源设备传送的流中的音频的音量等级。音量控制的一些示例可包括音量增大、音量减小、静音和/或取消静音。回放控制组件230可发出控制命令同时在UDP或者TCP上传送媒体内容。本领域普通技术人员应当理解,回放控制组件230命令并不排他地限于清除缓冲器和/或音量控制
现在参照图2C,框图200-c解说了根据各个实施例的源设备115-c。源设备115-c可以是参照图1、2A和/或2B描述的源设备115之一的一个或多个方面的示例。源设备115-c也可以是处理器。设备115-c可包括源接收机205-b、通信管理组件210-b、以及源发射机215-b。这些组件中的每一者可彼此处于通信。
源设备115-c的组件可个体地或整体地使用一个或多个适配成以硬件执行一些或所有适用功能的ASIC来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用其他类型的集成电路(例如,结构化/平台AISC、FPGA、以及其他半定制IC),其可按本领域已知的任何方式来编程。每个单元的功能也可以整体或部分地用实现在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。在一个实施例中,图2C中所示的组件各自可包括用于执行本文中所描述的功能的电路或电路***。
源发射机215-b可如先前参照图2A和/或2B描述地配置。源接收机205-b也可如先前参照图2A和/或2B描述地配置。通信管理组件210-b可包括如参照图2B所描述的多协议通信组件220-a、能力分析组件225-a和回放控制组件230-a。
在一个实施例中,多协议通信组件220-a可进一步包括TCP端口组件235、UDP端口组件240和动态切换组件245。多协议通信组件220-a可利用TCP端口组件235来在TCP上向阱设备传送RTP媒体内容。在一些示例中,TCP端口组件235可以在应用和网际协议(IP)层之间的中间级处提供通信服务。当容忍等待时间的通信(例如,回放存储的媒体)要在无线链路上被传送到阱设备时,TCP端口组件235可以开启或创建TCP端口。类似地,UDP端口组件240被用来在UDP上从源设备115-c向阱设备传送RTP媒体内容。在一些示例中,UDP端口组件240可在Wi-Fi对等远程显示会话期间在直接无线链路上向至少一个阱设备传送消息和/或数据报。当不容忍等待时间的通信(诸如,实时流送媒体)要跨无线链路被传送到阱设备时,UDP端口组件240可以开启或创建UDP端口。
在还有进一步的示例中,动态切换组件245可以至少部分基于如由能力分析组件225-a确定的阱设备的能力、媒体内容的类型、网络条件和/或可用缓冲器空间而将传输协议从第一协议切换到第二协议。该第一和第二协议可以是UDP和/或TCP。能力分析组件225-a可如先前参照图2B描述地配置。在一个示例中,在从阱设备接收响应之际,动态切换组件245可以通过发出包括简档和端口信息的RTSP请求消息(例如,RTSP SET_PARAMETER(设置_参数)请求)来发起将传输协议的使用从第一协议切换到第二协议。在一些实例中,第一协议可以是UDP且第二协议可以是TCP。替换地,在其他实例中,第一协议可以是TCP且第二协议可以是UDP。
在一个示例中,在接收到响应于针对设立媒体数据的TCP传输而发出的RTSP SET_PARAMETER请求的肯定响应之际,源设备115-c可以建立与阱设备的通信。在一些示例中,阱设备可以配置为TCP服务器,而源设备115-c作为TCP客户端来操作。在一个示例中,在从第一协议切换到第二协议之前、期间和/或之后改变音频和/或视频格式是必要的,其中第一或第二协议可以是UDP或TCP。
在一些示例中,动态切换组件245可以在从第一协议动态切换到第二协议之前进一步请求分配阱设备中指定量的缓冲器空间。源设备115-c可包括初始缓冲器大小作为其可发送到阱设备的RTSP SET_PARAMETER请求消息的参数。预定的最小缓冲器空间的分配是必要的,因为源设备115-c和阱设备之间的Wi-Fi链路可以是抖动和/或易出错的。结果,在阱设备处提供预定最小缓冲量来平滑由信道中的错误(例如,数据重传等)所导致的抖动和分组等待时间并维持在阱设备处渲染的视频的良好质量。在一些示例中,由源设备115基于用于从源设备115-c传送到阱设备以供呈现的媒体流的应用类型来动态地控制阱缓冲器大小。例如,这些技术可以针对游戏应用选择较小的缓冲器大小,针对交互式媒体应用(例如,交互式计算、演示、双向通信等)选择较大的缓冲器大小,以及针对非交互式媒体类型(例如,流送视频、静态图像等)选择甚至更大的缓冲器大小。
源设备115-c可进一步包括允许用户选择与阱设备135处的缓冲量有关的偏好的用户设置。例如,用户可以能够在媒体流的较低等待时间或较高可靠性显示之间选择偏好,并且源设备115-c可相应地调整阱缓冲器大小。用户可以进一步能够针对个体应用或针对个体媒体流基于使用类别来设置阱缓冲器大小偏好。在一些示例中,用户可以能够在将传输从第一协议切换到第二协议之前直接设置阱缓冲器大小(例如,以ms计,等)。
在还有另一示例中,回放控制组件230-a可以确定是否向阱设备发出控制命令(例如,清除缓冲器、音量控制等)。清除控制组件250可以至少部分基于请求阱设备处当前呈现时间和音频和/或视频流的缓冲的数据量的查询来确定是否清除阱设备的缓冲器。表1解说了关于针对音频和视频定时和缓冲器状态的请求在源设备115-c和阱设备之间交换的消息的一个示例。
表1
至少部分基于来自阱设备的响应,清除控制组件250可以清除阱设备的缓冲器,从而允许阱设备开始缓冲新数据而不播放先前缓冲的数据。清除控制组件250可以向阱设备发出RTSP请求消息(例如,RTSP SET_PARAMETER请求)以将阱设备的缓冲器清除到指定呈现时间戳(PTS)和/或解码时间戳(DTS)值。在一些示例中,清除控制组件250可以在向阱设备发出具有与从源设备115-c传送到阱设备的最大PTS相关联的PTS值的清除命令之前,暂停流送媒体内容。在从来自阱设备的响应中接收到成功RTSP响应或失败消息之际,源设备115-c可以恢复如先前所调度的在UDP或TCP上流送RTP数据。
类似地,回放控制组件230-a的音量控制组件255可以发出音量控制命令从而在阱设备处调节媒体内容的音量。音量控制命令可以调节阱设备处的音量而不管从源设备115-c传送的流中的音频的音量等级。音量控制的一些示例可包括音量增大、音量减小、静音和/或取消静音。
现在参照图3A,框图300-a解说了根据各个实施例的阱设备135-a。阱设备135-a可以是参照图1、2A、2B和2C描述的阱设备135中的一者的一个或多个方面的示例。阱设备135-b也可以是处理器。阱设备135-b可包括阱接收机305、通信建立组件310、以及阱发射机315。这些组件中的每一者可彼此处于通信。
阱设备135-a的组件可个体地或整体地使用一个或多个适配成以硬件执行一些或所有适用功能的ASIC来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用其他类型的集成电路(例如,结构化/平台AISC、FPGA、以及其他半定制IC),其可按本领域已知的任何方式来编程。每个单元的功能也可以整体或部分地用实现在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。在一个实施例中,图3A中所示的组件各自可包括用于执行本文中所描述的功能的电路或电路***。
阱接收机305可经由一个或多个信号302接收来自一个或多个源设备(诸如参照图1、2A、2B和/或2C描述的源设备115)的通信。如本文所描述的,该通信可包括音频和/或视频流、图形资源、和/或渲染指令。阱接收机305可经由在阱设备135-a与一个或多个源设备115之间建立的无线(例如,Wi-Fi)对等连接来接收这些通信。通信建立组件310可以管理由阱设备135-a经由一个或多个信号304接收到的此类通信。附加地,通信建立组件310可以经由一个或多个信号306管理从阱设备135-a传送给(诸)源设备的通信。如本文描述的,这些通信可包括表示阱设备135-a处用于与(诸)源设备和/或在(诸)源设备上运行的一个或多个应用进行交互的用户输入的数据。阱发射机315可以通过Wi-Fi连接经由一个或多个信号308从阱设备135-a传送此类数据。关于通信建立组件310的进一步细节将在以下描述。
图3B是解说根据各个实施例的阱设备135-b的框图300-b。阱设备135-a可以是参照图1、2A、2B、2C和/或3A描述的阱设备135中的一者的一个或多个方面的示例。阱设备135-b也可以是处理器。阱设备135-b可包括阱接收机305-a、通信建立组件310-a、以及阱发射机315-a。这些组件中的每一者可彼此处于通信。
阱设备135-b的组件可个体地或整体地使用一个或多个适配成以硬件执行一些或所有适用功能的ASIC来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用其他类型的集成电路(例如,结构化/平台AISC、FPGA、以及其他半定制IC),其可按本领域已知的任何方式来编程。每个单元的功能也可以整体或部分地用实现在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。在一个实施例中,图3B中所示的组件各自可包括用于执行本文中所描述的功能的电路或电路***。
阱接收机305-a和阱发射机315-a可如先前参照图3A所描述地那样配置。通信建立组件310-a可包括双模通信组件320、缓冲器管理组件325、查询响应组件330和回放控制接收组件335。
双模通信组件320可配置成解码经由UDP或TCP传输协议接收自源设备的媒体内容。在此类实例中,双模通信组件320可以通过向查询响应组件330提供向源设备传送阱设备135b配置成在UDP和TCP二者上接收媒体内容的响应的指示来向该源设备标识其能力。
缓冲器管理组件325可以配置成管理阱设备135-b的缓冲器。在一些示例中,源设备可以请求分配阱设备135-b中指定量的缓冲器空间以平滑由信道中的错误(例如,数据的重传等)引起的抖动和分组等待时间,并且维持阱设备135-b处渲染的视频的良好质量。在一些示例中,基于用于从源设备传送到阱设备以供呈现的媒体流的应用类型来动态地分配阱缓冲器大小。结果,缓冲器管理组件325可以配置成在显示器设备(未示出)上渲染媒体内容之前,在缓冲器中缓冲预定量的媒体内容。缓冲器管理组件325可进一步响应于源设备发出的清除命令。在此类实例中,缓冲器管理组件325可以将缓冲器清除到指定PTS值。在一些示例中,缓冲器管理组件325可以进一步响应于由源设备发出的查询而向查询响应组件330提供关键信息。关键信息可包括初始缓冲器大小、正在播放的音频和/或视频流的当前呈现时间和可用缓冲器空间。
查询响应组件330可收集来自双模通信组件320和缓冲器管理组件325的信息以响应于向阱设备135-b请求信息的所发出的查询来生成去往源设备的消息。在还有进一步的示例中,回放控制接收组件335可以配置成接收控制信息(诸如,音量控制)以调节从源设备流送到阱设备135-b的媒体内容的音量。作为响应,回放控制接收组件335可以调节阱设备处的音量而不管从源设备传送的流中的音频的音量等级。在一些示例中,音量控制的一些示例可包括音量增大、音量减小、静音和/或取消静音。
图4是解说根据各个实施例的设备115-d的框图400。设备115-d可以是参照图1、2A、2B和/或2C描述的源设备115中的一者的一个或多个方面的示例。设备115-d可以配置成(例如,经由Wi-Fi对等连接)参与与其他无线设备的Wi-Fi直接通信来为(诸)另一设备提供内容。设备115-d可具有各种示例中的任一者,诸如个人计算机(例如,膝上型计算机、上网本计算机、平板计算机等)、蜂窝电话、PDA、数字视频记录器(DVR)、因特网电器、游戏控制台、电子阅读器等。设备115-d可具有内部电源(未示出),诸如小电池,以促成移动操作。
设备115-d包括天线410、收发机415、存储器425和处理器435,其各自可彼此直接或间接通信(例如,经由一条或多条总线455)。如上所述,收发机415被配置成经由天线410进行双向通信。例如,收发机415可被配置成与图1、2A、2B、2C、3A和/或3B的其他设备115和/或135进行双向通信。如先前所描述的,收发机415可包括图2的接收机205和发射机215。在一个实施例中,收发机415可进一步包括调制解调器,该调制解调器被配置成调制分组并将经调制分组提供给天线410以供发射,以及解调从天线410接收到的分组。虽然设备115-d可包括单个天线,但设备115-d将通常包括用于多条链路的多个天线410。
存储器425可包括随机存取存储器(RAM)和只读存储器(ROM)。存储器425可以存储包含指令的计算机可读、计算机可执行软件代码430,这些指令被配置成在被执行时致使处理器435执行本文描述的各种功能(例如,标识/确定/获取音频和/或视频流、图形资源和/或渲染指令、接收、传送等)。替换地,软件430可以是不能由处理器435直接执行的,而是被配置成(例如,在被编译和执行时)使计算机执行本文所描述的功能。
处理器435可包括智能硬件设备,例如,中央处理单元(CPU)、微控制器、ASIC等。根据图4的架构,设备115-d可进一步包括如参照图2A和2B所描述的多协议通信组件220-b、能力分析组件225-b和回放控制组件230-b。多协议通信组件220-b、能力分析组件225-b和回放控制组件230-b可以是经由总线455与设备115-d的一些或所有其他组件处于通信的设备115-d的组件。
设备115-d的各组件可个体地或整体地使用一个或多个适配成以硬件执行一些或所有适用功能的ASIC来实现。替换地,这些功能可以由一个或多个集成电路上的一个或多个其他处理单元(或核)来执行。在其他实施例中,可使用可按本领域所知的任何方式来编程的其他类型的集成电路(例如,结构化/平台ASIC、FPGA、以及其他半定制IC)。每个单元的功能也可以整体或部分地用实施在存储器中的、被格式化成由一或多个通用或专用处理器执行的指令来实现。所述组件中的每一者可以是用于执行与如本文描述的设备115-d的操作有关的一个或多个功能的装置。
图5是解说源设备115-e与阱设备135-c之间的通信的一个示例的消息流图500。源设备115-e可以是图1、2和/或4的设备115的示例。阱设备135-c可以是图1和/或3中所解说的阱设备135的示例。在一个示例中,源设备115-e和阱设备135-c可经由Wi-Fi对等连接来连接。源设备115-e已经使用UDP传输协议建立了与阱设备135-c的通信。替换地,本领域技术人员应当理解,源设备115-e和阱设备135-c之间的缺省通信链路并不限于UDP上的RTP媒体数据传输,也可以替换地包括TCP传输协议。
参见图5,源设备115-e可以向阱设备135-c传送RTSP“获得参数请求”505,从而查询阱设备135-c的能力。“获得参数请求”505可以请求信息,诸如,阱设备135-c是否支持TCP协议、用于TCP传输上RTP的端口信息、解码器等待时间和/或阱设备135-c的初始缓冲器大小。作为响应,阱设备135-c可以发出RTSP“获得参数响应”510,该RTSP“获得参数响应”510指示了阱设备135-c是否能够解码TCP上的RTP媒体内容连同用于TCP传输的端口信息,以及所请求的缓冲器大小值。在响应于来自源设备115-e的TCP的RTSP“获得参数请求”505从阱设备135-c返回“RTSP OK”510之际,阱设备135-c启动其TCP服务器并且准备在指定端口中接纳TCP上的连接。表2示出了针对由源设备115-e发出的查询的源设备115-e和阱设备135-c之间的交换的示例。在一个示例中,参照图1和/或2描述的源设备115的通信管理组件210和参照图3描述的阱设备135的通信建立组件310可以执行一组或多组代码以分别控制源设备115-e和阱设备135-c的功能元件以执行以下所描述的功能。
表2
源设备115-e在从阱设备135-c接收到能力信息之际可以用RTSP“设置参数请求”515回复以发起将媒体内容的传送从UDP上的RTP切换成TCP上的RTP。在一些示例中,从第一传输协议到第二传输协议的切换包括源设备和阱设备中的内部暂停。“设置参数请求”515可包括包含RTP/AVP/TCP简档和端口信息的具有wfd-rtp-clent-over-tcp-ports参数的RTSP设立请求。作为回应,阱设备135-c可以执行阱设备135-c处的TCP服务器并且返回指示阱设备135-c已经开启其TCP服务器并且准备接纳来自源设备115-e的连接的RTSP“设置参数响应”520。
源设备115-e在接收到确认的“设置参数响应”520之际可以通过在TCP525上传送RTP媒体内容来开始与阱设备135-c的通信。当RTP数据要在TCP传输上发送时,可以根据IETF RFC 4571,“对面向连接的传输上的实时传输协议(RTP)和RTP控制协议(RTCP)分组进行组帧”来将每个RTP分组数据组帧。阱设备135-c可以在阱设备135-c的显示器上渲染流送的媒体内容530。表3解说了以上所解说的针对将传输从UDP切换到TCP和/或从TCP切换到UDP的源设备115-e和阱设备135-c之间的消息交换的一个示例。本领域技术人员将会领会所解说的示例并不限于指定示例。
表3
在进一步的示例中,源设备115-e可以至少部分基于内容的类型和/或网络条件来再次寻求返回到在UDP上传送媒体内容。在此类实例中,源设备115-e可以发出“设置参数请求”535来发起将传输协议从TCP切换到UDP的过程。结果,阱设备135-c可以用“设置参数响应”540来响应以指示阱设备135-c配置成从在TCP上接收RTP数据切换成在UDP上接收RTP数据。最终,源设备115-e可以恢复在UDP 545上流送媒体内容,这可以在阱设备135-c上渲染和显示550。
图6是解说源设备115-f与阱设备135-d之间的通信的另一个示例的消息流图600。源设备115-f可以是图1、2、4和/或5的设备115的示例。阱设备135-d可以是图1和/或3中所解说的阱设备135的示例。在一个示例中,源设备115-f和阱设备135-d可经由Wi-Fi对等连接来连接。源设备115-f可以使用UDP或TCP传输协议建立与阱设备135-d的通信。
在一些示例中,源设备115-f可以发出回放控制命令,诸如对阱设备135-d的清除命令和音量控制命令。然而,类似于参照图5描述的方式,控制命令的发出之前是在源设备115-f和阱设备135-的之间建立能力协商规程。参照图6,该协商基于分别在源设备115-f和阱设备135-d之间交换的RTSP“获得参数请求”605和RTSP“获得参数响应”610。在此之后,源设备115-f可以发出标识从源设备115-f传送到阱设备135-d的数据分组的PTS值的清除命令615,该阱设备135-d可以将其相应缓冲器清除到该PTS值。在成功处理该发出的清除命令之际,阱设备135-d可以用确认响应620来响应。最终,阱设备135-d可以将阱设备135-d的缓冲器清除625至PTS值。图4解说了源设备115-f和阱设备135-d之间交换的清除命令的一个示例。
表4
类似地,源设备115-f可以向阱设备135-d发出音量控制命令630以调节去往阱设备135-d的数据流的音量。在成功处理该发出的音量控制命令630之际,阱设备135-d可以用确认响应635来响应。最终,阱设备135-d可以调节或更新阱设备135-d处的媒体内容640的音量。阱设备135-d处的音量可以被调节或更新而不管从源设备115-f传送的流中的音频的音量等级。音量控制的一些示例可包括音量增大、音量减小、静音和/或取消静音。表5解说了由参照图2C所描述的源设备115的音量控制组件255发起的源设备115-f和阱设备135-d之间的音量控制交换的一个示例。
表5
图7解说了由源设备115执行的用于与阱设备135进行无线通信的方法700。为清楚起见,以下参照图1所示的***100,和/或参照关于图1、2A、2B、2C、4、5和/或6描述的设备115中的一者来描述方法700。在一个实现中,参照图2A、2B和/或2C描述的通信管理组件210可执行一个或多个代码集以控制源设备115的功能元件执行以下描述的功能。
在方法700的框705处,源设备115在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流。框705的(诸)操作可以由参照图2A、2B和/或2C描述的通信管理组件210和/或多协议通信组件220来执行。
在方法700的框710处,源设备115可以标识由阱设备135支持的第二协议。框710的(诸)操作可以由如参照图2B和/或2C所描述的能力分析组件225执行。在框715处,源设备115可以在Wi-Fi对等远程显示会话期间动态切换到第二协议来传送媒体流。框715的(诸)操作可以由如参照图2C所描述的动态切换组件245执行。
图8解说了由源设备115执行的用于与阱设备135进行无线通信的方法800。为清楚起见,以下参照图1所示的***100,和/或参照关于图1、2A、2B、2C、4、5和/或6描述的设备115中的一者来描述方法800。在一个实现中,参照图2A、2B和/或2C描述的通信管理组件210可执行一个或多个代码集以控制源设备115的功能元件执行以下描述的功能。
在方法800的框805处,源设备115在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流。框805的(诸)操作可以由参照图2A、2B和/或2C描述的通信管理组件210和/或多协议通信组件220来执行。
在方法800的框810处,源设备115可以向阱设备传送查询以确定阱设备是否能够支持TCP传输协议连同用于TCP连接的端口信息。框810的(诸)操作可以由如参照图2B和/或2C所描述的能力分析组件225执行。在框815,源设备115可以接收响应于该查询的确认阱设备支持TCP的消息以及阱设备会监听的相关联的TCP端口。框815的(诸)操作可以由如参照图2A、2B和/或2C所描述的源接收机205执行。
在方法800的框820处,源设备115可以在Wi-Fi对等远程显示会话期间动态切换到第二协议来传送媒体流。框820的(诸)操作可以由如参照图2C所描述的动态切换组件245执行。
以上结合附图阐述的详细说明描述了示例性实施例而不代表可被实现或者落在权利要求的范围内的仅有实施例。贯穿本描述使用的术语“示例性”意指“用作示例、实例或解说”,而并不意指“优于”或“胜过其他实施例”。本详细描述包括具体细节以提供对所描述的技术的理解。然而,可以在没有这些具体细节的情况下实践这些技术。在一些实例中,众所周知的结构和设备以框图形式示出以避免模糊所描述的实施例的概念。
信息和信号可使用各种各样的不同技艺和技术中的任一种来表示。例如,贯穿上面描述始终可能被述及的数据、指令、命令、信息、信号、位(比特)、码元、以及码片可由电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示。
在各实施例中,图2A、2B、2C、3A、3B和4中所示的各组件各自包括用于执行本文中参照图2A、2B、2C、3A、3B和4所描述的各功能的电路或电路***。
结合本文中的公开所描述的各种解说性框以及组件可用设计成执行本文中描述的功能的通用处理器、数字信号处理器(DSP)、ASIC、FPGA或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。通用处理器可以是微处理器,但在替换方案中,处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、与DSP核心协作的一个或多个微处理器、或任何其他此类配置。
本文中所描述的功能可以在硬件、由处理器执行的软件、固件、或其任何组合中实现。如果在由处理器执行的软件中实现,则各功能可以作为一条或多条指令或代码存储在计算机可读介质上或藉其进行传送。其他示例和实现落在本公开及所附权利要求的范围和精神内。例如,由于软件的本质,以上描述的功能可使用由处理器执行的软件、硬件、固件、硬连线或其任何组合来实现。实现功能的特征也可物理地位于各种位置,包括被分布以使得功能的各部分在不同的物理位置处实现。同样,如本文中(包括权利要求中)所使用的,在项目列举中(例如,在接有诸如“...中的至少一个”或“…中的一者或多者”的短语的项目列举中)使用的“或”指示析取式列举,以使得例如“A、B或C中的至少一个”的列举意指A或B或C或AB或AC或BC或ABC(即,A和B和C)。
计算机可读介质包括计算机存储介质和通信介质两者,包括促成计算机程序从一地向另一地转移的任何介质。存储介质可以是能被通用或专用计算机访问的任何可用介质。作为示例而非限定,计算机可读介质可以包括RAM、ROM、电可擦除可编程ROM(EEPROM)、紧致盘ROM(CD-ROM)或其他光盘存储、磁盘存储或其他磁存储设备、或能被用来携带或存储指令或数据结构形式的期望程序代码手段且能被通用或专用计算机、或者通用或专用处理器访问的任何其他介质。任何连接也被正当地称为计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字订户线(DSL)、或诸如红外、无线电、以及微波之类的无线技术从web网站、服务器、或其他远程源传送而来,则该同轴电缆、光纤电缆、双绞线、DSL、或诸如红外、无线电、以及微波之类的无线技术就被包括在介质的定义之中。如本文所使用的盘(disk)和碟(disc)包括CD、激光碟、光碟、数字通用碟(DVD)、软盘和蓝光碟,其中盘常常磁性地再现数据而碟用激光来光学地再现数据。上述的组合也被包括在计算机可读介质的范围内。
提供对本公开的先前描述是为使得本领域技术人员皆能够制作或使用本公开。对本公开的各种修改对本领域技术人员而言将容易是显而易见的,并且本文中所定义的普适原理可被应用到其他变型而不会脱离本公开的精神或范围。贯穿本公开的术语“示例”或“示例性”指示了示例或实例并且并不暗示或要求对所提及的示例的任何偏好。由此,本公开并非被限定于本文中所描述的示例和设计,而是应被授予与本文中所公开的原理和新颖性特征相一致的最广范围。

Claims (24)

1.一种用于无线通信的方法,包括:
由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流;
标识由所述阱设备支持的第二协议;以及
在所述Wi-Fi对等远程显示会话期间动态切换到所述第二协议以传送所述媒体流;
其中,标识由所述阱设备支持的所述第二协议包括:
向所述阱设备传送查询以确定所述阱设备是否支持传输控制协议(TCP)以及用于TCP连接的一个或多个端口;以及
接收响应于所述查询而确认所述阱设备支持TCP的消息以及端口信息。
2.如权利要求1所述的方法,其特征在于,所述第一协议包括用户数据报协议(UDP),且所述第二协议包括传输控制协议(TCP)。
3.如权利要求1所述的方法,其特征在于,进一步包括:
查询所述阱设备以确定所述阱设备的解码器等待时间和缓冲器大小。
4.如权利要求1所述的方法,其特征在于,进一步包括:
响应于所接收到的消息向所述阱设备传送设立请求,其中所述设立请求包括简档和端口信息。
5.如权利要求1所述的方法,其特征在于,动态切换到所述第二协议至少部分基于媒体内容的类型、网络条件或所述阱设备处的可用缓冲器空间。
6.如权利要求5所述的方法,其特征在于,进一步包括:
在发起回放之前至少部分基于媒体内容的类型、网络条件或所述阱设备处的可用缓冲器空间来选择由所述阱设备用于缓冲媒体流的缓冲器大小;以及
向所述阱设备传送所选择的缓冲器大小。
7.如权利要求1所述的方法,其特征在于,进一步包括:
查询所述阱设备以查询正在播放的媒体流的呈现时间戳(PTS)值以及等待被播放的媒体流的待决缓冲器大小;以及
接收响应于所述查询的,指示正在播放的所述媒体流的所述PTS值和等待被播放的所述媒体流的所述待决缓冲器大小的消息。
8.如权利要求7所述的方法,其特征在于,进一步包括:
发出清除控制命令以清除所述阱设备的缓冲器。
9.如权利要求8所述的方法,其特征在于,所述清除控制命令指令所述阱设备丢弃所述缓冲器中的数据直到具有所述PTS值的数据分组。
10.如权利要求1所述的方法,其特征在于,进一步包括:
向所述阱设备发出音量控制命令,其中所述音量控制命令控制所述阱设备处的所述媒体流的回放音量。
11.一种用于无线通信的装置,包括:
处理器;
与所述处理器处于电子通信的存储器,所述存储器实施指令,所述指令能由所述处理器执行以:
由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流;
标识由所述阱设备支持的第二协议;以及
在所述Wi-Fi对等远程显示会话期间动态切换到所述第二协议以传送所述媒体流;
其中,所述能由所述处理器执行以标识由所述阱设备支持的所述第二协议的指令进一步能由所述处理器执行以:
向所述阱设备传送查询以确定所述阱设备是否支持传输控制协议(TCP)以及用于TCP连接的一个或多个端口;以及
接收响应于所述查询而确认所述阱设备支持TCP的消息以及端口信息。
12.如权利要求11所述的装置,其特征在于,所述第一协议包括用户数据报协议(UDP),且所述第二协议包括传输控制协议(TCP)。
13.如权利要求11所述的装置,其特征在于,所述指令进一步能由所述处理器执行以:
查询所述阱设备以确定所述阱设备的解码器等待时间和缓冲器大小。
14.如权利要求11所述的装置,其特征在于,所述指令能进一步由所述处理器执行以:
响应于所接收到的消息向所述阱设备传送设立请求,其中所述设立请求包括简档和端口信息。
15.如权利要求11所述的装置,其特征在于,动态切换到所述第二协议至少部分基于媒体内容的类型、网络条件或所述阱设备处的可用缓冲器空间。
16.如权利要求15所述的装置,其特征在于,所述指令进一步能由所述处理器执行以:
在发起回放之前至少部分基于媒体内容的类型、网络条件或所述阱设备处的可用缓冲器空间来选择由所述阱设备用于缓冲媒体流的缓冲器大小;以及
向所述阱设备传送所选择的缓冲器大小。
17.如权利要求11所述的装置,其特征在于,所述指令进一步能由所述处理器执行以:
查询所述阱设备以查询正在播放的媒体流的呈现时间戳(PTS)值以及等待被播放的媒体流的待决缓冲器大小;以及
接收响应于所述查询的,指示正在播放的所述媒体流的所述PTS值和等待播放的所述媒体流的所述待决缓冲器大小的消息。
18.如权利要求17所述的装置,其特征在于,所述指令进一步能由所述处理器执行以:
发出清除控制命令以清除所述阱设备的缓冲器。
19.如权利要求18所述的装置,其特征在于,所述清除控制命令指令所述阱设备丢弃所述缓冲器中的数据直到具有所述PTS值的数据分组。
20.如权利要求11所述的装置,其特征在于,所述指令进一步能由所述处理器执行以:
向所述阱设备发出音量控制命令,其中所述音量控制命令控制所述阱设备处的所述媒体流的回放音量。
21.一种用于无线通信的装置,包括:
用以由源设备在Wi-Fi对等远程显示会话期间发起在第一协议上去往阱设备的媒体流的多协议通信组件;
用以标识由所述阱设备支持的第二协议的能力分析组件;以及
用以在所述Wi-Fi对等远程显示会话期间动态切换到所述第二协议以传送所述媒体流的动态切换组件;
发射机,其用以向所述阱设备传送查询以确定所述阱设备是否能够支持传输控制协议(TCP)以及用于TCP连接的一个或多个端口;以及
接收机,其用以接收响应于所述查询而确认所述阱设备支持TCP的消息以及端口信息,其中所述发射机和所述接收机与所述能力分析组件处于通信以标识由所述阱设备支持的所述第二协议。
22.如权利要求21所述的装置,其特征在于,所述第一协议包括用户数据报协议(UDP),且所述第二协议包括传输控制协议(TCP)。
23.如权利要求21所述的装置,其特征在于,所述能力分析组件进一步用以:
查询所述阱设备以确定所述阱设备的解码器等待时间和缓冲器大小。
24.如权利要求21所述的装置,其特征在于:
所述发射机进一步用以响应于所接收到的消息向所述阱设备传送设立请求,其中所述设立请求包括简档和端口信息。
CN201580017793.0A 2014-04-10 2015-04-08 实时传输协议的流送控制 Active CN106165368B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461978121P 2014-04-10 2014-04-10
US61/978,121 2014-04-10
US14/680,259 2015-04-07
US14/680,259 US9648073B2 (en) 2014-04-10 2015-04-07 Streaming control for real-time transport protocol
PCT/US2015/024825 WO2015157362A1 (en) 2014-04-10 2015-04-08 Streaming control for real-time transport protocol

Publications (2)

Publication Number Publication Date
CN106165368A CN106165368A (zh) 2016-11-23
CN106165368B true CN106165368B (zh) 2019-04-23

Family

ID=54266078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580017793.0A Active CN106165368B (zh) 2014-04-10 2015-04-08 实时传输协议的流送控制

Country Status (8)

Country Link
US (1) US9648073B2 (zh)
EP (1) EP3130127B1 (zh)
JP (1) JP6339226B2 (zh)
KR (1) KR101801127B1 (zh)
CN (1) CN106165368B (zh)
BR (1) BR112016023611A2 (zh)
MX (1) MX357815B (zh)
WO (1) WO2015157362A1 (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6193185B2 (ja) * 2014-07-09 2017-09-06 株式会社東芝 通信装置、端末装置およびプログラム
US10567457B1 (en) * 2014-09-29 2020-02-18 Amazon Technologies, Inc. Dynamic rotation of streaming protocols
FR3030968A1 (fr) * 2014-12-23 2016-06-24 Orange Procede et dispositif de maintien d'associations d'adresses de transport aupres d'une entite de traduction d'adresses
ITUB20155063A1 (it) * 2015-10-16 2017-04-16 Univ Degli Studi Di Roma La Sapienza Roma ?metodo e dispositivo per selezionare dinamicamente ed in modo autonomo nel tempo, la migliore soluzione da usare per la comunicazione fra i diversi nodi di una rete di sensori sottomarina, al fine di adattarsi automaticamente alle condizioni mutevoli dell?ambiente sottomarino?
CN105430433B (zh) * 2015-10-29 2019-02-19 小米科技有限责任公司 信息处理方法及装置
CN105872651A (zh) * 2015-12-18 2016-08-17 乐视移动智能信息技术(北京)有限公司 图像处理方法及装置
KR20170097546A (ko) * 2016-02-18 2017-08-28 에스케이텔레콤 주식회사 이종 네트워크상에서의 컨텐츠 전송 방법 및 이를 위한 장치
WO2017155271A1 (ko) * 2016-03-07 2017-09-14 엘지전자 주식회사 무선 통신 시스템에서 트랜스포트를 통해 스트리밍을 제공받는 방법 및 장치
US10547660B2 (en) * 2016-09-12 2020-01-28 Bose Corporation Advertising media processing capabilities
US9961169B1 (en) * 2016-10-31 2018-05-01 International Business Machines Corporation Implementing autoswitching network protocols for optimal efficiency
CN108616764A (zh) * 2016-12-09 2018-10-02 中兴通讯股份有限公司 一种控制方法及设备
CN106790204A (zh) * 2017-01-03 2017-05-31 北京奇虎科技有限公司 一种流数据的封装协议的转换方法和装置
KR102581438B1 (ko) 2017-01-12 2023-09-21 삼성전자주식회사 무선 디스플레이 서브시스템 및 시스템-온-칩
JP6749281B2 (ja) * 2017-03-23 2020-09-02 エヌ・ティ・ティ・コミュニケーションズ株式会社 IoTデバイス、シグナリングサーバ、メッセージバス管理サーバ、コネクション形成方法、及びプログラム
EP3528469B1 (en) * 2018-02-14 2021-06-30 Tata Consultancy Services Limited Adaptive restful real-time live media streaming
CN109391845A (zh) * 2018-11-23 2019-02-26 深圳市炬力北方微电子有限公司 跨设备显示的动态调整方法
CN109862398A (zh) * 2019-03-29 2019-06-07 北京奇艺世纪科技有限公司 多媒体数据传输方法、装置及***
CN113228605A (zh) * 2019-08-16 2021-08-06 谷歌有限责任公司 场境感知的飞行模式
CN112469012A (zh) * 2019-09-06 2021-03-09 华为技术有限公司 一种蓝牙通信方法及相关装置
TWI774637B (zh) * 2019-10-03 2022-08-11 瑞昱半導體股份有限公司 可動態切換操作模式的多成員藍牙裝置中的副藍牙電路
US11412576B2 (en) 2019-10-03 2022-08-09 Realtek Semiconductor Corp. Auxiliary Bluetooth circuit of multi-member Bluetooth device capable of dynamically switching operation mode
US11134367B2 (en) * 2019-10-03 2021-09-28 Realtek Semiconductor Corp. Main bluetooth circuit of multi-member bluetooth device capable of dynamically switching operation mode
US11570081B2 (en) 2019-10-03 2023-01-31 Realtek Semiconductor Corp. Multi-member bluetooth device capable of dynamically switching operation mode
US11375579B2 (en) 2019-10-03 2022-06-28 Realtek Semiconductor Corp. Multi-member Bluetooth device capable of adaptively switching operation mode in response to data type change of received packets, and related main Bluetooth circuit and auxiliary Bluetooth circuit
TWI727447B (zh) * 2019-10-03 2021-05-11 瑞昱半導體股份有限公司 播放系統與方法
TWI730439B (zh) 2019-10-03 2021-06-11 瑞昱半導體股份有限公司 網路資料播放系統與方法
CN112738706A (zh) * 2019-10-14 2021-04-30 瑞昱半导体股份有限公司 播放***与方法
US11356735B2 (en) * 2019-10-15 2022-06-07 Sling Media Pvt Ltd. Devices, systems and processes for multi-device access, control and presentation of streaming content
KR20210101696A (ko) 2020-02-10 2021-08-19 삼성전자주식회사 버퍼를 제어하기 위한 전자 장치 및 방법
US11212349B1 (en) * 2020-08-31 2021-12-28 Frontiir Pte Ltd. Switching between network protocols for a data storage system
US11902599B2 (en) * 2020-12-09 2024-02-13 Hulu, LLC Multiple protocol prediction and in-session adaptation in video streaming
CN112653925B (zh) * 2020-12-21 2023-03-24 苏州科达特种视讯有限公司 媒体播放的跨设备转移方法、***、设备及存储介质
CN114697736A (zh) * 2020-12-29 2022-07-01 深圳Tcl新技术有限公司 无线投屏方法、***、智能设备及计算机可读存储介质
CN112995182B (zh) * 2021-03-04 2023-04-25 广州市百果园信息技术有限公司 媒体流传输方法、装置、设备及介质
CN113268813B (zh) * 2021-05-28 2022-11-01 成都威爱新经济技术研究院有限公司 一种基于像素流送技术的车辆展示方法及***
US20230007361A1 (en) * 2021-06-30 2023-01-05 Tencent America LLC Bidirectional presentation datastream using control and data plane channels
US11895171B2 (en) 2021-10-01 2024-02-06 Comcast Cable Communications, Llc Method and apparatus for mobile device as temporary content origin
TWI814134B (zh) * 2021-11-16 2023-09-01 財團法人工業技術研究院 虛擬行動架構的遠端渲染系統、方法及裝置
CN115208864B (zh) * 2022-08-12 2024-02-06 阿波罗智联(北京)科技有限公司 数据传输方法、装置、设备、车辆及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012057545A3 (en) * 2010-10-27 2012-07-26 Samsung Electronics Co., Ltd. Method and system for synchronization of audio/video (a/v) stream format change in wireless communication systems

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7720983B2 (en) * 2004-05-03 2010-05-18 Microsoft Corporation Fast startup for streaming media
EP1879347B1 (en) * 2006-07-14 2012-05-30 Sony Europe Limited System and method of audio/video streaming
US8718928B2 (en) * 2008-04-23 2014-05-06 Verizon Patent And Licensing Inc. Traffic monitoring systems and methods
JP5454248B2 (ja) * 2010-03-12 2014-03-26 ソニー株式会社 送信装置、および送信方法
US9137560B2 (en) * 2010-12-10 2015-09-15 Verizon Patent And Licensing Inc. Methods and systems for providing access to content during a presentation of a media content instance
KR20130070330A (ko) 2011-12-19 2013-06-27 주식회사 솔박스 모바일 환경에서 에이치티티피 라이브 스트리밍 프토토콜을 알티에스피 프로토콜로 변환하는 시스템 및 그 방법
US8996762B2 (en) * 2012-02-28 2015-03-31 Qualcomm Incorporated Customized buffering at sink device in wireless display system based on application awareness
JP2014027613A (ja) * 2012-07-30 2014-02-06 Toshiba Corp 映像送信装置、及び映像送信方法
US20140162687A1 (en) * 2012-12-10 2014-06-12 Qualcomm Incorporated Techniques for determining a state of proximity between mobile devices

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012057545A3 (en) * 2010-10-27 2012-07-26 Samsung Electronics Co., Ltd. Method and system for synchronization of audio/video (a/v) stream format change in wireless communication systems

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
An Adaptive Codec Switching Scheme for SIP-Based VoIP;ISMET AKTAS ET AL;《INTERNET OF THINGS,SMART SPACES, AND NEXT GENERATION NETWORKING》;20120827;第347页至第358页

Also Published As

Publication number Publication date
KR20160142314A (ko) 2016-12-12
KR101801127B1 (ko) 2017-11-24
EP3130127A1 (en) 2017-02-15
BR112016023611A2 (pt) 2017-08-15
US20150295982A1 (en) 2015-10-15
WO2015157362A1 (en) 2015-10-15
CN106165368A (zh) 2016-11-23
JP2017517922A (ja) 2017-06-29
US9648073B2 (en) 2017-05-09
MX2016013221A (es) 2017-05-01
JP6339226B2 (ja) 2018-06-06
EP3130127B1 (en) 2020-03-04
MX357815B (es) 2018-07-24

Similar Documents

Publication Publication Date Title
CN106165368B (zh) 实时传输协议的流送控制
CN105230029B (zh) 建立和控制Wi-Fi显示连接的音频和语音反向信道
US20190089760A1 (en) Systems and methods for real-time content creation and sharing in a decentralized network
CN102547394B (zh) Vdi环境下云接入设备通用的音视频重定向方法
CN104412253B (zh) 用于在超文本传输协议上的质量知晓自适应流传输的方法
CN109889543A (zh) 视频传输的方法、根节点、子节点、p2p服务器和***
WO2016197866A1 (zh) 网络唤醒方法、远程服务器和网络交换设备
WO2011150208A2 (en) Seamless transfer of media streams
US20170264929A1 (en) Video and audio transmission method and system thereof
US9088626B2 (en) Interactive event cast to multiple mobile devices
WO2023000894A1 (zh) 一种数据传输方法、装置、服务器、存储介质及程序产品
EP4258710A1 (en) Method for transmitting data in near field, device and system
CN103348657A (zh) 流媒体播放方法、设备及***
EP2957145B1 (en) Method and apparatus for connection between client and server
EP4158920A1 (en) Connected isochronous stream swapping
US20070061469A1 (en) Method of controlling data transmission and network apparatus for transmitting data using the same
Karaagac et al. Light-weight streaming protocol for the Internet of Multimedia Things: Voice streaming over NB-IoT
CN104902199A (zh) 一种投影方法及终端、***
US7860958B2 (en) Network management method for wireless transmission/reception of data streams, and network system and apparatus employing the same
CN107750449A (zh) 用于管理反向信道音频会话的技术
CN103533054A (zh) 多终端间实现协同处理的方法及多终端协同处理装置
US20190098351A1 (en) Method for managing the access right to an item of digital content
CN114793225A (zh) 一种云手机与真机的数据通信方法及***
CA3124111A1 (en) System and method for authentication and login portability for multiscreen discovery and launch of first screen content
Chia et al. Realizing MPEG-4 video transmission over wireless bluetooth link via HCI

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant