降低多媒体系统中等待时间的方法和装置的制造方法

文档序号:10539518阅读:456来源:国知局
降低多媒体系统中等待时间的方法和装置的制造方法
【专利摘要】本发明涉及降低多媒体系统中等待时间的方法和装置。用于接收并回放多媒体数据的宿装置接收数据帧并且如果确定在固定的回放时间周期期间在所述处理管道的一个或多个部分缓冲的媒体数据的量在阈值之上,为了降低等待时间而从它的处理管道放弃数据帧。所述阈值以及因此数据帧被放弃的程度可为了平衡等待时间和所显示的多媒体数据的质量而变化。
【专利说明】
降低多媒体系统中等待时间的方法和装置
技术领域
[0001]本发明一般地涉及多媒体数据(诸如音频和/或视频)的处理,更特别地,涉及从源设备(source device)发送到宿设备(sink device)的数据的端到端等待时间的降低。
【背景技术】
[0002]典型的无线显示(WD)系统包括源设备和一个或多个宿设备。源设备和每一个宿设备可包括,例如,移动电话、平板电脑、膝上型电脑、便携式媒体播放器、或所谓的“智能”电话或平板,每一个都具有向用户重播音频数据和/或在显示器上显示视频信息的能力。通常,源设备将多媒体数据发送给一个或多个参与特定的通信会话的宿设备,在此通信会话中媒体数据在宿端缓冲,然后向用户回放。等待时间(latency) —般地是信号进入和退出系统之间的延迟时段。高等待时间可降低用户体验,低等待时间对于IP上传输的语音和视频系统、视频会议和无线显示系统是个特别的要求。宿端缓冲是端到端等待时间的贡献者。因此,提供具有降低的等待时间的宿设备将是有优利的。
【附图说明】
[0003]本发明,与其目的和优势一起,可参照对优选实施例的以下描述以及附图被最好地理解:
[0004]图1是根据本发明的一个实施例的包括宿装置(sink apparatus)的无线显示系统的原理方框图;
[0005]图2是描述图1的宿装置的操作方法的简化的流程图;
[0006]图3是描述图1的宿装置的进一步的操作方法的简化的流程图。
【具体实施方式】
[0007]下面结合附图详细描述是对本发明目前优选的实施例的描述,而不代表本发明可被实施的唯一形式。应当理解,相同的或等效的功能可由被包含在本发明的实质和范围内的不同实施例来实现。在图中,同样的数字自始至终被用来指示同样的元素。进一步地,术语“包括(comprises) ”、“包含(comprising) ”或任何其它的变形,都是指覆盖非排除性的包括,诸如包括一列元件或步骤的模块、电路、设备部件、结构和方法步骤,不是仅包括那些元件,而是可以包括未清楚地列出的或者这些模块、电路、设备部件或步骤固有的其它元件或步骤。由“包括”引领的元件或步骤,如果没有更多的限制,不排除包括所述元件或步骤的附加的类似的元件或步骤的存在。
[0008]在一个实施例中,本发明提供一种调整宿装置中的等待时间的方法,其中宿装置从源装置接收媒体数据用于回放,并且宿装置包括处理管道。该方法包括步骤:在宿装置中,监测缓存在该处理管道的至少一部分中的媒体数据的量,将监测到的数据的量与预定的阈值进行比较;如果监测到的数据的量超过了预定的阈值,则放弃来自处理管道的媒体数据直到监测到的量降到预定的阈值以下。
[0009]在另一个实施例中,本发明提供一种能够从源装置接收媒体数据用于回放的宿装置。该宿装置包括处理管道和监视器。该监视器监测缓存在处理管道的至少一部分中的媒体数据的量,将监测到的媒体数据的量与预定的阈值进行比较,并且如果监测到的媒体数据的量超过了预定的阈值,则放弃来自处理管道的媒体数据直到监测到的量降到预定的阈值以下。
[0010]在一个实施例中,通过比较分配给位于处理管道的不同位置的媒体数据分组(packet)的时间戳的值来确定缓存的媒体数据的量。
[0011]现在参考图1,示出了根据本发明的一个实施例的宿装置100,其通过无线链路102从远端源103接收多媒体数据。宿装置100的部件构成了无线显示(WD)系统。
[0012]宿装置100包括用户显示器,其包括扬声器104和具有触摸屏106的视觉显示设备105。扬声器104再现宿装置100从源103接收的音频数据,触摸屏106显示宿装置100从源103接收的视频数据。宿装置100具有其它部件,应当理解图1所示的部件仅仅构成了无线显示系统的一个示例性配置。也应当理解,在其它实施例中,扬声器104可由诸如头戴式受话器或单个或多个扬声器系统的多种音频输出设备中的任意一种代替。类似地,在其它实施例中,显示设备105可包括多种视频输出设备中的一种,所述视频输出设备诸如阴极射线管(CRT)、液晶显示器(IXD)、等离子显示器、发光二极管(LED)显示器、有机发光二极管(OLED)显示器或其它类型的具有用户输入装置的显示设备,所述用户输入装置诸如按钮,或在触摸屏的情况下的容性或阻性传感器,或者任何其它类型的输入设备,像虚拟的或实体的键盘或者传感器驱动的输入设备。在其它实施例中,宿装置100可以是单个设备,诸如平板电脑或智能手机。
[0013]宿装置100还包括无线调制解调器107,无线调制解调器107从源103接收携带(流的)多媒体数据分组(其可被安排在数据帧中)的RF信号,并可操作地耦合至插座108,插座108进而可操作地耦合至分组接收器109。分组接收器109的第一输出端可操作地耦合至监视器110。监视器110还在线路111上从视觉显示设备105接收输入。分组接收器109的第二输出端可操作地耦合至流缓冲器112。流缓冲器112的输出端可操作地耦合至解复用器113的输入端。解复用器113的第一输出端可操作地耦合至监视器110。解复用器113的第二输出端可操作地耦合至第一音频缓冲器114和第一视频缓冲器115。
[0014]第一音频缓冲器114的输出端可操作地耦合至音频解码器116,音频解码器116的输出端可操作地耦合至第二音频缓冲器117的输入端。第二音频缓冲器117的输出端可操作地耦合至音频渲染器118的输入端。音频渲染器118的输出端可操作地耦合至第三音频缓冲器119的输入端。第三音频缓冲器119的输出端可操作地耦合至扬声器104及监视器IlOo
[0015]第一视频缓冲器115的输出端可操作地耦合至视频解码器120。视频解码器120的输出端可操作地耦合至第二视频缓冲器121的输入端。第二视频缓冲器121的输出端可操作地耦合至视频渲染器122的输入端。视频渲染器122的输出端可操作地耦合至第三视频缓冲器123的输入端。第三视频缓冲器123的输出端可操作地耦合至视觉显示设备105和监视器110。在一个实施例中,音频和视频渲染器118、122可操作地耦合至监视器110。该监视器还可以向音频和视频解码器116、120、渲染器118、122以及第一、第二和第三音频和视频缓冲器114、117、119和115、121以及123发送指令。
[0016]源103和宿装置100根据任意协议(描述具体协议时发明的彻底理解不是必需的)建立通信会话,然后它们利用传统通信协议在无线链路102上通信。在图1的例子中,从源103发送至宿装置100的音频和视频数据包括诸如电影、电视节目或音乐的多媒体内容,还可包括源103产生的实时内容。音频和视频数据在源103被编码,并典型地以数据分组和视频帧的形式被发送。
[0017]分组接收器109典型地包括传统的混频器、滤波器、放大器和为信号解调而设计的其它部件。在一个实施例中无线链路102是短距离通信信道,类似于W1-Fi,蓝牙(RTM)之类的。在其它例子中,无线链路102构成诸如有线或无线局域网、广域网或因特网的基于分组的网络的部分。另外,无线链路102可被源103和宿装置100利用以创建对等(peer-to-peer)链路。
[0018]解复用器113遵循合适的协议,并可体现为例如微处理器、数字信号处理器(DSP)或专用集成电路(ASID)中。
[0019]音频和视频解码器116、120例如被配置以实现诸如MPEG-TS的任意序号的音频和视频解码协议。在一些实施例中,音频解码器116和视频解码器120被集成为一个单元,用于解码公共数据流中的音频和视频数据。因此,尽管图1示出了分开的携带音频数据和视频数据的信道,可以理解,在一些例子中视频数据和音频数据可以是公共数据流的部分。渲染解码数据的过程由音频渲染器118和视频渲染器122以传统的方式实现。典型地,音频和视频数据被放置在帧中,并且在渲染时音频帧与视频帧同步。
[0020]所描述的宿装置100的部件构成了处理管道,该处理管道用于接收调制并编码的流多媒体数据分组,解调并解码接收的分组,并渲染该数据以在视觉显示设备105和扬声器104上向用户显示。
[0021]如上所述,处理管道还包括各种缓冲器。例如,典型地,数据帧更新可在缓冲器112、114、115、117、121、119、123中的任一个中排队或累积。在一些例子中,一种已知的直接存储器存取操作可被用来取回缓冲器保持的帧更新并把它们沿着处理管道移动。例如,数据分组或帧还可以暂时存储在缓冲器中,直到后续的处理模块中的处理操作完成,或者在另一个例子中直到期望的输入数据分组到达。第三视频缓冲器123,例如,可被认为是个“播放”缓冲器,其对抗(counter)被显示的视频图像中的抖动。这是对等待时间的有意延长,其中直到下一个分组被接收到缓冲器中分组才被播放。在其它情况下,在视频数据赶上来时,音频数据可能必须在处理管道的特定位置等待。因此,如上所述,宿处理管道中的缓冲对源和接收之间的数据链路的等待时间有所贡献。数据缓慢通过缓冲器将导致高的等待时间,这在用户看来可能是不希望的。
[0022]典型地,时间戳被应用于(在源端)每个音频和视频分组或每个视频帧。该时间戳涉及(源)“系统时间”,该“系统时间”可被用于在宿端同步视频和音频数据并可典型地包括顺序值。在一个实施例中,在源端,具有时间戳信息的编码音频和视频数据被打包、复用并作为MPEG-TS流发送使得宿装置100接收。监视器110被配置以读取在处理管道的几个位置上于宿端被接收的每个数据分组的时间戳的值。在一个实施例中,这些位置分别位于分组接收器109的输入和输出端、解复用器113的输入和输出端以及第三音频和视频缓冲器119、123的输出端。出现在第三音频和视频缓冲器119、123的输出端的数据分组与抵达分组接收器109的数据分组之间的时间戳的值的差提供了在任意给定的时间点上在包括分组接收器109、解复用器113、解码器116、120、渲染器118、122和缓冲器112、114、115、117、121、119、123的处理管道中缓冲的数据的量的指示。
[0023]监视器110被配置以监测处理管道中不同位置上的时间戳的值,并确定指示了处理管道被监测的部分所缓冲的数据的量的监测到的时间戳的值的差。监视器110还被配置以将确定的时间戳的差与一个或多个阈值相比较,并根据比较,指示第一音频和视频缓冲器114、115丢弃多媒体数据(例如,通过放弃出现在解复用器的输出端的一个或多个帧)。超过阈值的测量的时间戳差意味着比需要维持可接受的无抖动回放多的数据已经被缓冲在处理管道中,因此帧可被放弃而不会严重影响向用户回放的数据的质量。放弃帧还会降低等待时间,其可加强用户体验。
[0024]监视器110还被配置以在线路111上从用户接收输入,(以触摸屏106的方式)借此用户可规定多媒体数据的丢弃频率。监视器110被配置为以下面将参照图3所描述的方式根据用户的输入增加或减少阈值。
[0025]监视器110,在某些环境下,还将时间戳的差与两个阈值对比,如果被比较的值落在两个值之间,则监视器110指示回放管道(包括解码器116、120、渲染器118、122和第一、第二和第三缓冲器114、115、117、121、119、123)的适当部件增加扬声器104处的回放速度。特别地,音频渲染器118被指示更快地回放音频数据,从而更快地消耗缓冲在处理管道中的音频数据。
[0026]有利地,宿装置100可平衡等待时间和质量,二者都可能受到用户需求的影响。例如,用户可设置质量标准(或者多媒体丢弃频率),诸如如果需要低的等待时间则每分钟放弃帧一次或者如果需要高的质量则每小时放弃帧一次。在一个实施例中,为了避免视频马赛克,视频数据的阈值设置得比音频数据的高。
[0027]下面将参照简化的图2的流程图描述图1的宿装置100的操作方法。
[0028]在201,多媒体数据在分组接收器109处被接收,并经过流缓冲器112、解复用器113及包括解码器116、120、渲染器118、122和缓冲器114、115、117、119、121和123的回放管道。每次多媒体数据在提取操作中从解复用器113被转移至第一缓冲器114、115,缓冲在宿装置100中的多媒体数据的总量(依据时间戳的差)由监视器110计算。在一些预选时段的回放周期,比如五秒钟,缓冲的多媒体数据的最小计算值由该计算确定。在202,监视器110确定缓冲在分组接收器109中的多媒体数据的量(依据时间戳的差)。监视器110通过获得进入和离开分组接收器109的数据分组的时间戳并比较这两个值确定缓冲的多媒体数据的量。
[0029]在203监视器110还确定缓冲在解复用器113中的多媒体数据的量(依据时间戳值的差)。监视器110通过获得进入及离开解复用器113的数据分组的时间戳并比较这两个值来确定缓冲的多媒体数据的量。
[0030]在204,监视器110还确定缓冲在回放管道里的多媒体数据的量(依据时间戳的值的差)。监视器I1通过获得进入第一音频和视频缓冲器114、115以及离开并抵达扬声器104和视觉显示设备105的数据分组的时间戳并比较这两个值来确定缓冲的多媒体数据的量。
[0031]在205,监视器通过将步骤202、203和204的结果求和来确定缓冲在宿装置中的多媒体数据的总量。
[0032]在206,监视器110确定在回放周期上在之前的步骤中它已经监测到的缓冲的媒体数据的最小量(即,最小的测量到的时间戳差值)的值。
[0033]在207,监视器110将这个最小的测量到的时间戳差值与预置的第一阈值相比较。如果这个最小时间戳差值比第一阈值大,则媒体帧被从处理管道中丢弃。因此,等待时间将被降低。例如,第一音频和视频缓冲器将丢弃缓冲的帧并发送后续的缓冲帧至它们各自的解码器116、120。流程回到步骤206,在此缓冲的多媒体数据的最小量的值继续被确定并与第一阈值相比较。在一个例子中,多媒体帧被放弃直到处理管道保持刚好足够避免欠载运行的媒体数据。这个可典型地包括相当50ms的媒体数据。以这种方式放弃帧具有降低宿装置中的等待时间的效果。
[0034]如果在207发现最小时间戳差值小于第一阈值,则在208,进一步与第二阈值(比第一阈值低)相比较。如果这次比较揭示最小时间戳差值小于第二阈值,则该方法回到步骤206,在此继续确定缓冲的多媒体数据的最小量的值并与第一阈值相比较。在另一方面,如果这次比较揭示最小时间戳差值大于第二阈值,则在步骤209,增加音频回放的速度。增加音频回放的速度具有通过更快地吸收音频数据来降低等待时间的效果。
[0035]现在参照图3所示的简化的流程图来描述图1的宿装置100的进一步的操作方法。
[0036]在300,监视器110 (参见图1)将第一阈值设置为初始值。
[0037]在301,监视器110从用户接收请求的媒体丢弃频率(即,每五分钟丢弃一次)。例如,这种请求可经由视觉显示设备105的触摸屏106产生。
[0038]在302,监视器110监测媒体丢弃的频率。
[0039]在303,如果确定丢弃频率高于请求的频率(例如,每五分钟两次),则在304,监视器提高第一阈值。因而,如果用户的需求尚未被满足,就增加第一阈值的值。在这种情况下,用户需要更好的质量,并可以忍受更长的等待时间。随后,流程回到302,在此把来自用户的进一步的需求考虑进来,继续监测丢弃频率。
[0040]在另一方面,如果在303,确定丢弃频率不高于请求的频率,则在305,监视器110降低第一阈值的值。在这种情况下,用户的需求已经被满足并且因为用户可以忍受更频繁的媒体丢弃,第一阈值可被降低。流程回到302,在此把来自用户的进一步的需求考虑进来,继续监测丢弃频率。
[0041]本发明也可由在计算机系统上运行的计算机程序实现,该计算机程序至少包括代码部分,用于当在诸如计算机系统的可编程装置上运行的时候实现根据本发明的方法的步骤,或者使得可编程装置根据本发明实现设备或系统的功能。作为一个例子,可提供一种非易失性计算机可读介质,其具有存储其上的计算机可读指令,用于实现此处公开的调整宿装置中的等待时间的方法。该非易失性计算机可读介质可包括由以下构成的组中的至少之一:硬盘、CD-ROM、光存储设备、磁存储设备、只读存储器、可编程只读存储器、可擦除可编程只读存储器、EPR0M、电可擦除可编程只读存储器以及闪存。
[0042]此处讨论的连接可以是任意类型的连接,该连接适合将信号从各自的节点传送或传送至各自的节点、单元或设备,例如通过中间设备。相应地,除非另有暗示或声明,连接例如可以是直接连接或间接连接。连接可根据作为单个连接、多个连接、单向连接、或双向连接被说明或描述。但是,不同的实施例可改变连接的实现方式。例如,可使用分开的单向连接而不是双向连接,反之亦然。同样,多个连接可被串行或以时间复用方式发送多个信号的单个连接代替。同样,携带多个信号的单个连接可被分成携带这些信号的子集的各种不同的连接。因此,存在许多发送信号的选项。
[0043]本领域技术人员会看出图1中所描述的功能块之间的边界仅仅是说明性的,可选的实施例可合并功能块或电路元件,或者在各种功能块或电路元件上强加替换的分解功能。这样,可以理解此处描绘的结构仅仅是示例性的,实际上许多其它的实现相同功能的结构可被实现。为了实现相同的功能部件的任意排列是有效的“关联的”,使得期望的功能可被实现。因此,此处任意两个结合起来以实现特定功能的部件可被看作与彼此“关联”,使得期望的功能可被实现,而与结构或中间部件无关。同样,任意两个这样关联的部件也可被看作“可操作地连接”或者“可操作地耦合”至彼此以实现期望的功能。
[0044]而且,本领域技术人员会看出上面描述的操作之间的边界仅仅是说明性的。多个操作可结合为单个操作,单个操作可分成附加的操作,并且各操作可以在时间上至少部分重叠地执行。此外,可选的实施例可包括特定操作的多个例子,并且在各种其它实施例中操作的顺序可被改变。
[0045]例如,在一个实施例中,所描述的例子还可以实现为位于单个集成电路上或在同样的设备内部的电路结构。进一步,包括图1所示的宿装置的模块(除了扬声器和视觉显示)的整体功能性可在集成电路中被实现。这种集成电路可以是包含一个或多个管芯(die)的封装。可选地,该例子可被实现为分开的集成电路或以合适的方式互相连接的分离的设备。集成电路设备可包括在单个封装内的一个或多个管芯,在管芯上提供形成模块的电子部件,这些电子部件可通过诸如封装的引脚或导线以及引脚和管芯之间的键合线的合适的连接与封装外部的其它部件连接。
[0046]同样为了举例,例子或其一部分可实现为物理电路结构的软件或代码表示,或能转换为物理电路结构的逻辑表示,诸如在任何适当的类型的硬件描述语言中。而且,本发明不局限于以不可编程的硬件实现的物理设备或单元,还可以应用到能够通过依照合适的程序代码运行实现期望的设备功能的可编程设备或单元中,诸如主机、微电脑、服务器、工作站、个人电脑、笔记本、个人数字助理、电子游戏、自动或其它嵌入式系统、手机和各种其它无线设备,在此申请中一般地表示为“计算机系统”。
[0047]本发明的优选实施例的描述已经以说明和描述为目的而被展示,其并不是穷举的或将发明限制在所公开的形式中。本领域技术人员可以领会,在不背离主要的发明概念的前提下,可改变上面描述的实施例。因此,可以理解,此发明不局限于所公开的特定实施例,而是涵盖如随附的权利要求书所限定的在本发明的精神和范围内的修改。
【主权项】
1.一种调整宿装置中的等待时间的方法,其中所述宿装置从源装置接收用于在显示器上回放的媒体数据,并且包括处理管道,所述方法包括: 监测缓冲在所述处理管道的至少一部分中的媒体数据的量; 将监测到的媒体数据的量与预定的阈值相比较;以及 如果所监测到的媒体数据的量超过所述预定的阈值,则从所述处理管道放弃媒体数据,直到所监测到的量降到所述预定的阈值以下。2.根据权利要求1所述的方法,其中监测缓冲的媒体数据的量包括:比较分配给在所述处理管道的不同位置处所接收到的媒体数据的媒体数据分组的时间戳值。3.根据权利要求1所述的方法,进一步包括:测量在固定的回放时间周期内缓冲的媒体数据的量。4.根据权利要求1所述的方法,其中放弃媒体数据包括:丢弃所述媒体数据的一个或多个帧。5.根据权利要求1所述的方法,进一步包括:将所监测到的媒体数据的量与较高的阈值和较低的阈值相比较,并且如果所监测到的量具有在所述较高的和较低的阈值之间的值,则提高所接收到的媒体数据的回放速度。6.根据权利要求1所述的方法,进一步包括: 比较监测到的在回放时间周期内在所述处理管道中缓冲的媒体数据的量; 为缓冲的媒体数据的量确定最小值,该最小值比其它监测到的在所述处理管道中缓冲的媒体数据的量小; 将所确定的最小值与所述预定的阈值相比较;以及 如果所确定的最小值超过所述预定的阈值,则从所述处理管道放弃媒体数据,直到所确定的最小值降到所述预定的阈值以下。7.根据权利要求1所述的方法,进一步包括:根据用户需求变化所述预定的阈值。8.根据权利要求7所述的方法,进一步包括:当用户需求未被满足时,提高所述预定的阈值。9.根据权利要求7所述的方法,进一步包括:当用户需求被超过时,降低所述预定的阈值。10.根据权利要求1所述的方法,其中所述媒体数据包括音频数据和视频数据。11.根据权利要求10所述的方法,其中所述预定的阈值对视频数据比对音频数据高。12.—种从源装置接收媒体数据并在显示器上回放所接收到的媒体数据的宿装置,所述宿装置包括: 处理管道;以及 监视器; 其中所述监视器: 监测在所述处理管道的至少一部分中缓冲的媒体数据的量; 将监测到的媒体数据的量与预定的阈值相比较;以及 如果所监测到的媒体数据的量超过了所述预定的阈值,则从所述处理管道放弃媒体数据,直到所监测到的数据降到所述预定的阈值以下。13.根据权利要求12所述的宿装置,其中所述监视器通过比较分配给包括在所述处理管道的不同位置处所接收到的媒体数据的媒体数据分组的时间戳值,来监测缓冲的媒体数据的量。14.根据权利要求12所述的宿装置,其中所述监视器在固定的媒体回放时间周期内测量缓冲的媒体数据的量。15.根据权利要求12所述的宿装置,其中所述监视器通过丢弃媒体数据的一个或多个帧来放弃媒体数据。16.根据权利要求12所述的宿装置,其中所述监视器将所监测到的媒体数据的量与较高的阈值和较低的阈值相比较,如果所监测到的媒体数据的量具有在所述较高的和较低的阈值之间的值,则提高所接收到的媒体数据的回放速度。17.根据权利要求12所述的宿装置,其中所述监视器被配置为: 比较监测到的在回放时间周期内在所述处理管道中缓冲的媒体数据的量; 为缓冲的媒体数据的量确定最小值,所述最小值比其它监测到的在所述处理管道中缓冲的媒体数据的量小; 将所确定的最小值与所述预定的阈值相比较;以及 如果所确定的最小值超过所述预定的阈值,则从所述处理管道放弃媒体数据,直到所确定的最小值降到所述预定的阈值以下。18.根据权利要求12所述的宿装置,进一步包括:用于输入用户需求的输入装置,其中所述监视器一旦收到所述用户的请求就改变所述预定的阈值。
【文档编号】H04N21/8547GK105898541SQ201410833214
【公开日】2016年8月24日
【申请日】2014年11月12日
【发明人】宋兵, 刘小文, 王泽宁
【申请人】飞思卡尔半导体公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1