CN1893641B - 展示操作状态数据的数字媒体播放器 - Google Patents

展示操作状态数据的数字媒体播放器 Download PDF

Info

Publication number
CN1893641B
CN1893641B CN2006101007855A CN200610100785A CN1893641B CN 1893641 B CN1893641 B CN 1893641B CN 2006101007855 A CN2006101007855 A CN 2006101007855A CN 200610100785 A CN200610100785 A CN 200610100785A CN 1893641 B CN1893641 B CN 1893641B
Authority
CN
China
Prior art keywords
dms
communication
message
digital media
order
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.)
Expired - Fee Related
Application number
CN2006101007855A
Other languages
English (en)
Other versions
CN1893641A (zh
Inventor
S·曼德拉
E·考多瓦
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN1893641A publication Critical patent/CN1893641A/zh
Application granted granted Critical
Publication of CN1893641B publication Critical patent/CN1893641B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0869Validating the configuration within one network element
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • 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/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4131Peripherals receiving signals from specially adapted client devices home appliance, e.g. lighting, air conditioning system, metering devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/443OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
    • H04N21/4433Implementing client middleware, e.g. Multimedia Home Platform [MHP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Automation & Control Theory (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种基于软件的数字媒体播放器,它提供了允许对该数字媒体播放器和附连到其上的一个或多个设备之间的操作状态数据进行检查、测试和操纵的组件接口。提供对这些数据的详细分析的机会允许例如在对应的下一代数字媒体播放器硬件不存在或为测试目的难以获取时测试样机下一代设备的操作。另外,即使对应的下一代数字媒体播放器可用,也不会对如此处所讨论和描述的详细分析提供相同的机会。

Description

展示操作状态数据的数字媒体播放器
技术领域
本发明一般涉及数字家庭/办公室环境,尤其涉及提供包括数字媒体播放器的测试环境,该数字媒体播放器允许对在与软件数字媒体播放器通信的样机设备之间传递的数据进行检查、监视、操纵等。
背景技术
娱乐正在发生重大的变化-它正在走向数字化。人们现在可以在家里的全部地方、在工作时、在旅行时等接收多种形式因素(form factor)的数字娱乐。这如同无线电、电影、电视、有线电视、VHS和DVD播放器的引入一样,向内容生产者和分发者提供了大量的机会。内容生产者现在在他们能够呈现什么以及如何呈现方面有更具创造性的自由度。数字分发模型实际上在任何时刻或任何地方递送内容。短语“数字家庭”和“数字办公室”用于表示被开发成在家庭、办公室和其它场境中允许各种数字分发模型的硬件和软件环境。这些场境中的每一个都包括通过其在该环境中递送内容的网络。2003年9月12日的
Figure G2006101007855D00011
2003联网媒体产品要求(Networked Media Product Requirements)(NMPR)1.0版中描述了可用于在数字家庭、办公室和其它数字场境中递送内容的总原则和结构。2004年6月2日的数字生活网络联盟(Digital Living Network Alliance)(DLNA)家庭联网设备互操作性准则(Home Networked Device Interoperability Guidelines)1.0版在NMPR(和其它这样的环境)构件,以跨领域地开发和促进用于数字家庭、数字办公室等设备的互操作性的公共行业框架。
以下描述NMPR和DLNA的若干基本组件。NMPR和DLNA的主要焦点是允许跨内容源/主机和内容宿之间的网络的内容互操作性。关键的能力包括发现和控制网络上的内容宿,以及呈现在内容源/主机上动态地发现的内容的能力。一般而言,在NMPR中,在环境中有三种主要的高级逻辑实体,即内容源、内容主机和内容宿。注意,这些逻辑实体是对在网络上扮演某种角色的设备和/或应用程序的总括术语,且其每一个都需要一组不同的技术来实现它们。例如,内容宿可包括多个设备的聚集体,以扮演其在网络上的角色。
内容源表示环境中的数据源,诸如数字照片、记录的音乐(例如,MP3文件等)、音乐递送服务、个人视频记录、视频递送服务等。内容源包括在内容主机上操作的应用程序,它们提供内容,并可例如通过诸如通用即插即用(UPnP)的设备发现协议在网络上被发现。(请注意,此处所使用的所有标记是其各自的拥有者的属性。)这些应用程序也可提供远离(远程连接到)远程显示设备或其它内容宿的用户界面(UI),该UI允许用户看见、选择、播放内容以及与内容交互。在DLNA中,典型的UPnP内容源被称为数字媒体服务器(DMS)。
内容主机包括主存由内容源提供的内容,并提供了可将内容流传送到内容宿的主机栈的平台。主机栈也可提供远离内容宿的用户界面,以允许用户看见、选择、播放来自各种源的内容以及与该内容交互。该内容可以是本地主存在内容主机上和来自其它网络内容主机的内容的组合。用户界面也可通过呈现由内容源应用程序提供的可遥控用户界面的选择(更像TV频道)来担当导航角色。主机栈也可支持位于其它内容主机上的内容的本地回放。
内容宿包括回放或呈现通过网络从内容主机接收的内容的设备。宿也可处理通过网络从内容主机或内容源遥控的用户界面和/或为用户控制内容选择和回放的目的而提供本地用户界面。在DLNA中,典型的UPnP呈现设备或内容宿包括被称为数字媒体适配器(DMA)或数字媒体播放器(DMP)的设备。
尽管采购符合NMPR和/或DLNA格式的设备合理地确保了来自不同开发商的设备能够互操作,但是作为一个实际的问题,提供这样的互操作性并不是一件微不足道的小事。即,为数字家庭开发媒体产品通常意味着你的产品使用诸如UPnP的发现协议以及相关的数据流格式(例如,音频、视频等)与来自不同开发商的其它产品交互,以将数据从你的产品传递到另一联网产品。开发、调试和确认一个开发商的产品可能很难。例如,调试和确认基于UPnP的DMS应用程序的流传动功能,必须向DMP(内容宿)发送数据流。DMP接收由DMS应用程序供应的媒体流,对该流解码,并向输出显示设备呈现该媒体流。不幸的是,如果存在问题,则检测到差错是归因于开发商自己的产品还是归因于该产品所依赖的网络上的另一产品是极其困难的。
附图说明
通过阅读以下本发明的详细描述,可以清楚本发明的特征和优点,附图中:
图1示出了根据一个实施例的设备的系统。
图2示出了根据一个实施例的体系结构,用于在图1的数字媒体适配器软件客户机中提供调试能力。
图3示出了根据一个实施例的流程图,它利用图2的体系结构来调试、测试和/或监视与数字媒体播放器通信的设备之间的交互。
图4示出了其中可实现本发明的某些方面的合适的计算环境。
具体实施方式
如上所述,当产品依赖于不在一个人的控制之下的其它设备时,可能很难验证和确认诸如基于UPnP的媒体服务器应用程序或其它产品的产品。具体地,如果没有对数字媒体服务器(DMS)和数字媒体播放器(DMP)的基准设计,以及检查DMS和DMP之间的数据话务的某种方法,则可能很难标识一个或多个故障点。为协助这一确定,所示和要求保护的是提供了对DMS和DMP之间的数据话务的这类检查的各种实施例。
为此,图1示出了根据一个实施例的设备的系统100。所示的是数字媒体服务器102,它可以是独立设备、媒体中心个人计算机(PC)、基于软件的DMS等。注意,数字生活网络联盟(DLNA)家庭联网设备互操作性准则详细定义了DMS的角色和职责;然而,一般而言,期望DMS协助遍及诸如家庭、办公室或其它环境等联网环境来分发内容。注意,此处所讨论的原则在诸如因特网、广域网(WAN)等小规模和大规模网络上都是适用的,例如,人们可以将数字内容从其住处流传送到其当前位置,诸如其工作场所或其它位置。
还示出了数字媒体播放器(DMP)104。如同DMS 102一样,DLNA详细定义了DMP的角色和职责;然而,一般而言,期望DMP找出由DMS展示(使之可用)的内容,并允许该内容在DMS或相关联的设备上播放或呈现。例如,还示出了输出设备106,诸如可与DMP耦合并用于显示由DMS展示的视频或其它数据108的电视机。在所示的实施例中,DMP作为基于软件的基准设计产品来提供,该产品如同常规的DMP一样操作,但是该软件提供了调试信息以允许开发者调试数据流、媒体流、UPnP分组流中的差错的能力,并且还提供了诸如测量显示帧速率、记录接收到媒体帧的绝对时间、确定丢失的帧数等的性能分析。
在一个实施例中,软件DMP 104包括数字媒体适配器软件客户机(DMASC)110。一般而言,数字媒体适配器提供了内容源/主机(诸如提供例如音频数据、视频数据等的数字媒体的家庭计算机)和输出设备106(诸如立体声、电视机等)之间的数据管道或桥梁。在所示的实施例中,DMASC至少部分地基于所引用的Intel网络媒体产品要求(NMPR)2.0和数字生活网络联盟(DLNA)1.0规范。还期望在所示的实施例中,对DMASC的主机设备支持媒体数据的保护,例如,对内容保护的密码控制。在一个实施例中,DMASC提供了对UPnP音频-视频服务的内置支持和可访问控制。然而,可以理解,其它实施例可支持更少或完全不同的要求。
在所示的实施例中,数字媒体适配器软件客户机(DMASC)110包括允许开发者对基于UPnP的或其它网络环境媒体服务器102应用程序进行调试和确认的调试特征或工具。与不允许访问其内部工作(因为这可能导致篡改、操作干扰、逆向工程设计等)的常规的基于硬件的数字媒体播放器(DMP)形成对比,所示的DMASC作为一种软件实现,能够提供除诸如与设备的各种通信的状态之外的所需的任何DMP状态信息,例如由设备接收/发送的UPnP命令的历史、由设备接收/发送的网络话务和/或管理请求的历史等等。
通过提供采用软件形式的基准设计DMP,首次可能对DMP和数字媒体服务器(DMS)102之间的通信进行适当的调试。即,不仅可如常规网络“监听器”产品所提供的那样看到一般的网络话务,而且所示的实施例还提供了对协议消息的过滤和剖析,诸如允许人们查找和监视发往和发自指定应用程序和DMP的所有或例如仅某些类型的UPnP消息和流媒体消息。可以理解,可采用各种已知过滤技术中的任一种来标识感兴趣的网络话务。
此外,可以理解,DMS 102和DMP 104之间的通信可如以更人类可读形式的呈现所需地进行分析和重新包装。例如,假定DMP遵守2005年2月的
Figure G2006101007855D00041
扩展设备远程传送(Extended Device Remote Transfer)(XRT)二进制远程协议(BinaryRemoting Protocol)V2.2(一种用于向远程呈现设备/宿发送屏幕位图/快照和控制命令以及从该呈现设备/宿接收用户输入和状态信息的协议),在一个实施例中,DMASC 110可被配置成XRT协议以显示UPnP、XRT以及图形用户界面中各种呈现格式的媒体数据流,诸如大纲视图,以允许软件开发者通过例如在图形用户界面中显示的分组流上双击来深入查找感兴趣的消息细节。DMASC的工具也可被配置成以UPnP或流媒体分组的格式向开发者警告出错,并协助将数据记入日志以供进一步的分析。
图2示出了根据一个实施例的体系结构200,用于在图1的数字媒体适配器软件客户机(DMASC)110中提供调试能力。期望所示的体系结构通信上与媒体服务器控制点(MSCP)(未示出),诸如相对于数字生活网络联盟(DLNA)所定义的MSCP耦合。MSCP允许在网络上定位内容,诸如由家庭网络上的各种设备提供的数据。MSCP被设计成向UPnP媒体服务器设备询问描述由该设备提供的内容以及如何可分发该内容的元数据。
在所示的实施例中,DMASC具有向各种处理和调试支持能力提供软件可访问接口的各种组件接口202。这些接口可以在通信上彼此耦合,且可相对于由一个接口提供的能力来定义另一个接口。一个这样的组件204提供了对各种协议的解码和呈现,这些协议至少包括网络媒体产品要求(NMPR)规范2.0版和数字生活网络联盟(DLNA)1.0规范中定义的LPCM、JPEG、MPEG2和MP3媒体格式。可以理解,协议支持可根据需求而改变。在所示的实施例中,媒体呈现器230可用于呈现本地和/或联网媒体,并利用(或结合)组件204及其协议和媒体处理能力来呈现JPEG、MPEG-2、LPCM、MP3等数据。
媒体呈现器也可支持播放、停止、暂停、快进、快退操作。因此,媒体呈现器可利用支持诸如播放、停止和暂停等各种呈现控制、诸如快退和快进、跳过等特技模式的另一这样的组件206。另一这样的组件208可支持诸如控制所呈现的输出媒体的音量等各种音频操纵操作。可以理解,组件208可连同组件204、206一起被结合到媒体呈现器中。
另一这样的组件210可支持对UPnP消息和XRT 2.2命令的接收和处理。另一这样的组件212可支持对UPnP电源管理的响应。尽管DMASC不是可被定向到适当的响应电源管理状态中的常规硬件DMP,但是可以理解,DMASC可将其主机环境,例如运行其程序的机器推入适当的状态。此外,如果DMASC在虚拟机中操作,则DMASC可如同它是真实的硬件设备那样来响应,例如,虚拟机的模拟硬件可被置于适当的电源管理状态。
另一这样的组件214可支持服务监视器的设备流质量,以便于监视软件数字媒体播放器110或其主存环境104流栈的各种特性、将反馈发送到DMP 110或主机104、以及允许修改和/或增强数据传递以改进用户的体验。另一这样的组件216可支持监视和检查家庭网络上发生的所有XRT/XRT2、UPnP音视频(A/V)和媒体流分组的能力,例如与DMASC相关联的一个(或多个)关联网络接口卡可被置于混杂模式或等效模式,或可被放置使得它能够监视通过DMP的话务。可以理解,组件214、216可被集成到单个组件中。
另一这样的组件218可支持过滤由组件216监视的数据的能力,以便仅监视满足某些感兴趣准则的数据(诸如用于所选择的UPnP媒体服务器设备的数据)。在一个实施例中,监视组件218也可支持选择特定的协议分组,诸如仅UPnP命令分组、包含在流媒体分组中的元数据、UPnP和流媒体、UPnP媒体服务器设备和DMASC之间的所有网络话务等。可以理解,过滤准则可如同DMASC所存的环境那样变化多样。
另一这样的组件220可支持对UPnP命令和其它数据进行标识、组织和比较,以允许如上所述地以高级“人类可读”方式呈现它们。另一这样的组件222可支持对媒体流及其相关联的数据进行标识、组织和比较,以允许如对于组件220那样以高级方式呈现它们。另一这样的组件224可支持对通过网络发送和接收的消息的日志记录事务。对于组件218,可以理解,可应用各种过滤器来检查消息以限制(如有所需)所记入日志的数据的类型。在所示的实施例中,数据日志232可将诸如XRT、UPnP等消息的各种数据保存在诸如数据库、文本文件等的存储库中。可以理解,可使用日志记录控制来控制何时以及如何将数据记入日志,例如,在一段时间内、基于采样速率等。各种组件接口204-228可对可能会导致组件采取行动的数据将条目写入数据日志,或从日志中读取条目。
本领域的技术人员可以理解,由组件220、222、224跟踪的任何数据可在用户界面中呈现,使得可通过双击期望的项目在用户界面中显示任何命令、媒体流等的更多细节。在所示的实施例中,显示管理器234通信上耦合到媒体呈现器230和远程用户界面(RUI)客户机236,并进行访问且能够显示诸如XRT/XRT2240和UPnP242消息等联网协议话务238。在所示的实施例中,显示管理器能够显示UPnP状态机正在实现哪一UPnP步骤、显示XRT/XRT2客户机(传入)和服务器(传出)命令、显示UPnP传入和传出消息、以及显示差错和期望的数据。RUI客户机呈现通过诸如家庭网络等网络接收的用户界面,并将用户输入发回到控制设备以供处理。
此外,显示管理器可利用(或结合)另一这样的组件228,该组件提供测量例如向图1的输出设备106呈现的数据的速率等显示帧速率、记录接收到帧的绝对时间(或墙时间(wall time))、记录诸如丢失、错过、破坏等的帧数等各种帧统计量。该组件228可利用组件214的能力,并且可以理解,所有分析的流都可被记录以供稍后的分析。
在一个实施例中,显示管理器可使用(或结合)组件220、222、224,并使用RUI客户机来生成用于与关联于组件接口202的各种数据交互的用户界面。可以理解,该用于与组件204-228交互的用户界面理解UPnP环境,并因此可示出在媒体服务器102和DMP 104之间移动的分组。在所示的实施例中,也示出了差错注入器244,它可用于在UPnP状态机的任何阶段人为引入诸如UPnP消息通信差错等数据差错,以测试数字媒体服务器102(图1)或数字媒体播放器104能够处理差错情况有多好。另外,可对这些设备中的任一个在消息中引入特定的差错,以便于跟踪所检测的起源。
图3示出了根据一个实施例的流程图300,它利用图2的体系结构来调试、测试和/或监视与数字媒体播放器通信的设备之间的交互。可以理解,该流程图是在数字家庭/数字办公室中的设备,诸如图1的数字媒体服务器(DMS)102、数字媒体播放器(DMP)104、输出设备106等之间的交互的场境中执行的。本领域的技术人员也应当理解,能够对诸如DMS和DMP等不同设备之间传递的数据进行检查、修改、测试等是有价值的,因为这些设备通常是由不同的制造商提供的,且因此普通人无法在发生出错时“进入”内部设备状态以标识哪一(些)设备正在引起问题。
如图所示,第一个操作是初始化事件链(302)。该链表示需要在处理图3的流程图时执行的事件或任务,例如,执行期望的调试、测试、监视等。后一步骤是创建(或者如果提供了预先配置的起始状态,则为加载)远程用户界面(RUI)栈(304)。如本领域的技术人员可理解的,建立RUI栈对应于在例如DMS和DMP之间建立RUI链路,并允许DMP浏览由DMS提供的服务。一旦创建了RUI栈304,后一操作是将该RUI栈添加到事件链302,使得它根据该所示的实施例来处理。一旦处理事件循环(316)开始,后一操作是启动远程用户界面循环(324),这是连同主要的图3的处理循环一起操作的循环,且如本领域的技术人员所理解的,该循环用于拾取和处理事件链中的RUI事件。如相对于图2所讨论的,可使用差错注入器244来创建消息通信差错,以允许测试所调试、测试、监视等的设备的健壮性。
另一操作是将分组监听器添加到栈(310)。如上文对于图2所讨论的,人们可能希望显示UPnP消息、XRT/XRT2消息、其它网络话务等(318),并且添加监听器使得它运行在期望的网络交互上。如上所述,还可选择过滤网络话务,使得仅检查进入或离开期望设备的期望话务。除显示所选择的消息之外,可启用日志记录;如果为是(320),则将期望的消息记入日志(322),例如,记入到图2的数据日志232。
另一操作是创建控制点栈(312),并将其添加到事件链(314)。如本领域的技术人员所理解的,控制点栈对应于在DMS和DMP之间建立连接,使得DMP能够/被授权来浏览DMS的内容提供(例如,看见它所具有的可用的媒体是什么)、选择可用媒体、并选择用适当的呈现设备来呈现该媒体。如同创建RUI栈一样,一旦创建了控制点栈并处理了事件链(316),就可启动媒体服务器控制点(MSCP)循环(326)以从事件链中拾取并处理MSCP相关事件。如上所述,可使用图2的差错注入器244来创建消息通信差错,以允许对所调试、测试、监视等的设备的健壮性进行测试。一旦处理了事件链,如果DMP选择了呈现,则可启动适当的媒体播放器(328)以呈现所选择的媒体,并且如上所述,可捕捉流并显示该流的各种特性(330),诸如每秒显示的帧数、丢失的帧等。
在用各种感兴趣的事件初始化事件链之后,例如确立要监视、测试什么等,处理该事件链(316)。执行对应于添加到事件链的栈的各种测试334-338,以确定需要什么来处理该事件链中的当前事件。同样示出的还有一般事件测试,以指示也可处理未示出的其它栈(316)。
本领域的技术人员可以理解,通过如上文相对于图1-3所讨论地实现基于软件的数字媒体播放器,人们能够从不同制造商获取设备,同时仍能够获取这些设备的低级内部状态信息,以便于对预期结合DMP一起操作的数字媒体服务器(DMS)或其它设备进行调试和确认。当前为DMS编写代码的独立软件厂商(ISV)在试图确认其媒体服务器应用程序时被迫依赖于基于硬件的DMP的可用性来执行数据检查、测试、调试等任务。不幸的是,通常人们正在为下一代产品编写代码,并且因此可用性对于对其测试代码的下一代硬件产品是有限或不存在的。所示和描述的实施例通过提供对其进行测试的软件平台来克服这一缺点。
图4和以下讨论旨在提供对其中可实现本发明的某些方面的合适的环境的简要概括描述。如下文所使用的,术语“机器”旨在宽泛地包含单个机器,或一起操作的通信上耦合的机器或设备的系统。示例性机器包括诸如个人计算机、工作站、服务器、便携式计算机、手持式设备(例如,个人数字助理(PDA)、电话、图形输入板等)以及运输设备(诸如私人或公共的交通工具,例如汽车、火车、出租车等)等计算设备。
通常,环境包括机器400,机器400包括系统总线402,对系统总线402附连了处理器404、存储器406(例如,随机存取存储器(RAM)、只读存储器(ROM)或其它状态保存介质)、存储设备408、视频接口410、以及输入/输出接口端口412。机器可至少部分地由来自传统输入设备(诸如键盘、鼠标等)以及从另一机器接收的指示、与虚拟现实(VR)环境的交互、生物测定反馈或其它输入源或信号来控制。
机器可包括嵌入式控制器,诸如可编程或不可编程逻辑器件或阵列、专用集成电路、嵌入式计算机、智能卡等。机器可利用诸如通过网络接口418、调制解调器420或其它通信耦合到一个或多个远程机器414、416的一个或多个连接。机器可通过物理和/或逻辑网络422、内联网、因特网、局域网和广域网来互连。本领域的技术人员可以理解,与网络422的通信可利用各种有线和/或无线短程或长程载波和协议,包括射频(RF)、卫星、微波、电气和电子工程师协会(IEEE)802.11、蓝牙、光学、红外、电缆、激光等。
所公开的主题的各种实施例可用硬件、固件、软件或其组合来实现,并且可参考或结合诸如指令、函数、过程、数据结构、逻辑、应用程序、用于模拟、仿真和制造设计的设计表示或格式等程序代码来描述,当由机器访问该程序代码时,使得机器执行任务、定义抽象数据类型或低级硬件上下文、或产生结果。
对于模拟,程序代码可使用硬件描述语言或另一功能性描述语言来表示硬件,该语言本质上提供了期望所设计的硬件如何执行的模型。程序代码可以是汇编语言或机器语言,或者可被编译和/或解释的数据。此外,本领域中常见的是,以采取动作或导致结果的一种或另一种形式来论及软件。这一表达仅是陈述处理系统对程序代码的执行的一种速记方式,该执行使得处理器执行动作或产生结果。
程序代码可被储存在例如易失性和/或非易失性存储器中,诸如存储设备和/或相关联的机器可读或机器可访问介质,包括存储器406、固态存储器、硬盘驱动器、软盘、光学存储、磁带、闪存、记忆棒、数字视频盘、数字多功能盘(DVD)等,以及诸如机器可访问生物状态保存存储等更异乎寻常的介质。机器可读介质可包括用于储存、发送或接收机器可读形式的信息的任何机制,并且介质可包括可通过其传递编码程序代码的电、光、声学或其它形式的传播信号或载波的有形介质,诸如天线、光纤、通信接口等。程序代码可用分组、串行数据、并行数据、传播信号等的形式来发送,并且可按压缩或加密的格式来使用。
程序代码可在诸如移动或静止计算机、个人数字助理、机顶盒、蜂窝电话和寻呼机以及其它电子设备等可编程机器上执行的程序中实现,这些设备均包括诸如处理器404等处理器、处理器可读的易失性和/或非易失性存储器、至少一个输入设备和/或一个或多个输出设备。程序代码可被应用于使用输入设备输入的数据,以执行所描述的实施例并生成输出信息。输出信息可被应用于一个或多个输出设备。本领域的普通技术人员可以理解,所公开的主题的实施例可用各种计算机系统配置来实现,包括多处理器或多核处理器系统、小型机、大型计算机、以及实际上可被嵌入到任何设备中的渗透型或小型计算机或处理器。所公开的主题的实施例也可在分布式计算环境中实践,其中任务可由通过通信网络连接的远程处理设备来执行。并且,尽管操作可被描述为顺序的过程,但是某些操作实际上可并行、并发和/或在分布式环境中执行,并且程序代码本地和/或远程储存,以供单或多处理器机器访问。另外,在某些实施例中,操作的顺序可被重新排列,而不会脱离所公开的主题的精神。程序代码可由嵌入式控制器使用或结合其一起使用。
由此,例如,对于所示的实施例,假定机器400嵌入图1的基于软件的数字媒体播放器104,然后远程机器414、416可分别为多个数字媒体服务器102。可以理解,远程机器414、416可与机器400一样配置,并且因此包括许多或所有对机器所讨论的元件。
参考所示的实施例描述并示出了本发明的原理之后,可以认识到,所述的实施例可在排列和细节上进行修改而不脱离这些原理。并且,尽管前述讨论集中在特定的实施例中,但是可构想其它配置。具体地,即使此处使用了诸如“在一个实施例中”、“在另一实施例中”等表达方式,但是这些短语意在一般引用实施例可能性,且不旨在将本发明限于特定的实施例配置。如此处所使用的,这些术语可引用可被组合到其它实施例中的相同或不同的实施例。因此,鉴于对此处所描述的实施例的各种各样的改变,该详细描述旨在仅是说明性的,且不应当被认为是限制本发明的范围。因此,作为本发明来要求保护的是落入所附权利要求书及其等效技术方案的范围和精神内的所有这些修改。

Claims (20)

1.一种用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的装置,所述装置包括:
基于软件的数字媒体播放器DMP,适于表现媒体,其中所述基于软件的DMP进一步适于模拟基于硬件的DMP;
通信接口,适于发送和从数字媒体服务器DMS接收通信,该通信包括流媒体分组以及联网协议消息和命令;
检查器,用于至少检查和监视联网协议消息和命令;
过滤器,用于根据选定的标准至少过滤联网协议消息和命令,其中该过滤器适于标识特定消息或命令类型;
差错注入器,适于通过所述通信接口将差错引入所述通信;
第一分析器,适于响应于所注入的差错分析接收到的通信,该通信包括由所述过滤器选择的消息和命令以及由所述通信接口接收的消息;以及
呈现器,用于至少标识和组织所选择的联网协议消息和命令,以使能人类可读格式的与所述消息和命令相关联的数据的呈现。
2.如权利要求1所述的装置,其特征在于,所述基于软件的DMP与联网媒体产品要求和数字生活网络联盟家庭联网设备互操作性准则都兼容。
3.如权利要求1所述的装置,其特征在于,其中,
所述通信和差错至少包括从所述DMS接收的通用即插即用UPnP消息。
4.如权利要求3所述的装置,其特征在于,还包括:
数据日志,被配置成将从所述DMS接收到的通信记入日志。
5.如权利要求1所述的装置,其特征在于,还包括:
第二分析器,通信上与所述通信接口耦合、并被配置成分析所述与DMS的通信以测量从所述DMS接收到的媒体的显示帧速率。
6.如权利要求1所述的装置,其特征在于,还包括:
第二分析器,通信上与所述通信接口耦合、并被配置成分析所述与DMS的通信以测量从所述DMS接收媒体帧的绝对时间。
7.如权利要求1所述的装置,其特征在于,还包括:
第二分析器,通信上与所述通信接口耦合、并被配置成分析所述与DMS的通信以测量从所述DMS接收的媒体的丢失帧数。
8.如权利要求1所述的装置,其特征在于,还包括:
被配置成基于所述与DMS的通信来执行对按数字生活网络联盟定义的媒体格式进行解码的解码器,所述媒体格式至少包括有损数字图像编码、有损数字视频编码和数字音频编码。
9.如权利要求8所述的装置,其特征在于,所述解码器还被配置成提供:
呈现控制,包括至少用于播放、停止、暂停、快退和快进的控制;以及
音量控制,用于为所呈现的媒体设置音量。
10.如权利要求1所述的装置,其特征在于,还包括:
电源管理装置,用于监视所述与DMS的通信,并至少部分地基于所述分析设置所述装置的电源状态。
11.一种用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的方法,包括:
从一数字媒体服务器DMS接收通信,
其中所述通信包括流媒体以及联网协议消息和命令;
检查和监视选定的联网协议消息和命令中的一些;
根据选定的标准,过滤选定的联网协议消息和命令中的一些;
将差错注入接收到的通信;
响应于所注入的差错消息分析接收到的通信,所述通信包括经过滤的消息和命令以及接收到的消息;以及
至少标识和组织所选定的联网协议消息和命令,以使能人类可读格式的与所述消息和命令相关联的数据的呈现。
12.如权利要求11所述的方法,其特征在于,其中所述通信和差错至少包括从所述DMS接收的通用即插即用UPnP消息。
13.如权利要求12所述的方法,其特征在于,还包括将从所述DMS接收到的所述UPnP消息记入日志。
14.如权利要求11所述的方法,其特征在于,还包括分析所述与DMS的通信,以测量从所述DMS接收的媒体的显示帧速率。
15.如权利要求11所述的方法,其特征在于,还包括分析所述与DMS的通信,以测量从所述DMS接收媒体帧的绝对时间。
16.如权利要求11所述的方法,其特征在于,还包括分析所述与DMS的通信,以测量从所述DMS接收的媒体的丢失帧数。
17.如权利要求11所述的方法,其特征在于,还包括基于所述与DMS的通信,设置执行所述方法的机器的电源状态。
18.一种用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的装置,包括:
用于从数字媒体服务器DMS接收通信的装置,其中所述通信包括流媒体以及联网协议消息和命令;
用于检查和监视选定的联网协议消息和命令中的一些的装置;
用于根据选定的标准过滤选定的联网协议消息和命令中的一些的装置;
用于将差错注入接收到的通信的装置;
用于响应于所注入的差错消息分析接收到的通信的装置,所述通信包括经过滤的消息和命令以及接收到的消息;以及
用于至少标识和组织所选定的联网协议消息和命令以使能人类可读格式的与所述消息和命令相关联的数据的呈现的装置。
19.如权利要求18所述的用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的装置,其特征在于,所述通信和差错至少包括从所述DMS接收的通用即插即用UPnP消息。
20.如权利要求18所述的用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的装置,其特征在于,还包括:
用于将从所述DMS接收的所述UPnP消息记入日志的装置;
用于分析所述与DMS的通信以测量从所述DMS接收的媒体的显示帧速率的装置;
用于分析所述与DMS的通信以测量从所述DMS接收媒体帧的绝对时间的装置;以及
用于分析所述与DMS的通信以测量从所述DMS接收的媒体的速率的装置;以及
用于基于所述与DMS的通信设置执行所述用于向数字媒体播放器中的通信提供测试环境和数字媒体服务器网络环境的装置的电源状态的装置。
CN2006101007855A 2005-06-30 2006-06-30 展示操作状态数据的数字媒体播放器 Expired - Fee Related CN1893641B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/174,430 2005-06-30
US11/174,430 US7904580B2 (en) 2005-06-30 2005-06-30 Digital media player exposing operational state data

Publications (2)

Publication Number Publication Date
CN1893641A CN1893641A (zh) 2007-01-10
CN1893641B true CN1893641B (zh) 2010-06-02

Family

ID=36999998

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006101007855A Expired - Fee Related CN1893641B (zh) 2005-06-30 2006-06-30 展示操作状态数据的数字媒体播放器

Country Status (4)

Country Link
US (1) US7904580B2 (zh)
EP (1) EP1739924A1 (zh)
CN (1) CN1893641B (zh)
WO (1) WO2007005705A1 (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10862994B1 (en) 2006-11-15 2020-12-08 Conviva Inc. Facilitating client decisions
US9549043B1 (en) 2004-07-20 2017-01-17 Conviva Inc. Allocating resources in a content delivery environment
US7519681B2 (en) * 2005-06-30 2009-04-14 Intel Corporation Systems, methods, and media for discovering remote user interface applications over a network
US20070002860A1 (en) * 2005-06-30 2007-01-04 Cooper Frederick J Method and system for a digital home network trace and debug tool
US7624417B2 (en) 2006-01-27 2009-11-24 Robin Dua Method and system for accessing media content via the internet
US9264780B1 (en) 2006-11-15 2016-02-16 Conviva Inc. Managing synchronized data requests in a content delivery network
US8751605B1 (en) 2006-11-15 2014-06-10 Conviva Inc. Accounting for network traffic
US8874725B1 (en) 2006-11-15 2014-10-28 Conviva Inc. Monitoring the performance of a content player
US9124601B2 (en) 2006-11-15 2015-09-01 Conviva Inc. Data client
US8631137B2 (en) * 2008-06-27 2014-01-14 Sony Corporation Bridge between digital living network alliance (DLNA) protocol and web protocol
US8451907B2 (en) 2008-09-02 2013-05-28 At&T Intellectual Property I, L.P. Methods and apparatus to detect transport faults in media presentation systems
US8402494B1 (en) 2009-03-23 2013-03-19 Conviva Inc. Switching content
US9203913B1 (en) 2009-07-20 2015-12-01 Conviva Inc. Monitoring the performance of a content player
KR101612845B1 (ko) * 2009-11-12 2016-04-15 삼성전자주식회사 리모트 ui 서비스 제공 방법 및 장치
US20130060840A1 (en) * 2011-02-22 2013-03-07 Savtira Corporation, Inc. System and method for optimizing the delivery of a streamed application
US9613042B1 (en) 2012-04-09 2017-04-04 Conviva Inc. Dynamic generation of video manifest files
US9386392B2 (en) 2012-06-21 2016-07-05 Cue, Inc. Media content control module and presentation device
US10182096B1 (en) 2012-09-05 2019-01-15 Conviva Inc. Virtual resource locator
US9246965B1 (en) 2012-09-05 2016-01-26 Conviva Inc. Source assignment based on network partitioning
CN103108238A (zh) * 2012-12-31 2013-05-15 乐视网信息技术(北京)股份有限公司 一种播放器处理数据的方法
US9137091B2 (en) * 2013-02-20 2015-09-15 Novatel Wireless, Inc. Dynamic quality of service for control of media streams using feedback from the local environment
US10178043B1 (en) 2014-12-08 2019-01-08 Conviva Inc. Dynamic bitrate range selection in the cloud for optimized video streaming
US10305955B1 (en) 2014-12-08 2019-05-28 Conviva Inc. Streaming decision in the cloud
US10102356B1 (en) * 2016-03-09 2018-10-16 EMC IP Holding Company LLC Securing storage control path against unauthorized access
CN108616710A (zh) * 2016-12-09 2018-10-02 北京视联动力国际信息技术有限公司 一种高清画面的生成方法及装置
CN110489333B (zh) * 2019-07-22 2023-06-13 北京字节跳动网络技术有限公司 一种基于检查器调试数据的方法、装置、介质和电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671352A (en) * 1995-07-07 1997-09-23 Sun Microsystems, Inc. Error injection to a behavioral model
US20040136327A1 (en) * 2002-02-11 2004-07-15 Sitaraman Ramesh K. Method and apparatus for measuring stream availability, quality and performance
WO2005027412A1 (en) * 2003-09-15 2005-03-24 Lg Electronics Inc. Method for setting media streaming parameter of upnp-based network

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779097B2 (en) * 2000-09-07 2010-08-17 Sonic Solutions Methods and systems for use in network management of content
AU2002225627A1 (en) 2000-11-20 2002-06-03 Aperserv Technologies, Inc. Service monitoring system
US7683903B2 (en) * 2001-12-11 2010-03-23 Enounce, Inc. Management of presentation time in a digital media presentation system with variable rate presentation capability
US20050281470A1 (en) * 2001-12-26 2005-12-22 Adams Michael A System and method for streaming media
US7155639B2 (en) 2002-08-22 2006-12-26 Sun Microsystems, Inc. Compliance testing communication protocols implemented on resource-constrained computing devices
NO318887B1 (no) * 2003-09-05 2005-05-18 Paradial As Sanntidsproxyer
US20060188096A1 (en) * 2004-02-27 2006-08-24 Aguilar Joseph G Systems and methods for remotely controlling computer applications
US7613893B2 (en) * 2004-06-22 2009-11-03 Intel Corporation Remote audio
US20070192818A1 (en) * 2004-10-12 2007-08-16 Mikael Bourges-Sevenier System and method for creating, distributing, and executing rich multimedia applications
US20060171453A1 (en) * 2005-01-04 2006-08-03 Rohlfing Thomas R Video surveillance system
US20060255931A1 (en) * 2005-05-12 2006-11-16 Hartsfield Andrew J Modular design for a security system
US8244179B2 (en) * 2005-05-12 2012-08-14 Robin Dua Wireless inter-device data processing configured through inter-device transmitted data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5671352A (en) * 1995-07-07 1997-09-23 Sun Microsystems, Inc. Error injection to a behavioral model
US20040136327A1 (en) * 2002-02-11 2004-07-15 Sitaraman Ramesh K. Method and apparatus for measuring stream availability, quality and performance
WO2005027412A1 (en) * 2003-09-15 2005-03-24 Lg Electronics Inc. Method for setting media streaming parameter of upnp-based network

Also Published As

Publication number Publication date
WO2007005705A1 (en) 2007-01-11
EP1739924A1 (en) 2007-01-03
US20070006268A1 (en) 2007-01-04
US7904580B2 (en) 2011-03-08
CN1893641A (zh) 2007-01-10

Similar Documents

Publication Publication Date Title
CN1893641B (zh) 展示操作状态数据的数字媒体播放器
Xu et al. Scalable cloud–sensor architecture for the Internet of Things
CN102402481B (zh) 异步程序代码的模糊测试
CN103793323B (zh) 嵌入式软件的自动测试装置及其自动测试方法
Patti et al. IoT platform for Smart Cities: Requirements and implementation case studies
CN104765678A (zh) 对移动终端设备上的应用进行测试的方法及装置
CN103501308A (zh) 分布式云应用部署系统和/或相关的方法
CN105512044B (zh) 用于关键字驱动测试的对象库的更新方法及系统
CN108415820A (zh) 应用安装包的测试方法和装置
CN108512814A (zh) 媒体数据处理方法、装置和系统
CN108139961A (zh) 遥测定义系统
CN110515821A (zh) 基于埋点的事件处理方法、电子设备及计算机存储介质
CN107741902A (zh) 程序应用检测方法及程序应用检测装置
CN109739704A (zh) 一种接口测试方法、服务端及计算机可读存储介质
Beilharz et al. Continuously testing distributed iot systems: An overview of the state of the art
US10360089B2 (en) System for monitoring a plurality of distributed devices
Fu et al. A configurable context-aware simulator for smart home systems
CN117241276B (zh) 一种面向移动应用的检测工具及检测方法、系统及设备
CN104836831B (zh) 一种用于物联网的物体服务方法
CN109634838A (zh) 定位应用程序故障的方法、装置、存储介质和电子设备
CN107113202A (zh) 监视并报告从源位置到目的地位置的数据上传的传输及完整性
US9614891B1 (en) Assembling communications based on captured packets
CN116431443A (zh) 日志记录方法、装置、计算机设备及计算机可读存储介质
CN110232026A (zh) AssetBundle资源检测方法及系统
CN108153677A (zh) 智能终端的测试方法及智能终端

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100602

Termination date: 20130630